62 lines
1.8 KiB
Markdown
62 lines
1.8 KiB
Markdown
### 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.yaml`die 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}}
|
|
``` |