George
кривоват. Ну, и есть альтернативы. Выше по топику можно найти. kubeadm, например. Но в общем - все на любителя
Pavel
Pavel
Metal3 такой сырой что у меня до сих пор руки мокрые
Sergey
George
ну тем более. зачем лишние обертки
George
George
я просто не в курсе
Pavel
Это бареметал провайдер для cluster-api
George
хз
Sergey
При чем, у меня такой есть, и меня ипет его поддерживать
Sergey
Кубспрей далеко не квистисенция говна
George
я видел вообще сольтовые стейты для разворачивания куба. Так что можно сказать повидал все
George
в общем, все жесть и не покрывает все кейсы. И на фоне этого инсталлер опеншифта выглядит прям няшкой
Sergey
George
свои писать == писать под свою инфру, без необходимости тащить все возможные конфигурации
George
в результате - у соседа это может не взлететь
Pavel
Кубеспрей норм
Pavel
Тегами если научиться пользоваться
George
я бы предложил не вдаваться в холивар. Истио туда накатывается - да, все, вопрос закрыт
Sergey
Так что из разреза вендорлока и попытки сделать максимально универсально кубспрей наименьшее зло
George
допускаю
Sergey
Называя какое-то решение говном, уже провоцируете холивар, а потом, в неудобной позиции - ой все
Sergey
Не надо так и не будет пустого бурления
Vadim
Vadim
То есть ему четыре месяца, понятно что сырой, но что именно не завелось?
Stanislav
https://www.ascent24.io/kubernetes/the-battle-of-kubernetes/
Anonymous
Anonymous
Dmitry
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
Mikhail [azalio]
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
Последний вариант выглядит реалистичным в вашей ситуации. Используйте NodePort (ingress nginx)
ᴅⁱᵐⁱᴅʳ0ˡ
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
Сделай вип ип на нодах
Игорь
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
там же есть vSwitch, в который можно маршрутизировать публичную /29
Just a baka
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
Используют, хотя и изолировано (квм). Меняем в деплое kind ингресса на nodeport и полетели. Спереди nginx обычный (вместо metallb, привыкли, нам удобно).
Dmitry
там же есть vSwitch, в который можно маршрутизировать публичную /29
Да вроде можно. Но мне механика все равно не очень понятна. Как metallb сможет на каку-то ноду назначить один из этих адресов, да и переключать эти адреса можно же подсетями а не по отдельности , возможно мне не хватает каких-то сетевых знаний или понимания как работает metallb.
Dmitry
Игорь
Dmitry
Just a baka
Just a baka
И вот тут как раз хорошо заходит нормальная локалка))
Dmitry
Понятно. То есть у вас поды ингресса крутяться на определенных нодах, и на этих нодах больше ничего нет.
Я просто чего боюсь. Есть приложения которые могут забить весь трафик, между балансером и бэком. И если этот трафик будет ходить по большему количеству узлов, тем хуже. Может я зря боюсь конечно.
Пугает ситуация, когда один нагруженный по трафику под с бэком прилетит на ноду, с другим нагруженным подом по трафику. А в случае с nginx который стоит перед ингресами, могут возникнуть как проблемы с сетью между nginx и ингресом так и между ингресами и нодами. И весь кластер рухнет.
Terry
Just a baka
George
Just a baka
P.S. если прям совсем жара, можно спец ноды под ингрессы жирных сервисов поднять и настроить внешний балансер гнать запросы до этих сервисов только туда
George
Но ещё надо учитывать, что коллега захочет наверняка rook, после чего коннект между кластера ляжет совсем
Dmitry
Понял вас. Спасибо за помощь всем.
В принципе все варианты, о которых я писал жизнеспособные
1) metallb + vswitch и публичные адреса (я правда пока еще не понял как это будет работать, нужно разобраться)
2) nginx ingress + nodeport - выбираем группу узлов условных балансировщиков и вешаем туда только nginx ингресы
3) внешний балансировщик(или несколько) - которые направля.n трафик на все ингресы кластера.
Lucky SB
Выделить пару узлов под ингресс кнтрлеры. Запцскать их с хостнетворк тру
Lucky SB
Pacemaker озадачить менять файловер ип хетцнера
Lucky SB
Металлб в топку
Just a baka
Lucky SB
Два фейловера. 50% трафика будет недоступно минуту
Lucky SB
Или за клоудфларе прячьтесь
Dmitry
Выделить пару узлов под ингресс кнтрлеры. Запцскать их с хостнетворк тру
А вот по поводу host network - пишут нерекомендуется так как не безопасно. Что имеется в виду? Что страшного в том, что ingress будет получать трафик через внешнюю сеть? Ведь в этом по сути его задача и состоит. Или это имеется в виду вообще в целом про любые поды, которые не нужно светить наружу, тогда странно что они это пишут про ingress controller.
Lucky SB
Dmitry
Интересно, надо будет взглянуть. Спасибо за наводки, очень помогли.
George
George
А ещё клаудфлейр отличная тема для днс хостинга
Grigorii
Прошу прощения за нубский вопрос, возможно здесь не принято их задавать. В таком случае сразу его удалю.
Кто-нибудь использует кубернетес на железе?
Такой случай: арендованное железо, хостинг Hetzner, доступа к свитчам и роутерам соотвесвтенно нет, и возможности такой не дают.
Кластер поднять то поднял, некоторые мелкие приложения из compose файлов трансформировал в абстракции кубернетес и задеплоил.
А вот как на них трафик пустить, это не очень понятно. Знаю про metalb, но там либо вариант с BGP на роутерах к которым доступа нет, либо L2 сеть которой строго говоря тоже нет (есть VLAN) между хостами, и как я понял metallb должен иметь какой-то пул адресов, которые назначает на определенные ноды. В принципе закупить можно адресов, но для их переключения требуется обращаться в API hetzner, и я не могу понять, могу ли я кастомизировать metallb чтобы он так делал.
Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать, которая смотрит в API kubernetes и узнает для какого приложения на какие ноды направлять трафик, но мне кажется должно быть что-то по проще. Я думал с ingerss nginx могу сделать что-то подобное. Например обозначить какую-то группу нод - (ноды для ingerss), которые будут смотреть наружу портами 80, 443 и направлять трафик на нужные поды, но так и не понял, можно ли это сделать вообще.
Направьте пожалуйста в правильную ли я сторону вообще копаю.
У меня тоже железки в хецнере. Решил пока на их облаке поднять несколько edge серверов и на них поставить nginx-ingress, в разных локациях. 2 месяца пока, аварий не было.
>Подумываю nginx на отдельном хосте поднять, и тулзу к нему написать,
Просто возьми несколько инстансов в облаке, выдай им taintы(чтобы только nginx ingress мог там хоститься) и хельмом поставь nginx-ingress, он будет слушать 80/443 порты на этих инстансах и проксировать трафик куда надо.
Vadim
народ а после создания ноды, если виртуалке больше ресурсов дать, кубер же не увидит, надо пересоздавать ноду?
George
Vadim
увидит?, не знаю это же вопрос
Vadim
тут в чате вроде кто то писал, поэтому запомнил
George
по идее должен
George
хотя я бы проверил на практике )
Pavel
Должен, в опеншифте все взлетело
Vadim
Ок , спасибо
inqfen
Я менял, все ок видит
inqfen
Емнип воркер мастеру кроме подов на нем докладывается о ресурсах вообще/занятых
inqfen
Чтобы replication controller мог планировать где поды поднимать