1.1 Общие команды
Описание | Команда |
---|---|
Временно запустить тест curl |
kubectl run --rm mytest --image=yauritux/busybox-curl -it |
Временно запустить тест wget
|
kubectl run --rm mytest --image=busybox -it |
Запустите развертывание nginx с 2 репликами
|
kubectl run my-nginx --image=nginx --replicas=2 --port=80 |
Запустить nginx pod
|
kubectl run my-nginx --restart=Never --image=nginx --port=80 --expose |
Запустить развертывание nginx
|
kubectl run my-nginx --image=nginx --port=80 --expose |
Установить настройки пространства имен
|
kubectl config set-context <context_name> --namespace=<ns_name> |
Список подов с информацией об узлах
|
kubectl get pod -o wide |
Отобразить все | kubectl get all --all-namespaces |
Отобразить все сервисы | kubectl get service --all-namespaces |
Отобразить все развертывания | kubectl get deployments --all-namespaces |
Отобразить ноды с метками
|
kubectl get nodes --show-labels |
Отобразить ресурсы с выводом json
|
kubectl get pods --all-namespaces -o json |
Проверка файл yaml с пробным прогоном
|
kubectl create --dry-run --validate -f pod-dummy.yaml |
Запустить временный под для тестирования
|
kubectl run --rm -i -t --image=alpine test-$RANDOM -- sh |
kubectl для запуска команда shell
|
kubectl exec -it mytest -- ls -l /etc/hosts |
Отобразить системную конфигурацию через configmap | kubectl -n kube-system get cm kubeadm-config -o yaml |
Получить развертывание yaml | kubectl -n denny-websites get deployment mysql -o yaml |
Объяснить ресурс
|
kubectl explain pods , kubectl explain svc |
Посмотреть Поды
|
kubectl get pods -n wordpress --watch |
Проверка работоспособности | curl -L http://127.0.0.1:10250/healthz |
Открыть терминал Bash в поде
|
kubectl exec -it storage sh |
Проверка переменных сред поды | kubectl exec redis-master-ft9ex env |
Включить автозаполнение оболочки kubectl | echo "source <(kubectl completion bash)" >>~/.bashrc , и перезагрузка |
Использование Minikube
|
eval $(minikube docker-env) , Больше не надо пушить на Docker hub |
Kubectl применить папку файлов YAML
|
kubectl apply -R -f . |
Отобразить службы, отсортированные по имени
|
kubectl get services –sort-by=.metadata.name |
Отобразить поды, отсортированные по перезапускам |
kubectl get pods –sort-by=’.status.containerStatuses[0].restartCount’ |
Отобразить поды и образы |
kubectl get pods -o=’custom-columns=PODS:.metadata.name,Images:.spec.containers[*].image’ |
Список всех образов контейнеров
|
list-all-images.sh |
kubeconfig пропустить проверку TLS
|
skip-tls-verify.md |
Устанока Kubectl на Ubuntu
|
"deb https://apt.kubernetes.io/ kubernetes-xenial main" |
1.2 Проверка производительности
Описание | Команда |
---|---|
Показать использование ресурса ноды
|
kubectl top node |
Показать использование ресурса подов
|
kubectl top pod |
Показать использование ресурса для конкретного пода
|
kubectl top <podname> --containers |
Список использования ресурсов для всех контейнеров
|
kubectl top pod --all-namespaces --containers=true |
1.3 Удаление ресурсов
Описание | Команда |
---|---|
Удалить поду | kubectl delete pod/<pod-name> -n <my-namespace> |
Удалить поду принудительно | kubectl delete pod/<pod-name> --grace-period=0 --force |
Удалить поды по меткам | kubectl delete pod -l env=test |
Удалить развертывания по меткам
|
kubectl delete deployment -l app=wordpress |
Удалить все ресурсы, отфильтрованные по меткам
|
kubectl delete pods,services -l name=myLabel |
Удалить ресурсы в пространстве имен | kubectl -n my-ns delete po,svc --all |
Удалить постоянные тома по меткам
|
kubectl delete pvc -l app=wordpress |
Удалить только состояние (не поды)
|
kubectl delete sts/<stateful_set_name> --cascade=false |
1.4 Логи & Файлы конфигурации
Рабочий каталог
Описание | Путь |
---|---|
Папка конфигурации
|
/etc/kubernetes/ |
Файлы сертификатов | /etc/kubernetes/pki/ |
Учетные данные для API-сервера
|
/etc/kubernetes/kubelet.conf |
Учетные данные суперпользователя | /etc/kubernetes/admin.conf |
Конфигурационный файл kubectl | ~/.kube/config |
Рабочий каталог Kubernetes |
/var/lib/kubelet/ |
Рабочий каталог Docker | /var/lib/docker/ , /var/log/containers/ |
Рабочий каталог Etcd | /var/lib/etcd/ |
Сеть cni | /etc/cni/net.d/ |
Логи | /var/log/pods/ |
Логи на ноде worker | /var/log/kubelet.log , /var/log/kube-proxy.log |
Логи на ноде master | kube-apiserver.log , kube-scheduler.log , kube-controller-manager.log |
Env | /etc/systemd/system/kubelet.service.d/10-kubeadm.conf |
Env | export KUBECONFIG=/etc/kubernetes/admin.conf |