Elasticsearch parameters

By default, IBM Business Automation Insights embeds an Elasticsearch and Kibana installation, but you can choose to configure your own external installation.

Note:
  • Configuration parameters for ICP4ACluster custom resources start with the spec.bai_configuration. prefix. For example:
    spec:
    ...
      bai_configuration:
        ibm-dba-ek:
          imagePullPolicy: myValue
           ...
  • Hybrid configurations, where either of the Elasticsearch or Kibana installation is external, are not supported.
  •  New in 20.0.2  For Business Automation Insights parameters that inherit their default value from shared parameters, the values that are passed in the bai_configuration section of the custom resource take precedence over the values passed in the shared_configuration section.

Embedded Elasticsearch

 New in 18.0.2  The embedded version of Elasticsearch and Kibana is the default configuration option.

The following tables list the ibm_dba_ek parameters that you set for the client node, master node, and data node.
General
Table 1. Embedded Elasticsearch - General parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
ibm_dba_ek.elasticsearch.install Whether to install the embedded version Elasticsearch and Kibana.
  • Set this parameter to true in the custom resource if you want Elasticsearch to be automatically deployed and configured for you.
  • Set it to false if you want Business Automation Insights to use your own Elasticsearch installation. In this case, specify the URL and credentials to your Elasticsearch client.
  •  For 20.0.1  false
  •  New in 20.0.2  true
Yes No
ibm_dba_ek.imagePullPolicy

The pull policy for Docker images. For more information, see the Updating Images section of the Kubernetes documentation.

IfNotPresent Yes Yes
ibm-dba-ek.elasticsearch.image.repository The name of the Docker image for Elasticsearch.
  •  For 20.0.1  bai-elasticsearch
  •  New in 20.0.2  Inherits the default value of the bai_configuration.imageCredentials.registry parameter if this parameter is present in the custom resource. If it is not present, the elasticsearch.image.repository parameter inherits the base registry from the shared_configuration.sc_image_repository parameter.
Yes Irrelevant
ibm-dba-ek.elasticsearch.image.tag The tag of the Docker image
  •  For 20.0.1  20.0.1
  •  New in 20.0.2  Inherits the default value of the shared_configuration.sc_image_tag parameter.
Yes No
ibm-dba-ek.elasticsearch.init.image.repository The name of the Docker image for Elasticsearch and Kibana initialization containers.
  •  For 20.0.1  bai-init
  •  New in 20.0.2  Inherits the default value of the bai_configuration.imageCredentials.registry parameter if this parameter is present in the custom resource. If it is not present, the elasticsearch.init.image.repository parameter inherits the base registry from the shared_configuration.sc_image_repository parameter.
Yes No
ibm-dba-ek.elasticsearch.init.image.tag The tag of the Docker image
  •  For 20.0.1  20.0.1
  •  New in 20.0.2  Inherits the default value of the shared_configuration.sc_image_tag parameter.
Yes No
ibm-dba-ek.elasticsearch.probeInitialDelay The value of the initialDelaySeconds property of liveness and readiness probes of Elasticsearch containers (in seconds). 90 No Yes
 New in 19.0.1  Security
For more information, see Configuring Elasticsearch and Kibana security through Open Distro.
Table 2. Embedded Elasticsearch - Security parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
security.initOpenDistroConfig A Boolean value to state whether to create the security configuration job. true Yes No
security.openDistroConfigSecret The name of a secret that is already deployed to Kubernetes and contains the configuration files for the Open Distro for Elasticsearch security plugin. All keys from this secret are copied as files to the plugins/opendistro_security/securityconfig directory. Set this parameter only if the security.initOpenDistroConfig parameter is set to true. None Yes Yes
 New in 19.0.2  ibm-dba-ek.ekSecret The name of a secret that is already deployed to Kubernetes and contains the following keys:
  • elasticsearch-username: the username used by Kibana pods to authenticate against Elasticsearch
  • elasticsearch-password: the password used by Kibana pods to authenticate against Elasticsearch
When the ekSecret parameter is defined, it overrides the kibana.username and kibana.password values.

For information on custom secrets, see Configuring custom secrets.

None Yes Yes
ibm-dba-ek.security.backoffLimit The number of retries before the Open Distro security job is considered failed.
  •  For 20.0.1  and  For 20.0.2  3
  •  New in 20.0.3  10
Yes Yes
Client node
Table 3. Embedded Elasticsearch - Client node parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
ibm-dba-ek.elasticsearch.client.replicas The number of pods in the client cluster. 1

 New in 20.0.3  2 if you are using the enterprise custom resource from https://github.com/icp4a/cert-kubernetes/tree/20.0.3

