Deploy the operator

edit
  1. Apply the all-in-one template, as described in the quickstart.

    oc apply -f https://download.elastic.co/downloads/eck/1.1.2/all-in-one.yaml
  2. [Optional] If the Software Defined Network is configured with the ovs-multitenant plug-in, you must allow the elastic-system namespace to access other Pods and Services in the cluster:

    oc adm pod-network make-projects-global elastic-system
  3. Create a namespace to hold the Elastic resources (Elasticsearch, Kibana):

    oc new-project elastic # creates the elastic project

    By default the operator watches and creates resources in the default namespace. You need to patch the operator to manage resources in another namespace.

    kubectl patch statefulset/elastic-operator \
      -n elastic-system \
      --type='json' \
      --patch '[{"op":"add","path":"/spec/template/spec/containers/0/env/-","value": {"name": "NAMESPACE", "value": "elastic"}}]'

    Replace elastic in the examples above with the name of the namespace in which you want to deploy your resources.

  4. [Optional] Allow another user or a group of users to manage the Elastic resources:

    oc adm policy add-role-to-user elastic-operator developer -n elastic

    In the example above the user developer is allowed to manage Elastic resources in the namespace elastic.