====== Краткий chetsheet ====== /// https://kubernetes.io/ru/docs/reference/kubectl/cheatsheet/ ////////////////////////////// # Сервисы kubectl -n global-lobby-dev get httpproxy kubectl -n global-lobby-dev get all kubectl -n global-lobby-dev get services # расширенная инфа kubectl -n global-lobby-dev describe httpproxy kubectl -n global-lobby-dev describe services # Просмотр логов сервиса kubectl -n global-lobby-dev logs kafka-kafka-0 # Запустить bash интерактивно (ctrl + D отключится) kubectl -n global-lobby-prod exec -it ignite-0 -- bash kubectl -n global-lobby-dev exec -t kafka-kafka-0 -it -- /bin/bash # Неймспейсы kubectl get ns kubectl describe ns # кол-во игнайтов k -n global-lobby-prod scale sts ignite --replicas=3 # Применение конфигурации в рантайме kubectl -n global-lobby-prod apply -f //////////////////////// #Работа с нодами # перечень kubectl -n global-lobby-dev get nodes [name] # расширенная инфа kubectl -n global-lobby-prod describe nodes [k8s-node-default-041] # состояние kubectl -n global-lobby-prod top node k8s-node-default-041 //////////////////////// #Работа с подами # перечень kubectl -n global-lobby-dev get pods # расширенная инфа kubectl -n global-lobby-prod describe pod harvester-8594449697-dpcjc # удалить под kubectl -n global-lobby-dev delete pods --grace-period=0 --force # Состояние одного пода kubectl -n global-lobby-prod get pod kafka-kafka-0 --watch # Выгрузить конфигурацию в файл kubectl -n global-lobby-prod get pod kafka-kafka-2 -o yaml > test_kafka-kafka-2.yml # Проброс порта из сервиса (пода) в локальную машину kubectl -n global-lobby-dev port-forward harvester-ignite-main-0 56789:8080 ///////////////////////////////// # хранилище pv/pvc kubectl -n global-lobby-prod get pvc # расширенная инфа kubectl -n global-lobby-prod describe pvc data-0-kafka-kafka-0 # resources.requests.storage - запрашиваемое место ///////////////////// # перезапуск контейнеров, всех ignite видимо kubectl -n global-lobby-prod rollout restart sts ignite /////// Приложения //////////////////////////////////////////////////////////// kubectl -n global-lobby-dev get [statefulsets | deployments] # Откат в пред состояние или рестарт, деплоймент, стейтфулсет (...) rollout # например перезапуск игнайтов kubectl -n global-lobby-prod rollout restart sts harvester-ignite # изменить стейтфулл сет kubectl -n global-lobby-prod scale statefulsets harvester-ignite --replicas=0 # либо это вроде тоже самое kubectl -n global-lobby-prod scale --replicas=0 sts harvester-ignite # изменить деплоймент kubectl -n global-lobby-prod scale deployment --replicas=0 harvester ==== Настройка консоли ==== Установка обязательно под админом\\ - Установите kubectl (https://kubernetes.io/ru/docs/tasks/tools/install-kubectl/)\\ - Установите krew (https://krew.sigs.k8s.io/docs/user-guide/setup/install/)\\ - Установите kubelogin (https://github.com/int128/kubelogin)\\ kubectl krew install oidc-login\\ Скачать ехе kubectl, добавить в %PATH%\\ Скачать krew, из консоли запустить "им же установку его же" (krew.exe install krew)\\ добавить в %PATH% созданную директорию (home/.krew/bin)\\ затем выполнить команду "kubectl krew install oidc-login"\\
:!: Пример .kube/config Авторизация по токену сервисного юзера apiVersion: v1 clusters: - cluster: insecure-skip-tls-verify: true server: https://api.site.com name: dapp-cluster contexts: - context: cluster: dapp-cluster namespace: my-ns-1 user: deployer name: my-kube-default current-context: my-kube-default kind: Config users: - name: deployer user: token: eyJhbGciOiJSUzI1NiIsImtpZCI6IjdtMTZ