Пример запуска Pod
Создадим файл nginx.yaml со следующим содержимым:
apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx
Для запуска выполним:
kubectl apply -f nginx.yaml
Посмотреть список подов:
kubectl get pods
NAME READY STATUS RESTARTS AGE nginx 1/1 Running 0 39s
Зайти в под:
kubectl exec -ti nginx bash
Удалить так же, можно через файл:
kubectl delete -f nginx.yaml
Пример запуска Deployments
apiVersion: apps/v1beta2 kind: Deployment metadata: name: nginx-deployment spec: replicas: 2 selector: matchLabels: app: webserver template: metadata: labels: app: webserver spec: containers: - name: nginx image: nginx
- kind: Deployment — означает, что Kubernetes будет постоянно следить за здоровьем контейнера и переподымать его при необходимости автоматически.
- replicas: 2 — создадим 2 реплики нашего контейнера
Для запуска выполним:
kubectl apply -f nginx-deployment.yaml
Посмотрим запущенные deployments:
kubectl get deployments
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE nginx-deployment 2 2 2 2 7m12s
Посмотрим запущенные pods:
kubectl get pods
NAME READY STATUS RESTARTS AGE nginx-deployment-544d7ffff9-bl772 1/1 Running 0 7m43s nginx-deployment-544d7ffff9-z5w2n 1/1 Running 0 7m43s
Попробуем поиграться с опцией scale:
kubectl scale deployment nginx-deployment --replicas=4
Посмотрим результат:
kubectl get pods
NAME READY STATUS RESTARTS AGE nginx-deployment-544d7ffff9-bl772 1/1 Running 0 40m nginx-deployment-544d7ffff9-f6rvc 1/1 Running 0 6s nginx-deployment-544d7ffff9-tzqw4 1/1 Running 0 6s nginx-deployment-544d7ffff9-z5w2n 1/1 Running 0 40m
Удалить deployment:
kubectl delete deployments nginx-deployment