Size: a a a

Kubernetes — русскоговорящее сообщество

2021 March 30

GG

George Gaál in Kubernetes — русскоговорящее сообщество
Dmitry Sergeev
ну или добавить новый ип адрес в сертификат https://blog.scottlowe.org/2019/07/30/adding-a-name-to-kubernetes-api-server-certificate/ (если у тебя kubeadm)
утащил к себе
источник

G

Ghost in Kubernetes — русскоговорящее сообщество
Dmitry Sergeev
/etc/hosts
new ip address kubernetes
Ну уж тогда для полного эффекта спрошу
А это чем поможет?
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Ghost
Ну уж тогда для полного эффекта спрошу
А это чем поможет?
по дефолту в сертификате есть DNS "kubernetes". На любом клиенте который будет резолвить "kubernetes" => твой новый ip apiserver, будет работать коннект с apiserver
источник

G

Ghost in Kubernetes — русскоговорящее сообщество
Dmitry Sergeev
по дефолту в сертификате есть DNS "kubernetes". На любом клиенте который будет резолвить "kubernetes" => твой новый ip apiserver, будет работать коннект с apiserver
Вот спасибо. Теперь пойду изучать хардвэй
источник

L

Lucky SB in Kubernetes — русскоговорящее сообщество
источник

S

Sergey in Kubernetes — русскоговорящее сообщество
источник

VP

Vitaly Parade in Kubernetes — русскоговорящее сообщество
Ребятушки, подскажите кто как деплоит новую версию приложения и при этом поддерживается принцип infrastructure as a code

у меня kustomize используется, в одном репозитории описано все приложения для всех environment, но вот когда собирается новая версия приложения, она обновляется просто обновлением имеджа в кубере
и получается репозиторий с kustomize как бы всегда устаревает по версии имеджа
источник

k

kvaps in Kubernetes — русскоговорящее сообщество
Vitaly Parade
Ребятушки, подскажите кто как деплоит новую версию приложения и при этом поддерживается принцип infrastructure as a code

у меня kustomize используется, в одном репозитории описано все приложения для всех environment, но вот когда собирается новая версия приложения, она обновляется просто обновлением имеджа в кубере
и получается репозиторий с kustomize как бы всегда устаревает по версии имеджа
Придерживаюсь следующей практики:

Отдельно происходит релиз дистрибутива приложения с docker-имаджами и helm-чартом конкретной версии.

И отдельный репо для деплоя этого приложения в кластер, а то и в несколько, где описанны все параметры специфичные для конкретного энвайромента😉
источник

VP

Vitaly Parade in Kubernetes — русскоговорящее сообщество
kvaps
Придерживаюсь следующей практики:

Отдельно происходит релиз дистрибутива приложения с docker-имаджами и helm-чартом конкретной версии.

И отдельный репо для деплоя этого приложения в кластер, а то и в несколько, где описанны все параметры специфичные для конкретного энвайромента😉
тоесть у тебя следующий пайплайн при обновлении кода
- сборка и регистрация имеджа
- сборка и регистрация helm chart
-  деплой нового хелм чарта ?
источник

c

citius in Kubernetes — русскоговорящее сообщество
Народ, а кто с dex-k8s-auth ковырялся, подскажите плз.
Установил сам Dex, связал с LDAP-ом, все работает нормально, example-app авторизуется, показывает группы, все ок.

далее деплою в куб dex-k8s-authenticator, его связываю с настроенным раннее Dex-ом, для kube-api прописываю oidc ключи как в доке.
Тут проблема в том, что это managed кластер Scaleway, и к kube-api у меня доступа нет, ни к логам, ни к процессам.
Но поскольку терраформом все заезжает, предполагаю что должно работать.

Далее, браузером иду на опубликованный dex-k8s-authenticator, успешно авторизуюсь, он корректно генерит мне kubeconfig.

