kubectl exec
Огляд
Виконує команду в контейнері.
kubectl exec (POD | TYPE/NAME) [-c CONTAINER] [flags] -- COMMAND [args...]
Приклади
# Отримати вивід від виконання команди 'date' з Pod mypod, використовуючи типово перший контейнер
kubectl exec mypod -- date
# Отримати вивід команди 'date' у ruby-контейнері з Pod mypod
kubectl exec mypod -c ruby-container -- date
# Перехід у режим необробленого терміналу; надсилає stdin до 'bash' у ruby-контейнері з Pod mypod
# і надсилає stdout/stderr з 'bash' назад клієнту
kubectl exec mypod -c ruby-container -i -t -- bash -il
# Вивести вміст /usr з першого контейнера Pod mypod і відсортувати за часом модифікації
# Якщо команда, яку ви хочете виконати в Pod, має спільні прапорці (наприклад, -i),
# ви повинні використовувати два тире (--), щоб відокремити прапорці/аргументи вашої команди.
# Також зауважте, що не слід брати команду та її прапорці/аргументи у лапки
# якщо тільки ви не виконуватимете її так у звичайному режимі (тобто, виконайте ls -t /usr, а не "ls -t /usr").
kubectl exec mypod -i -t -- ls -t /usr
# Отримання результатів виконання команди 'date' з першого Pod deployment mydeployment, з використанням стандартно першого контейнера
kubectl exec deploy/mydeployment -- date
# Отримати вивід команди 'date' з першого Pod сервісу myservice, використовуючи стандартно перший контейнер
kubectl exec svc/myservice -- date
Параметри
-c, --container string | |
Назва контейнера. Якщо не вказано, використовуйте анотацію kubectl.kubernetes.io/default-container для вибору контейнера, який буде приєднано, інакше буде обрано перший контейнер у pod | |
-f, --filename strings | |
Імʼя файлу, теки або URL до файлів, для виконання ресурсів | |
-h, --help | |
Довідка exec | |
--pod-running-timeout duration Типово: 1m0s | |
Тривалість часу (наприклад, 5s, 2m або 3h, більше нуля) для очікування, поки не запрацює хоча б один Pod | |
-q, --quiet | |
Виводити лише дані, отримані під час віддаленого сеансу | |
-i, --stdin | |
Передати stdin до контейнера | |
-t, --tty | |
Stdin є TTY |
Параметри батьківських команд
--as string | |
Імʼя користувача, яке використовується для виконання операції. Користувач може бути звичайним користувачем або службовим обліковим записом в просторі імен. | |
--as-group strings | |
Група, яка використовується для операції; цей прапорець можна повторити для вказівки декількох груп. | |
--as-uid string | |
UID, який використовується для операції. | |
--cache-dir string Типово: "$HOME/.kube/cache" | |
Типове розташування теки кешу | |
--certificate-authority string | |
Шлях до файлу сертифіката для центра сертифікації | |
--client-certificate string | |
Шлях до файлу клієнтського сертифіката для TLS | |
--client-key string | |
Шлях до файлу ключа клієнта для TLS | |
--cluster string | |
Назва файлу kubeconfig кластера, який слід використовувати | |
--context string | |
Назва контексту kubeconfig, який слід використовувати | |
--default-not-ready-toleration-seconds int Типово: 300 | |
Вказує tolerationSeconds для toleration notReady:NoExecute, який типово додається до кожного Pod, який ще не має такої толерантності. | |
--default-unreachable-toleration-seconds int Типово: 300 | |
Вказує tolerationSeconds для toleration unreachable:NoExecute, який типово додається до кожного Pod, який ще не має такої толерантності. | |
--disable-compression | |
Якщо true, відмовляється від стиснення відповіді для всіх запитів до сервера | |
--insecure-skip-tls-verify | |
Якщо true, сертифікат сервера не буде перевірятися на дійсність. Це зробить ваші HTTPS-зʼєднання небезпечними | |
--kubeconfig string | |
Шлях до файлу kubeconfig, який слід використовувати для CLI-запитів. | |
--match-server-version | |
Вимагає, щоб версія сервера відповідала версії клієнта | |
-n, --namespace string | |
Якщо присутній, простір імен для цього CLI-запиту | |
--password string | |
Пароль для базової автентифікації на API-сервері | |
--profile string Типово: "none" | |
Імʼя профілю для захоплення. Одне із (none|cpu|heap|goroutine|threadcreate|block|mutex) | |
--profile-output string Типово: "profile.pprof" | |
Імʼя файлу, в який записується профіль | |
--request-timeout string Типово: "0" | |
Час очікування перед відмовою у виконанні окремого запиту до сервера. Ненульові значення повинні містити відповідну одиницю часу (наприклад, 1s, 2m, 3h). Значення нуль означає відсутність тайм-ауту запитів. | |
-s, --server string | |
Адреса та порт сервера API Kubernetes | |
--storage-driver-buffer-duration duration Типово: 1m0s | |
Записи в драйвері зберігання будуть буферизовані на цей час і збережені в бекендах без памʼяті як одна транзакція | |
--storage-driver-db string Типово: "cadvisor" | |
Назва бази даних | |
--storage-driver-host string Типово: "localhost:8086" | |
Хост:порт бази даних | |
--storage-driver-password string Типово: "root" | |
Пароль бази даних | |
--storage-driver-secure | |
використовувати захищене зʼєднання з базою даних | |
--storage-driver-table string Типово: "stats" | |
Назва таблиці | |
--storage-driver-user string Типово: "root" | |
Імʼя користувача бази даних | |
--tls-server-name string | |
Імʼя сервера, яке використовується для перевірки дійсності сертифіката сервера. Якщо воно не надане, використовується імʼя хоста, яке використовується для звʼязку з сервером | |
--token string | |
Токен на предʼявника для автентифікації на API-сервері | |
--user string | |
Імʼя користувача kubeconfig, яке слід використовувати | |
--username string | |
Імʼя користувача для базової автентифікації на API-сервері | |
--version version[=true] | |
--version, --version=raw виводить інформацію про версію та завершує роботу; --version=vX.Y.Z... задає відповідну версію | |
--warnings-as-errors | |
Трактувати попередження, отримані від сервера, як помилки і виходити з ненульовим кодом виходу |
Дивіться також
- kubectl — kubectl керує менеджером кластерів Kubernetes