Type to search.

Deploy the operator

ECK

Elastic Cloud on Kubernetes extends Kubernetes orchestration capabilities to allow you to deploy and manage components of the Elastic Stack.

Availability

  • Generally available

    This functionality is generally available and ready for production usage.

This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.

Note

These instructions do not apply if the operator is installed from the OpenShift software catalog or when using Operator Lifecycle Manager (OLM). However, creating resources outside of the installation namespace, as mentioned in step 3, is always advised.

This page shows the installation steps to deploy ECK in Openshift:

  1. Apply the manifests the same way as described in Install ECK using the YAML manifests document:

    Shell
    oc create -f https://download.elastic.co/downloads/eck/3.5.0/crds.yaml
    oc apply -f https://download.elastic.co/downloads/eck/3.5.0/operator.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:

    Shell
    oc adm pod-network make-projects-global elastic-system
    
  3. Create a namespace to hold the Elastic resources (Elasticsearch, Kibana, APM Server, Beats, Elastic Agent, Elastic Maps Server, Logstash, AutoOps Agent Policy and Package Registry):

    Note

    A namespace other than the default namespaces (default, kube-*, openshift-*, etc) is required such that default Security Context Constraint (SCC) permissions are applied automatically. Elastic resources will not work properly in any of the default namespaces.

    Shell
    oc new-project elastic
    
    1. creates the elastic project
  4. [Optional] Allow another user or a group of users to manage the Elastic resources:

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

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