Andrey
если нужна, то нужно уметь этот внешний ip двигать при падении узла, этим ingress не занимается
G72K
G72K
Тпкже У многих в сетях есть железные балансироващики
𝚔𝚟𝚊𝚙𝚜
А я все romana-vip для таких целей ненарадуюсь :)
𝚔𝚟𝚊𝚙𝚜
тогда, имхо, romana-vip - самое простое решение. но нужна сеть тоже romana
Alexander
𝚔𝚟𝚊𝚙𝚜
но по сути обычным VRRP можно обойтись
𝚔𝚟𝚊𝚙𝚜
только романа будет двигать айпишник ближе к сервису - а vrrp не будет
Andrey
𝚔𝚟𝚊𝚙𝚜
нет, metallb поддерживается но не обязателен
Andrey
всё время путаюсь в этих терминах l2 l3
Andrey
G72K
у меня дежавю, мне кажется это уже обсуждалось :)
Это вообще тема этого года. Видимо kubespray дошел до состояния что просто работает и вопросов по установке кластера почти не осталось. Зато появились "ну,есть у меня кластер, что дальше то?" :)
G72K
Andrey
Ivan
Дяди, я тут на кубер напал, а он не поддаётся. Поможите.
Решил пойти по хардкору и понять, что там внутри хоть как-то с https://github.com/kelseyhightower/kubernetes-the-hard-way/
Но на сетях встал. https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/11-pod-network-routes.md#routes
Разница в том, что в гайде GCE, а у меня baremetal, flat network 192.168.0.0/24 скажем. А там он какие-то маршруты на виртуальные сети прямо в VPC пишет и я не понимаю как это в обычной сети разложить.
Alexander
Andrey
гайд не GCE, он и для baremetal пойдёт
𝚔𝚟𝚊𝚙𝚜
всё время путаюсь в этих терминах l2 l3
для romana-vip требуется l2 сеть, т.к. он тупо вывешивает external-ip на физический интерфейс, на ноде что ближе к сервису, никаких роутов он не прописывает
Alexander
Ребята ещё проблемка, есть gitlab и интеграция с k8s, что принципиально даёт helm для деплоя или можно обойтись без него?
Andrey
"While GCP is used for basic infrastructure requirements the lessons learned in this tutorial can be applied to other platforms"
Andrey
тут как-то не любят helm. хотя альтернатив ему я не вижу.
G72K
Ivan
Alexander
Alexander
:)
G72K
𝚔𝚟𝚊𝚙𝚜
Народ, а роли для чего-то конкретного придумали или это просто label который через kubectl get nodes видно?
Andrey
Alexander
Хочется сделать каконично, но обычно это путь из костылей и абстракций, что довольно раздражает
Andrey
да, k8s бесит. Я первый раз недели две втыкал
Ivan
ну надо роутинг настроить. Просто у вас это по другому будет
Класс, я это понял. Можете подсказать как именно? Потому что я не понимаю как сделать так, чтобы в LAN 192.168.0.0/24 вдруг начали резолвится маршруты для подсети 10.200.0.0/16. Это же виртуальная сеть - мне что vlan'ы настраивать?
Etki
С ямлом-то что не так? Наоборот очень клево и позволяет без особых проблем автоматизирвоать генерацию ресурсов
Andrey
G72K
Alexander
Alexander
Ну скажем спасибо хоть что не XML :)
G72K
Alexander
Вот например есть сервер k8s-master 192.168.1.1, есть воркеры, есть запушенный сервис и два инсенса, на сервисе nodePot : 30000, я могу из вне зайти на 192.168.1.1:3000 и всё ОК, можно ли к сервису прикрутить другой ip, ну например 192.168.1.200?
Alexander
Сори, я просто нуб пока:)
Andrew
Жаль Helm не язык
Если очень надо - можно тем же питоном генерить все эти ямлики, проблема что ли?
𝚔𝚟𝚊𝚙𝚜
или bash'ем 😊
Andrew
Ну башем жестковато ))
𝚔𝚟𝚊𝚙𝚜
да норм все, для простых целей его вполне хватает :)
https://github.com/kvaps/kube-lustre/blob/master/dockerfiles/kube-lustre-configurator/drbd.yaml
Alexander
Ау :)
Alexey
𝚔𝚟𝚊𝚙𝚜
Alexander
𝚔𝚟𝚊𝚙𝚜
о том как повесить этот IP на интерфейс одной из нод - это то о чем нужно позаботиться тебе
𝚔𝚟𝚊𝚙𝚜
кстати прикольная штука kube-router - он все external-ip и cluster-ip вешает на специальный dummy-интерфейс, в итоге, если есть правила роутинга, то все эти айпишники оказываеются доступны и снаружи кластера
𝚔𝚟𝚊𝚙𝚜
но когда на запрос arp who-has ты получаешь 100500 ответов, по одному от каждой ноды - для меня показалось дикостью)
𝚔𝚟𝚊𝚙𝚜
не зря оно еще альфа, но я уверен: за kube-router будующее...
Alexey
Eugene
Пытаюсь создать ридонли кластервайд аккаунт для дашборда:
kubectl -n kube-system create serviceaccount observer
kubectl create clusterrolebinding observer --clusterrole=view --serviceaccount=kube-system:observer
kubectl -n kube-system describe secret observer-token-ljsdw
захожу с полученным токеном и никуда нет доступа.
Таким же образом созданный админ все видит и имеет доступы соответствующие привязанной к нему кластерной роли - cluster-admin.
вот ямлы обеих clusterrolebinding - https://pastebin.com/xbnEPvwr
Andrey
сравнивайте роли
Eugene
ну учитывая, что роль view также встроенная как и админ, то я не знаю что там еще смотреть, смотрел, вроде должна читать все. Я ее не менял
Eugene
вот она
https://pastebin.com/riP6i76p
Andrey
попробуйте с этим аккаунтом kubectl get pods какой-нибудь сделать
Vadim
Eugene
может в самой роли что-то, буду с нуля писать тестовую, жаль думал просто заюзать существующую
Eugene
Eugene
все что есть https://pastebin.com/T64bk6Wn
Vadim
Eugene
все-таки проблема не в самом кубе, а в настройке дашборда.
Из kubectl c тем же токеном получает ровно то, что ему разрешено в конфиге. А дашборд ругается на права.
Eugene
2018/04/05 12:25:40 Getting list of namespaces
2018/04/05 12:25:40 Non-critical error occurred during resource retrieval: namespaces is forbidden: User "system:serviceaccount:kube-system:reader-tester" cannot list namespaces at the cluster scope
Eugene
и ведь правильное имя сервисаккаунта пишет....
Aleksey
Чятик, подскажи, что могло пойти не так? Есть стейтфул сет со scylladb. Хипстер и встроенный хендлер сциллы отдают 0 по метрике cpu utilisation, хотя топ показывает значительную нагрузку. Сцилла запущена от рута. Почему так?
Vadim