Lex
ааа, ну если просто — мы будем запускать недоверенный код в k8s и нам нужна изоляция сетевая на уровне кубера, как-то так
Lex
ну в кросс az да, в рамках одного сабнета нет
Lex
но надо вырубать к чертям src/dst check
Lex
а для asg это не так просто
Dmytro
мне из последнего хашикорповский hcl нравится, не без косяков, но все таки
вот только туда завезли тоже много всего внезапно https://www.hashicorp.com/blog/terraform-0-1-2-preview как же так?
Lex
вот только туда завезли тоже много всего внезапно https://www.hashicorp.com/blog/terraform-0-1-2-preview как же так?
завезли то, чего реально не хватало, но от этого hcl не стал императивным языком, скорее добавили больше сахара, о котором Я упоминал в сообщении о dsl
Dmytro
а как жи версионность?
версионность чего? версионируй Lua код - в чем проблема?
Dmytro
и вот эти все выкрутасы тоже не императивны https://www.hashicorp.com/blog/hashicorp-terraform-0-12-preview-for-and-for-each ?
Lex
эм, ну вот даже не знаю, что сказать, но попробую: переменных нет, значения менять нельзя, есть входные данные полученные через variable, но не смотря на название это не переменные наличие синтаксического сахара для работы с итерируемыми данными не делает декларативный язык императивным, практически все, что добавили можно было и раньше делать
Dmytro
динамические блоки и т.д.
Dmytro
раньше можно было динамические блоки делать?
Dmytro
в-общем, думаю мы снова не договоримся
Vadim
хотя, если динамические блоки позволят что-то вроде "дождаться Ready и деплоить второй компонент" тогда хорошо
Dmytro
уж лучше как по мне взять готовый язык который юзается в куче инфарструктурных программ чем пилить свой корявый велосипед как хашикорп (да еще и сертификацию по этому поделию делать)
Vadim
(что уже давно есть в ansible / chef / человеческих языках программирования)
Vadim
это скорее на зависымых ресурсах
ну да, идея та же в общем
Lex
ну давно есть, через null_resource
Lex
но костыли, да
Vadim
опять же вопрос "зачем нам тогда хелм если ямлы совать можно из практически всего"
Vadim
видимо ответ будет "Готовые чарты, но теперь со вкусом плохо протестированного динамического кода без отладчика"
Lex
уж лучше как по мне взять готовый язык который юзается в куче инфарструктурных программ чем пилить свой корявый велосипед как хашикорп (да еще и сертификацию по этому поделию делать)
потому, что он легко эмбедится, но все равно, lua бедный язык на батарейки, достаточно многословный и потом читать эти простыни императивного кода, а особенно дебажить их будет то еще счастье
Lex
декларативщине даже с for и for-each можно научить и обезьяну, что подтверждают коллеги которые в первый же день изучения начали PR слать к коду инфраструктуры, с lua будет не так весело :(
Lex
а зная любовь людей к решению несуществующих проблем, написанию "универсального" кода и оверинжинирингу мне страшно представить чарты для нового helm на lua
Lex
и еще, тот же hcl отлично статически анализируется, там жесткая схема и вот это вот все, что будет с кастомным lua котом представить сложно
Lex
и да, с lua Я знаком не по наслышке, приходилось работать как с embeded языком во многих сферах, не скажу, что все плохо но как по мне для helm все таки не очень оправданно
blkmrkt
Staging и production стоит разделять неймспейсами? Базовый конфигсет у них одинаковый, а остальное все то же самое.
blkmrkt
И еще настроил ClusterIssuer: kind: ClusterIssuer metadata: name: letsencrypt И Certificate: kind: Certificate metadata: name: website-tld namespace: default spec: secretName: website-tld-tls Серты появляются в default неймспейсе, и их не видят ингрессы которые я создаю в неймспейсах staging и production. Как быть? Создавать Certificate для каждого неймспейса отдельно теми же доменами? Боюсь что letsencrypt опять задрочится и прикажет ждать неделю.
Andrey
хотя если много, LE все равно задрочится)
blkmrkt
а если доменом третьего уровня разделить? ну тип dev.company.com/prod.company.com образно говоря
Эээ, это как? Все равно в LE запросы будут приходить Х на количество Certificates, не? Как бы их глобально создавать и чтоб не дублировать?
blkmrkt
Еще в Rancher v2 наблюдаю такое на 3й инсталляции за неделю, что серты отображаются криво без приватного ключа. Не отображаются TLD и дата. В Ранчере баг? Экспорт в yaml - все на месте.
blkmrkt
blkmrkt
blkmrkt
Ни у кого нет рабочего конфига CI, чтоб gitlab-runner реагировал на пуш, собирал докер имаж, пушил его в регистри, и заставлял поды в кластере апдейтиться?
Denis
Ни у кого нет рабочего конфига CI, чтоб gitlab-runner реагировал на пуш, собирал докер имаж, пушил его в регистри, и заставлял поды в кластере апдейтиться?
Вообще gitlab CI при каждом пуше будет запускать CI и собирать тебе image, пушить его, а дальше как твоей фантазии угодно. Можешь идти в k8s и делать деплой при помощи kubectl или helm
blkmrkt
Вообще gitlab CI при каждом пуше будет запускать CI и собирать тебе image, пушить его, а дальше как твоей фантазии угодно. Можешь идти в k8s и делать деплой при помощи kubectl или helm
А запустить rolling update внутри куба можно только при помощи kubectl? Изнутри кластера никак? Мой раннер уже там, правда в отдельном неймспейсе.
Denis
Приветсвую! Подскажите. К примеру у меня есть есть 3 ноды воркера в кластере, и один deployment с 3 репликами. Не обязательно же использовать podAntiAffinity, чтобы реплики этого деплоймента были рассажены по разным подам? Шедуллер будет их планировать по разным в воркерам всегда как я понимаю, при наличии равного количевства реплик и рабочих воркеров?
Denis
А запустить rolling update внутри куба можно только при помощи kubectl? Изнутри кластера никак? Мой раннер уже там, правда в отдельном неймспейсе.
kubectl или helm, может еще какие инструменты есть. Интегрируешь Gitlab с k8s к примеру, создаешь в k8s для gitlab-ci сервис аккаунт с нужным RBAC и все. Если я правильно понял твой вопрос
Denis
А запустить rolling update внутри куба можно только при помощи kubectl? Изнутри кластера никак? Мой раннер уже там, правда в отдельном неймспейсе.
Про другие возможности честно говоря не знаю. Может кто нибуть более тут осведомлен по этой тематике.
Denis
Поспрашивай еще
blkmrkt
Про другие возможности честно говоря не знаю. Может кто нибуть более тут осведомлен по этой тематике.
Да уже нагуглил, вся молодежь так делает. УРЛ и ключ куба нужно в раннер пробросить
Denis
Да уже нагуглил, вся молодежь так делает. УРЛ и ключ куба нужно в раннер пробросить
кто-то просто использует креденшилы k8s и авторизует kubectl снаружи
Vadim
А можно с этого места подробнее?
https://github.com/openshift/ci-operator, но детали я сам еще плохо понимаю
Etki
Staging и production стоит разделять неймспейсами? Базовый конфигсет у них одинаковый, а остальное все то же самое.
лучше кластерами, чтобы можно было завалить стейджинг, не беспокоясь о проде
Andrey
https://github.com/openshift/ci-operator, но детали я сам еще плохо понимаю
Чет доков пшик, как оно вообще должно работать?
Anton
А liveness probe сработает если нода слегла?
Для ноды таймауты проверок тоже можно крутить
cent
Миникуб?
https://youtu.be/6ZRphF0wGAM
Juriy
https://youtu.be/6ZRphF0wGAM
Че прямо на хосте?? Без виртуалок?
I
Всем привет - расскажите плиз кто юзал к8с плагин для терраформ? Какие плюсы и минусы, есть ограничения?
Igor
че за плагин?
I
Kubernetes provider
Andrey
всё в доках есть
I
Что значит куцый?
Andrey
малофункциональный
Rustam
А кто как автоматизирует раздачу разных прав с ключами доступа?
Михаил
Я не разделяю.
Обновлять будешь сразу продовый кластер?
Rustam
Куда?
в кубер кластер для разработчиков, разграничить права по организационным командам на неймспейс(ы)
Rustam
у меня есть идея: напилить crd и демона который будет по этим crd рисовать серты и права. Но вдруг такое уже есть
Михаил
Да
Ну успехов
Juriy
Ну успехов
Благодарствую
I
весьма куцый плагин, там мало что есть
Ребята, поделитесь опытом пожалуйста, кто ЕЩЕ использовал терраформ для k8s?
Dmytro
да он же почти ничего не умеет, как же его использовать
Andrey
что значит поделитесь опытом? мозги пересадить? есть конкретный вопрос - задавай
Dmytro
в кубер кластер для разработчиков, разграничить права по организационным командам на неймспейс(ы)
обычно делают через какой-то auth provider, например логиниться через гугл и потом у юзера будет роль в каком-то неймспейсе или роль на весь кластер с определенными правами