Yes Yes
ibm-dba-ek.elasticsearch.client.heapSize The heap size allocated to the Elasticsearch client 1024 No Yes
ibm-dba-ek.elasticsearch.client.resources.limits.memory The maximum memory, including JVM heap size and file system cache, to allocate to each Elasticsearch client pod. 2 Gibibytes (Gi) No Yes
ibm-dba-ek.elasticsearch.client.resources.limits.cpu The maximum amount of CPU to allocate to each Elasticsearch client pod. 1000 M No Yes
ibm-dba-ek.elasticsearch.client.resources.requests.memory The minimum memory, including JVM heap size and file system cache, to start Elasticsearch client pod. 500 Mi No Yes
ibm-dba-ek.elasticsearch.client.resources.requests.cpu The minimum amount of CPU required to start an Elasticsearch client pod. 100 m No Yes
ibm-dba-ek.elasticsearch.client.serviceType How to publish the client service. Valid values:  New in 18.0.2 : NodePort, ClusterIP Default value:  New in 18.0.2 : NodePort Yes Yes
ibm-dba-ek.elasticsearch.client.externalPort The port to which the Elasticsearch client will be exposed externally. You set this parameter only if the serviceType property is set to NodePort. None No Yes
ibm-dba-ek.elasticsearch.client.antiAffinity Whether Kubernetes may (soft) or must not (hard) deploy client pods onto the same node. Valid values: soft and hard. Soft No Yes
Master node
Table 4. Embedded Elasticsearch - Master node parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
ibm-dba-ek.elasticsearch.master.replicas The number of pods in the master cluster 1

 New in 20.0.3  3 if you are using the enterprise custom resource from https://github.com/icp4a/cert-kubernetes/tree/20.0.3

Yes Yes
ibm-dba-ek.elasticsearch.master.heapSize The maximum memory to allocate to each Elasticsearch master pod 1024 No Yes
ibm-dba-ek.elasticsearch.master.resources.limits.memory The maximum memory, including JVM heap and file system cache, to allocate to each Elasticsearch master pod 2 Gibibytes (Gi) No Yes
ibm-dba-ek.elasticsearch.master.resources.limits.cpu The maximum amount of CPU to allocate to each Elasticsearch master pod 1000 m No Yes
ibm-dba-ek.elasticsearch.master.resources.requests.memory The minimum memory required, including JVM heap and file system cache, to start an Elasticsearch master pod 500 Mi No Yes
ibm-dba-ek.elasticsearch.master.resources.requests.cpu The minimum amount of CPU required to start an Elasticsearch master pod 100 m No Yes
ibm-dba-ek.elasticsearch.master.antiAffinity Whether Kubernetes may (soft) or must not (hard) deploy master pods onto the same node. Valid values: soft and hard. soft No Yes
Data node
Table 5. Embedded Elasticsearch - Data node parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
ibm-dba-ek.elasticsearch.data.replicas The number of pods in the data cluster. 1

 New in 20.0.3  2 if you are using the enterprise custom resource from https://github.com/icp4a/cert-kubernetes/tree/20.0.3

Yes Yes
ibm-dba-ek.elasticsearch.data.heapSize The maximum memory to allocate to each Elasticsearch data pod. 1024 No Yes
ibm-dba-ek.elasticsearch.data.resources.limits.memory The maximum memory, including JVM heap and file system cache, to allocate to each Elasticsearch data pod 2 Gibibytes (Gi) No Yes
ibm-dba-ek.elasticsearch.data.resources.limits.cpu The maximum amount of CPU to allocate to each Elasticsearch data pod 1000 m No Yes
ibm-dba-ek.elasticsearch.data.resources.requests.memory The minimum memory required, including JVM heap and file system cache, to start an Elasticsearch data pod 500 Mi No Yes
ibm-dba-ek.elasticsearch.data.resources.requests.cpu The minimum amount of CPU required to start an Elasticsearch data pod 100 m No Yes
ibm-dba-ek.elasticsearch.data.antiAffinity Whether Kubernetes may (soft) or must not (hard) deploy master pods onto the same node. Valid values: soft and hard. hard No Yes
Data storage
Table 6. Embedded Elasticsearch - Data storage parameters
Parameter Description Default value Initial configuration Postinstallation configuration update
ibm-dba-ek.elasticsearch.data.storage.persistent The true value stores Elasticsearch data to persistent volumes. Set it to false for non-production or test-only environments.

 For 20.0.1  false

 New in 20.0.2  true

