Инструменты пользователя

Инструменты сайта


k8s:cheatsheet

Краткий 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 <file-name>
 
 
 
////////////////////////
#Работа с нодами
	# перечень
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 <pod-name> --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
k8s/cheatsheet.txt · Последнее изменение: 2024/09/04 05:31 — admin