Giriş
Declarative yöntem yerine komut satırını kullanmak istersek kubectl create configmap kullanılır
Ortam değişkenleri gibi düşünülebilir.
- Bu veriye bir başka yaml dosyasından erişmek için configMapKeyRef anahtar kelimesi kullanılır
- Bu veriye SpringBoot application.properties veya application.yaml dosyasından erişmek mümkün. Bir örnek burada
ConfigMap'teki Değişklikleri Diğer Namespace'e de Yansıtma
Reflector kullanılabilir. Açıklaması şöyle
What is Reflector?
Reflector is a Kubernetes addon designed to help us automatically reflect changes to ConfigMaps and Secrets from one namespace to another.
The first pros of Reflector is that it monitors the resources (configmaps and secrets) that we specify, and if in other namespaces there are no such resources, Reflector creates a new one, and if there are, then it does nothing.
The second pros of Reflector is that monitor changes to resources (secrets and configmaps) and reflect changes to other namespaces.
1. ConfigMap Yaratma
binaryData Alanı
Açıklaması şöyle
ConfigMap objects now support binary data via a new binaryData field. When using kubectl create configmap --from-file, files containing non-UTF8 data will be placed in this new field in order to preserve the non-UTF8 data. Note that kubectl's --append-hash feature doesn't take binaryData into account. Use of this feature requires 1.10+ apiserver and kubelets.
Örnek
Şöyle yaparız
apiVersion: v1 kind: ConfigMap metadata: name: templates binaryData: filename1: {{ .Files.Get "foldername/filename1.zip" | b64enc }} filename2: {{ .Files.Get "foldername/filename2.zip" | b64enc }}
data Alanı
Örnek - key/value
Şöyle yaparız
apiVersion: v1 kind: ConfigMap metadata: name: mysql-config data: MYSQL_ROOT_HOST: root MYSQL_ROOT_PASSWORD: password k create configmap mysql-config --from-env-file=/root/mysql-env.txt
Örnek - String sql cümlesi
Şöyle yaparız
apiVersion: v1 kind: ConfigMap metadata: name: vitess-init-sql-demo data: inititial.sql: "..."
Örnek - bash script
Şöyle yaparız
apiVersion: v1 kind: ConfigMap metadata: name: redis-startup namespace: redis data: redis-startup.sh: | #!/bin/sh ... fi
Örnek - bash script
Şöyle yaparız
apiVersion: v1 kind: ConfigMap metadata: name: slim-shady-configmap data: slim-shady.sh: | #!/bin/bash echo "Hi!" echo "My name is" echo "What?" echo "My name is" echo "Who?" echo "My name is" echo "Chika-chika" echo "Slim Shady"
yazılarına bakabilirsiniz
Hiç yorum yok:
Yorum Gönder