Для управления всеми настройками K8S, а также pods, сервисами и прочим используется утилита kubectl. Все операции реализуются указанием одного из 20 ключей, список которых можем получить, введя —help или на сайте проекта:n
$ kubectl --help
В самом простом случае настройки можно указывать в командной строке. Запустим контейнер с nginx:n
$ kubectl run -mynginx --image=nginx --port=80 --hostport=80
K8S сам загрузит и установит образ. Через время к nginx можно обратиться, подключившись на 80-й порт. Список IP, выданных подам:n
$ kubectl get pods -o yaml | grep podIP
Выставляем в качестве сервиса:n
$ kubectl expose deployment my-nginx --target-port=80 --type=LoadBalancer
В команде kubectl expose возможно использование ресурсов: pod (po), service (svc), replicationcontroller (rc),ndeployment (deploy), replicaset (rs).nМасштабирование:n
$ kubectl scale deployment my-nginx --replicas=2
Текущее состояние репликации выводится командой kubectl get rc или kubectl get services, если создавался сервис. Выведем в расширенном формате список нодов и сервисов:n
$ kubectl get rc,services -o=wide
Отбор с учетом меток (labels):n
$ kubectl get services -l "app=nginx,role=master,tier=frontend"
Информация о конкретном сервисе:n
$ kubectl describe svc frontend
Удалить pod нельзя, он сразу восстановит работу. Нужно вначале остановить сервис, deployment …, а потом уже удалить сам под:n
$ kubectl delete deployment my-nginxn$ kubectl delete my-nginx-5489078-xt4 --now
Но обычно используют заранее подготовленный YAMLфайл, который позволит быстро запускать, останавливать и обновлять контейнеры. Возможно заранее прописать настройки контейнераnв файле, который затем использовать при развертывании командой create:n
$ kubectl create -f nginx.yaml
Если файлов много, то просто указывается каталог, в котором они находятся. Утилиты Docker при работе с K8S использовать не рекомендуется. Для выполнения команды внутри контейнера применяем kubectl exec.nKubernetes достаточно интересный проект, и хотя первое знакомство обычно проходит тяжело, в первую очередь это связано с плохой документацией, со временем начинаешь видеть плюсы и становишься сторонником этого решения.n
Наши администраторы могут установить кластер управления контейнером для вашей архитектуры, [email protected]