HELM
Der folgende Ordner beinhaltet zwei locale HELM Chart Templates, womit kann man dynamisch/oder wieder verwendeten Objekte des Kubernetes generieren und sie in die Kubernetes Cluster deployen. In folgenden Beispielen kann man dynamisch ein Deployment, namespace, pod, service als auch ein postgres generieren/erstellen.
Deployment eines Charts in die Kubernetes Cluster
helm install <Name des Charts> .
.
├── deployment
│ ├── Chart.yaml
│ ├── NOTES.txt
│ ├── pod.yaml
│ ├── service.yaml
│ ├── templates
│ │ ├── deployment.yaml
│ │ ├── _helpers.tpl
│ │ └── namespace.yaml
│ └── values.yaml
├── postgress
│ ├── Chart.yaml
│ ├── postgress.yaml
│ ├── templates
│ │ ├── _helpers.tpl
│ │ ├── NOTES.txt
│ │ ├── postgress-config.yaml
│ │ ├── postgress-deployment.yaml
│ │ ├── postgress-pvc.yaml
│ │ └── postgress-svc.yaml
│ └── values.yaml
└── README.md
4 directories, 18 files
Ein Beispiel eines Deployments Definition ./template/deployment.yamldie nimmt die Daten aus der ./values.yaml und erstellt ein Deployment in die Kuberenetes Cluster
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
{{- $replica := .Values.replicacount}}
{{- $image := .Values.imagenginx}}
{{- with .Values.service}}
app: {{.labels.app}}
name: {{.labels.app}}-deployment
spec:
replicas: {{$replica}}
selector:
matchLabels:
app: {{.labels.app}}
strategy: {}
template:
metadata:
labels:
app: {{.labels.app}}
spec:
containers:
- image: {{$image}}
name: {{.labels.app}}
imagePullPolicy: IfNoPresent
{{end}}