Advanced configuration
editAdvanced configuration
editThis functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.
Setting JVM options
editYou can change JVM settings by using the LS_JAVA_OPTS
environment variable to override default settings in jvm.options
. This approach ensures that expected settings from jvm.options
are set, and only options that explicitly need to be overridden are.
To do, this, set the LS_JAVA_OPTS
environment variable in the container definition of your Logstash resource:
Setting keystore
editYou can specify sensitive settings with Kubernetes secrets. ECK automatically injects these settings into the keystore before it starts Logstash. The ECK operator continues to watch the secrets for changes and will restart Logstash Pods when it detects a change.
For the technical preview, the use of settings in the Logstash keystore may impact startup time for Logstash Pods. Startup time will increase linearly for each entry added to the keystore, and this could extend startup time significantly.
The Logstash Keystore can be password protected by setting an environment variable called LOGSTASH_KEYSTORE_PASS
. Check out Logstash Keystore documentation for details.
apiVersion: v1 kind: Secret metadata: name: logstash-keystore-pass stringData: LOGSTASH_KEYSTORE_PASS: changed --- apiVersion: v1 kind: Secret metadata: name: logstash-secure-settings stringData: HELLO: Hallo --- apiVersion: logstash.k8s.elastic.co/v1alpha1 kind: Logstash metadata: name: logstash-sample spec: version: 8.8.0 count: 1 pipelines: - pipeline.id: main config.string: |- input { exec { command => 'uptime' interval => 10 } } filter { if ("${HELLO:}" != "") { mutate { add_tag => ["awesome"] } } } secureSettings: - secretName: logstash-secure-settings podTemplate: spec: containers: - name: logstash env: - name: LOGSTASH_KEYSTORE_PASS valueFrom: secretKeyRef: name: logstash-keystore-pass key: LOGSTASH_KEYSTORE_PASS