Configuration in K8

Damini Bansal
2 min readMay 1, 2023

--

In Kubernetes, configurations are managed through ConfigMaps and Secrets. ConfigMaps hold configuration data in key-value pairs, and Secrets hold sensitive data such as passwords, certificates, and tokens.

It’s important to remember that the secret data should be base64 encoded before it’s saved in Kubernetes.

To manage configurations in Kubernetes, you can follow these steps:

  1. Create a ConfigMap or Secret:

You can create a ConfigMap using kubectl command or by creating a YAML file with the ConfigMap data. Here is an example command to create a ConfigMap:

kubectl create configmap my-config --from-literal=key1=value1 --from-literal=key2=value2

You can create a Secret in a similar way using the kubectl command or by creating a YAML file with the Secret data.

2. Mount the ConfigMap or Secret as a volume in the Pod:

You can mount the ConfigMap or Secret as a volume in the Pod by adding a volume and volumeMounts section in the Pod’s YAML file. Here is an example YAML file:

apiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: my-container
image: my-image
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
configMap:
name: my-config

In the above YAML file, the ConfigMap my-config is mounted as a volume at the path /etc/config.

3. Use environment variables:

You can also use environment variables to set configuration values in the Pod. You can set the environment variables in the Pod’s YAML file by using the env section. Here is an example YAML file:

yamlCopy codeapiVersion: v1
kind: Pod
metadata:
name: my-pod
spec:
containers:
- name: my-container
image: my-image
env:
- name: KEY1
valueFrom:
configMapKeyRef:
name: my-config
key: key1
- name: KEY2
valueFrom:
secretKeyRef:
name: my-secret
key: key2

In the above YAML file, the ConfigMap my-config is used to set the environment variable KEY1, and the Secret my-secret is used to set the environment variable KEY2.

By following these steps, you can manage configurations in Kubernetes using ConfigMaps and Secrets.

I hope the information provided was helpful.

--

--

Damini Bansal
Damini Bansal

Written by Damini Bansal

Love to be lazy as lazy find an easiest way to do hard job.

No responses yet