Рубрики
Uncategorized

Редактирование секретов Kubernetes Inline

Мы много работаем с Kubernetes, и когда вы работаете с секретами, это может быть полная боль для редактирования … Теги с Кубератусами, DevOps, Vim, учебником.

Мы много работаем с Kubernetes, и когда вы работаете с Секреты Это может быть полная боль для их редактирования. Стандартный рабочий процесс может быть что-то вроде.

# Grab the existing secret
kubectl get secret some-secret -o yaml > some-secret.yaml

# Grab the existing secret
kubectl get secret some-secret \
  -o jsonpath='{ .data.secret }' \
  | base64 -D > thesecert.txt

# Edit the secret
vim thesecret.txt

# Grab the new secret and put it into the secret file
# and apply it to the cluster
cat thesecret.txt | base64 | pbcopy
vim some-secret.yaml # paste in your b64 encoded secret
kubectl apply -f some-secret.yaml

Это не отличный пользовательский опыт и что, если вы хотите использовать Kubectl Edit ?

Есть немного VIM FOO, вы можете использовать для редактирования секрета в строке.

kubectl edit secret some-secret

# navigate to the base64 encoded secret
# place your cursor on the space between the ":"
# and the first character of the secret
# hit `r ` this replaces the space
# with a new line

# move your cursor down one line to the secret
# in the command prompt `:. ! base64 -D`

# Edit your secret

# in the command prompt `:. ! base64`
# if your secret is multiline you can 
# use `:, ! base64`
# or you can highlight the lines in visual
# mode and use `:! base64`

# Join the lines by moving back up the secret key
# and hitting `J`

# Then write quit `:wq`
# you should see this as output
# `secret/some-secret edited`

И если вы хотите редактировать многослойный секрет, скажем, тот, который был создан из файла. А не Base64 Кодирование текущей строки с использованием : Вы можете использовать ряд линий номеров : 13,84! Base64 И вы будете кодировать все эти линии вместе включить строку 84.

редактировать: Добавлена информация о многоуровневых секретах

Обновлять

Я хотел добавить еще один совет здесь — Pesky New Lines.

Если вы редактируете секрет, и вы используете Отказ Действительно Base64. Вы закончите новой персонаж в конце вашего секрета. Если это нормально … cool, если нет, вы можете использовать TR очистить его

. ! tr -d '\n' | base64

Оригинал: «https://dev.to/focusedlabs/editing-kubernetes-secrets-inline-44f7»