One want to configure custom kernel parameter for elasticsearch pods/app running on worker node of TKGi cluster.
Custom parameter needed for elasticsearch pods/app :- https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html
Tanzu Kubernetes Grid Integrated Edition (TKGi) v1.18+
Below is the procedure to update kernel parameter on worker node of TKGi cluster:-
1) Download the latest version 22.1.3 of os-conf release
https://bosh.io/releases/github.com/cloudfoundry/os-conf-release?all=1
2)Upload the release via bosh command
# bosh upload-release os-conf-release-22.1.3.tgz
Refer https://bosh.io/docs/uploading-releases/#:~:text=If%20you%20have%20a%20URL%20to%20a%20release%20tarball%20(for%20example%20a%20URL%20provided%20by%20bosh.io)%3A document for more details of bosh release upload procedure.
3) Add a runtime config via bosh command.
# cat runtime.yml
--------------------
releases:
- name: "os-conf"
version: "22.1.3"
addons:
- name: os-configuration
jobs:
- name: sysctl
release: os-conf
properties:
sysctl:
- vm.max_map_count=262144
include:
deployments: [service-instance_XXXXXXXXXX] # you can define which deployments would be applied this runtime config.
exclude:
deployments: [service-instance_XXXXXXXXXX] # you can define which deployments would not be applied this runtime config.
4) Update runtime config
# bosh update-runtime-config runtime.yml
5) Upgrade related clusters via
# tkgi upgrade-cluster <CLUSTER_NAME>