Yes No
ibm-dba-ek.elasticsearch.data.storage.useDynamicProvisioning
  •  For 20.0.1  Set this parameter to true to enable Elasticsearch data persistent storage.
  •  New in 20.0.2  Set this parameter to false to disable Elasticsearch data persistent storage.

 For 20.0.1  false

 New in 20.0.2  true

No No
ibm-dba-ek.elasticsearch.data.storage.size The minimum size of the persistent volume that is required for each data and master pods 10 Gibibytes (Gi) Yes No
ibm-dba-ek.elasticsearch.data.storage.storageClass
  •  For 20.0.1  The name of the Elasticsearch class for data storage. For more information, see the Persistent Volumes page of the Kubernetes documentation.
  •  New in 20.0.2  inherits by default the value of the shared_configuration.sc_dynamic_storage_classname parameter.
" " Yes No
ibm-dba-ek.elasticsearch.data.snapshotStorage.enabled The true value enables the creation of snapshots of Elasticsearch data. Set it to false for non-production or test-only environments.
  •  For 20.0.1 true
  •  New in 20.0.2 false
Yes No
ibm-dba-ek.elasticsearch.data.snapshotStorage.useDynamicProvisioning Set this parameter to true to use GlusterFS or other dynamic storage provider. false No Yes
ibm-dba-ek.elasticsearch.data.snapshotStorage.size The minimum size of the persistent volume to store snapshots of Elasticsearch data. 30 Gibibytes (Gi) Yes No
ibm-dba-ek.elasticsearch.data.snapshotStorage.storageClassName The name of the Elasticsearch class for the storage of data snapshots. For more information, see the Persistent Volumes page of the Kubernetes documentation. " " Yes No
ibm-dba-ek.elasticsearch.data.snapshotStorage.existingClaimName By default, a new persistent volume claim is created. Specify an existing claim here if one is available. None Yes Yes

External Elasticsearch

You provide values for the following ibm_dba_ek parameters only if you choose to work with an external installation of Elasticsearch and Kibana.
Note: The version value is now automatically retrieved by a direct query to the Elasticsearch REST API. The Elasticsearch and Kibana version numbers must match.
Table 7. External Elasticsearch parameters
Parameter Description Default value Initial configuration Update
elasticsearch.install Whether to install the embedded version Elasticsearch and Kibana.
  • Set this parameter to true in the custom resource if you want Elasticsearch to be automatically deployed and configured for you.
  • Set it to false if you want Business Automation Insights to use your own Elasticsearch installation. In this case, specify the URL and credentials to your Elasticsearch client.
  •  For 20.0.1  false
  •  New in 20.0.2  true
Yes No
elasticsearch.url The URL to Elasticsearch. None Yes Yes
 New in 20.0.3  elasticsearch.externalKibanaUrl The URL of your own Kibana installation. None Yes Yes
elasticsearch.username The username to log in to Elasticsearch. None Yes Yes
elasticsearch.password The password to log in to Elasticsearch. None Yes Yes
elasticsearch.serverCertificate The Elasticsearch server base64-encoded certificate used for SSL communications. None Yes Yes

Setup job

Table 8. Setup job parameters
Parameter Description Default value Initial configuration Update
setup.image.repository The name of the Docker image for administration services.
  •  For 20.0.1  bai-setup
  •  New in 20.0.2 
    • Inherits by default the value of the bai_configuration.imageCredentials.registry parameter if this parameter is present in the custom resource.
    • Otherwise, the setup.image.repository parameter inherits the value of the base registry from the shared_configuration.sc_image_repository parameter.
Yes No
setup.image.tag The tag of the Docker image.
  •  For 20.0.1  20.0.1
  •  New in 20.0.2  Inherits the default value of the shared_configuration.sc_image_tag parameter.
Yes No
setup.resources.requests.memory The minimum memory required, including JVM heap and file system cache, to start the setup pod. 50 Mi No Yes
setup.resources.requests.cpu The minimum amount of CPU required to start the setup pod. 200 m No Yes
setup.resources.limits.memory The maximum memory, including JVM heap and file system cache, to allocate to the setup pod. 120 Mi No Yes
setup.runAsUser This parameter controls which user identifiers the containers are run with. For the security context of the setup pod, this parameter is usually a numeric value that corresponds to a user ID.
  •  For 20.0.2  20181
  •  New in 20.0.3  Inherits the default value of the shared_configuration.sc_run_as_user parameter.
Yes Yes
 New in 20.0.3  setup.backoffLimit The number of retries before the Setup job is considered failed. 6 Yes Yes