Kubernetes api — различия между версиями
Материал из InformationSecurity WIKI
Drakylar (обсуждение | вклад) (Новая страница: «Категория:Pentest Страница посвящена командам kubectl и curl, которые позволяют работать с Kubern…») |
Drakylar (обсуждение | вклад) м |
||
Строка 38: | Строка 38: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | = Запросы = | |
Запросы будут разделены на ресурсы, к которым их отправляют. | Запросы будут разделены на ресурсы, к которым их отправляют. | ||
− | + | == Текущая конфигурация == | |
− | + | === Конфиг === | |
Общая информация | Общая информация | ||
Строка 53: | Строка 53: | ||
− | + | === Пользователи === | |
Список пользователей | Список пользователей | ||
Строка 66: | Строка 66: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | === Контексты === | |
Список контекстов | Список контекстов | ||
Строка 84: | Строка 84: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | === Namespace === | |
Установить namespace по-умолчанию | Установить namespace по-умолчанию |
Версия 12:12, 13 марта 2022
Страница посвящена командам kubectl и curl, которые позволяют работать с Kubernetes API.
Похожую информацию можно найти тут https://kubernetes.io/ru/docs/reference/kubectl/cheatsheet/
Содержание
Настройка утилит
kubectl
Для общения с API можно воспользоваться стандартным ПО kubectl.
Пример запроса:
kubectl get secrets
Запросы можно делать inline с токеном:
kubectl --token=$TOKEN --server=$APISERVER --insecure-skip-tls-verify=true
curl
Для curl кроме стандартных параметров (токен, неймспейс) потребуется адрес API-сервера.
export APISERVER=${KUBERNETES_SERVICE_HOST}:${KUBERNETES_SERVICE_PORT_HTTPS}
export SERVICEACCOUNT=/var/run/secrets/kubernetes.io/serviceaccount
export NAMESPACE=$(cat ${SERVICEACCOUNT}/namespace)
export TOKEN=$(cat ${SERVICEACCOUNT}/token)
# Лишняя строка, но можно использовать с curl --cacert ${CACERT}
# export CACERT=${SERVICEACCOUNT}/ca.crt
curl -k --header "Authorization: Bearer ${TOKEN}"
Запросы
Запросы будут разделены на ресурсы, к которым их отправляют.
Текущая конфигурация
Конфиг
Общая информация
kubectl config view
Пользователи
Список пользователей
kubectl config get-users
kubectl config view -o jsonpath='{.users[*].name}'
Удалить пользователя
kubectl config unset users.foo
Контексты
Список контекстов
kubectl config get-contexts
Текущий контекст
kubectl config current-context
Установить контекст
kubectl config use-context my-cluster-name
Namespace
Установить namespace по-умолчанию
kubectl config set-context --current --namespace=ggckad-s2