Можем ли мы использовать k8s kustomize с kubectl для установки изображения и создания секретного файла?

Я использую k8s kustomize для установки изображения и создания секретного файла.

$(cd ./k8s/overlays/prod && kustomize edit set image gcr.io/PROJECT_ID/image:1.0)

и это работает!

Теперь я пытаюсь использовать kubectl kustomize, чтобы сделать то же самое, не делая cd . ./k8s/overlays/prod

Возможно ли, чтобы плагин Kustomize был встроен в kubectl?

то же самое для kustomize edit add secret с kubectl без cd в каталог?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
6
0
4 100
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

К сожалению, это невозможно. Встроенная в kubectl команда kustomize поддерживает только исправление и применение файлов kustomize.

Я рекомендую использовать автономную версию kustomize, так как kubectl использует kustomize версию 2.0.4, а самая новая — уже 3.8.8. Использование более старой версии нарушит некоторые функции.

Есть много запросов на поддержку более новой версии внутри kubectl, но есть некоторые технические причины, которые не позволяют это сделать. Вы можете отслеживать прогресс здесь.

Большое спасибо @thomas за ваше время и ответ.

Arian 29.12.2020 03:21

Более новый kustomize поставляется в kubectl v1.21, который, наконец, разблокирует более новый kustomize, который разблокирует сценарий OP (согласно ответу @acid_fuji).

кубектл настроить v1.21 v4.0.5 фальшивая колонка, чтобы облегчить чтение версий v1.20 v2.0.3

Если вы читаете это, рассмотрите возможность голосования за kubectl, чтобы показать, какая версия kustomize в него входит: github.com/kubernetes-sigs/kustomize/issues/1424.

yzorg 26.04.2021 22:57

список проблем, которые блокировали принятие новых версий до версии 1.21: github.com/kubernetes-sigs/kustomize/issues/…

yzorg 26.04.2021 22:59

Версия 1.22 уже была обновлена, чтобы настроить 4.1.2, но пройдет некоторое время, прежде чем 1.22 будет выпущена, 1.21 только что отправлена, так что 5 месяцев. kustomize можно было снова обновить до выхода 1.22.

yzorg 26.04.2021 23:00

Предупреждение: файл kubectl readme на github по-прежнему содержит устаревшую информацию о том, какая версия kustomize входит в комплект.

yzorg 26.04.2021 23:03

Предупреждение: kubectl официально поддерживает только 1 минорную версию с вашего сервера k8s api. Поэтому, если ваш кластер работает под управлением 1.18 или 1.19, будьте осторожны, если вы используете новый kubectl v1.21 с ним.

yzorg 26.04.2021 23:08

Этот ответ имеет содержание комментария. Пожалуйста, пересмотрите его, чтобы ответить на вопрос.

Aleksandr Dubinsky 04.09.2021 11:01

@AleksandrDubinsky Я не смог отформатировать его как таблицу. Было бы трудно прочитать несколько номеров версий в комментарии. Предыдущий ответ ответил на вопрос, почему ОП был заблокирован, и я опубликовал версию, в которой сценарий ОП разблокирован.

yzorg 08.09.2021 15:53

Это не то, как работают ответы на SO. Вы не можете публиковать дополнительную информацию и предполагать, что все прочитали ответ, на который вы отвечаете. Просто включите полезную информацию из другого ответа, чтобы ваш пост был самостоятельным ответом.

Aleksandr Dubinsky 09.09.2021 09:12

@AleksandrDubinsky Спасибо, но k8s — это сложная система со сложной цепочкой инструментов. Те из нас, кто пытается использовать его, могли бы использовать всю помощь, которую мы можем получить. В этой таблице показан огромный скачок в номерах версий kustomize по сравнению с выпуском версии v1.21 k8s, который было бы очень сложно передать в комментарии. Я не буду перечислять или демонстрировать функции kustomize, добавленные между v2 и v4. Другой ответ также не дает прямого ответа на вопрос OP, он также указывает ему на более новую версию kustomize. Почему вы не жалуетесь ему?

yzorg 09.09.2021 15:45

Проблема с этим ответом в том, что он фактически неверен. Даже с последним kubectl функциональность kustomize в kubectl по-прежнему ограничена применением и исправлением через kustomization.yaml без редактирования самого kustomization.yaml.

Blackclaws 25.08.2022 11:05

@Blackclaws Весь смысл настройки состоит в том, чтобы генерировать правильные значения для каждого варианта. Вы редактируете вещи в k8s, вы не редактируете результаты настройки через автоматизацию. Редактируем kustumization.yaml вручную или добавляем оверлеи и перегенерируем. У нас есть варианты для таких вещей, как летнее время в США и не летнее время в США, для создания расписаний UTC в разное время года. По крайней мере, так его использует моя команда. kustomize в конвейерах CI/CD, kubectl (прямое редактирование k8s) для однократных или производственных сценариев реконфигурации (или uat или dev и т. д.). Kustomize — неправильный инструмент для живого редактирования.

yzorg 01.09.2022 18:25

@yzorg Ну, тот факт, что сам kustomize имеет средства для обновления, например, версии изображения, которое помещается в окончательные манифесты, делает его, по крайней мере, пригодным для использования, если, возможно, не лучшим инструментом для редактирования собственных файлов. Kustomize также не мешает вам использовать его для редактирования файлов kustomization.yml. Особенно в сценарии CI/CD я бы использовал этот инструмент для изменения версии образа, установленного в манифестах. Несмотря на этот факт. По-прежнему верно, что ответ, к которому это комментарий, фактически неверен. Вы можете делать только то, что просил OP, с чистым kustomize

Blackclaws 06.09.2022 17:31

Я попробовал это, и это не сработало.

Carlos Garcia 30.03.2023 23:59

Другие вопросы по теме