Проблема только в том, что с этим конфигом не пускает сам куб, с ошибкой "error: You must be logged in to the server (Unauthorized)”.
Повторяюсь, к логам kube-api доступа у меня нет.

Чисто логически проблема может быть с тем, что kube-api таки не получил OIDC параметры, или это прявлялось бы по другому?
источник

k

kvaps in Kubernetes — русскоговорящее сообщество
Vitaly Parade
тоесть у тебя следующий пайплайн при обновлении кода
- сборка и регистрация имеджа
- сборка и регистрация helm chart
-  деплой нового хелм чарта ?
Ну у нас схема ещё далека от идеала, так что опишу к чему стремлюсь:

В одном репо ведётся разработка приложения, пайплайн там такой (стреляет на создание тэга):
- юнит-тесты
- сборка и пуш докер-имаджа
- сборка и пуш helm-чарта
- возможно деплой в тестовый кластер и запуск интеграционные тестов
- создание релиза

Отдельный репо для деплоя в кластер.
Пайплайн в принципе не нужен, т.к. можно воспользоваться какой-нибудь GitOps-тулзой: ArgoCD или FluxCD.
Стреляет при пуше в master или в ветку конуретного окружения staging / production.
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
citius
Народ, а кто с dex-k8s-auth ковырялся, подскажите плз.
Установил сам Dex, связал с LDAP-ом, все работает нормально, example-app авторизуется, показывает группы, все ок.

далее деплою в куб dex-k8s-authenticator, его связываю с настроенным раннее Dex-ом, для kube-api прописываю oidc ключи как в доке.
Тут проблема в том, что это managed кластер Scaleway, и к kube-api у меня доступа нет, ни к логам, ни к процессам.
Но поскольку терраформом все заезжает, предполагаю что должно работать.

Далее, браузером иду на опубликованный dex-k8s-authenticator, успешно авторизуюсь, он корректно генерит мне kubeconfig.

Проблема только в том, что с этим конфигом не пускает сам куб, с ошибкой "error: You must be logged in to the server (Unauthorized)”.
Повторяюсь, к логам kube-api доступа у меня нет.

Чисто логически проблема может быть с тем, что kube-api таки не получил OIDC параметры, или это прявлялось бы по другому?
Ты кьюб апи параметры менял?
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
Через терраформ
источник

c

citius in Kubernetes — русскоговорящее сообщество
George Gaál
Ты кьюб апи параметры менял?
да, я ж написал.
В терраформе это выглядит как

resource "scaleway_k8s_cluster" "john" {
...
 open_id_connect_config {
   issuer_url      = "https://dex.domain.com”
   client_id       = "k8s-scaleway-staging”
   username_claim  = "email"
   groups_claim    = ["groups"]
 }
}
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
citius
да, я ж написал.
В терраформе это выглядит как

resource "scaleway_k8s_cluster" "john" {
...
 open_id_connect_config {
   issuer_url      = "https://dex.domain.com”
   client_id       = "k8s-scaleway-staging”
   username_claim  = "email"
   groups_claim    = ["groups"]
 }
}
Что-то не то
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
Oidc привязка к kubernetes api выглядит по-другому, не ?
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
Или может так, но параметры точно верные? Посмотри на подход banzai-cloud - они вообще хитро сделали
источник

GG

George Gaál in Kubernetes — русскоговорящее сообщество
Объединили dex и сервисные учетки (они по сути он деманд создаются)
источник

ИО

Игорь Орлов... in Kubernetes — русскоговорящее сообщество
Robert'); DROP TABLE Students;--
https://kodekloud.com/p/learning-path
Вот здесь неплохая серия практических курсов на основе Katakoda, в дополнение к чтиву
у них сейчас скидка 50% на beta.kodekloud. Если нужен купон, пишите
источник

c

citius in Kubernetes — русскоговорящее сообщество
George Gaál
Oidc привязка к kubernetes api выглядит по-другому, не ?
ну в доке это выглядит так во всяком случае.
источник