Огляд
Порівнює конфігурації, вказані за назвою файлу або stdin, між поточною онлайн-конфігурацією та конфігурацією, яка була б застосована.
На виході завжди буде YAML.
Змінна середовища KUBECTL_EXTERNAL_DIFF може бути використана для вибору вашої власної команди diff. Користувачі також можуть використовувати зовнішні команди з параметрами, наприклад: KUBECTL_EXTERNAL_DIFF="colordiff -N -u"
Стандартно команду "diff", доступну у вашому шляху, буде запущено з параметрами "-u" (уніфікований diff) і "-N" (вважати відсутні файли порожніми).
Стан завершення роботи: 0 — Відмінностей не знайдено. 1 — Відмінності знайдено. >1 — Запуск Kubectl або diff завершився з помилкою.
Зауваження: якщо використовується KUBECTL_EXTERNAL_DIFF, очікується, що його буде застосовано відповідно до цієї конвенції.
kubectl diff -f FILENAME
Приклади
# Diff resources included in pod.json
kubectl diff -f pod.json
# Diff file read from stdin
cat service.yaml | kubectl diff -f -
Параметри
| --concurrency int Типово: 1 | |
Кількість обʼєктів для паралельної обробки у порівнянні з реальною версією. Більша кількість = швидше, але більше памʼяті, вводу/виводу та процесора за коротший проміжок часу. |
|
| --field-manager string Типово: "kubectl-client-side-apply" | |
Імʼя менеджера, що використовується для відстеження права власності на поле. |
|
| -f, --filename strings | |
Імʼя файлу, теки або URL до файлів, що містить конфігурацію для diff |
|
| --force-conflicts | |
Якщо значення true, серверне застосування (server-side apply) буде примусово вносити зміни всупереч конфліктам. |
|
| -h, --help | |
Довідка diff |
|
| -k, --kustomize string | |
Обробити теку kustomization. Цей прапорець не можна використовувати разом з -f або -R. |
|
| --prune | |
Включити ресурси, які буде видалено під час обрізання. Можна використовувати з параметром -l і типово показує всі ресурси, які буде вилучено |
|
| --prune-allowlist strings | |
Замінити список стандартний дозволів (allowlist) <group/version/kind> для --prune |
|
| -R, --recursive | |
Рекурсивно обробити теку, вказану у -f, --filename. Корисно, якщо ви хочете керувати повʼязаними маніфестами, організованими в одній теці. |
|
| -l, --selector string | |
Селектор (запит на мітки) для фільтрації, що підтримує '=', '==', '!=', 'in', 'notin' (наприклад, -l key1=value1,key2=value2,key3 in (value3)). Обʼєкти, щоб мати збіг, повинні задовольняти усім зазначеним обмеженням міток. |
|
| --server-side | |
Якщо значення true, apply виконується на сервері, а не на клієнті. |
|
| --show-managed-fields | |
Якщо true, включити керовані поля в diff. |
|
Успадковані батьківські параметри
| --as string | |
Імʼя користувача, яке використовується для виконання операції. Користувач може бути звичайним користувачем або службовим обліковим записом в просторі імен. |
|
| --as-group strings | |
Група, яка використовується для операції; цей прапорець можна повторити для вказівки декількох груп. |
|
| --as-uid string | |
UID, який використовується для операції. |
|
| --as-user-extra strings | |
Додаткові параметри користувача, які слід використовувати для операції. Цей прапорець можна повторювати, щоб вказати кілька значень для одного і того ж ключа. |
|
| --cache-dir string Типово: "$HOME/.kube/cache" | |
Типове розташування теки кешу |
|
| --certificate-authority string | |
Шлях до файлу сертифіката для центра сертифікації |
|
| --client-certificate string | |
Шлях до файлу клієнтського сертифіката для TLS |
|
| --client-key string | |
Шлях до файлу ключа клієнта для TLS |
|
| --cluster string | |
Назва файлу kubeconfig кластера, який слід використовувати |
|
| --context string | |
Назва контексту kubeconfig, який слід використовувати |
|
| --disable-compression | |
Якщо true, відмовляється від стиснення відповіді для всіх запитів до сервера |
|
| --insecure-skip-tls-verify | |
Якщо true, сертифікат сервера не буде перевірятися на дійсність. Це зробить ваші HTTPS-зʼєднання небезпечними |
|
| --kubeconfig string | |
Шлях до файлу kubeconfig, який слід використовувати для CLI-запитів. |
|
| --kuberc string | |
Шлях до файлу kuberc, який буде використовуватися для налаштувань. Цю функцію можна вимкнути, експортувавши функцію KUBECTL_KUBERC=false або вимкнувши функцію KUBERC=off. |
|
| --match-server-version | |
Вимагає, щоб версія сервера відповідала версії клієнта |
|
| -n, --namespace string | |
Якщо присутній, простір імен для цього CLI-запиту |
|
| --password string | |
Пароль для базової автентифікації на API-сервері |
|
| --profile string Типово: "none" | |
Імʼя профілю для захоплення. Одне із (none|cpu|heap|goroutine|threadcreate|block|mutex|trace) |
|
| --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