Sergei
это я сейчас страдаю и жалуюсь, что k8s c v6 пока дружит условно
Maksim
Если я к своим сетевикам пойду с v6, то бежать отних я буду быстро))
Maksim
и уворачиваться от разных снарядов)))
Max
Плохо
Sergei
нормальные сетевики примут тебя с распростертыми и скажут "давно бы"
Sergei
а потом скажут "давай нахуй выпилим v4"
Maksim
Тут столько нужно выпилить, что моим внукам хватит работы по перестройки сети
Maksim
я на чуточку в крупнешей российском компании работаю)
Maksim
тут одного оборудования нужно закуптьи на 1/3 ВВП страны
Maksim
Зелёной такой
Ivan
а потом скажут "давай нахуй выпилим v4"
А на выходе 6to4 запилить, ага
Maksim
в каждом городе по дцать штук
Max
А, где карту получали, туда и идите
Maksim
Ага
Sergei
я на чуточку в крупнешей российском компании работаю)
действительно, ведь никто другой не умеет ничего строить.
Sergei
а сбрф это лидер индустрии
Sergei
ничего личного, но это не очень аргумент.
Maksim
Я ен про стороить) я про перестраивать
Max
А сколько своих дц у сбера?
Sergei
если вы до сих пор на v4 и у вас нет адской боли - значит вы не такие уж и крупные
Maksim
строить с нуля проще, чем переделывать эту чуртову фигню
Maksim
чёт нет
Сарказм? Не не слышали)
Max
Ну так интересно, про крупнейшее ИТ в России послушать)
Max
Ну ок ок)
Max
Я ещё слышал про эпический конфиг нджинкс на фронте сбер онлайна)
Maksim
Но сети тут не мало) а заморочек ещё больше
Sergei
Ну так интересно, про крупнейшее ИТ в России послушать)
https://events.yandex.ru/lib/talks/380/ https://events.yandex.ru/lib/talks/2391/
Max
На 300 с лишним локейшнов, с копипастой
Sergei
copypaste - ваш друг
Max
ничего страшного
Нене, соль не в количестве
Sergei
Это я слушал уже)
https://code.facebook.com/posts/360346274145943/introducing-data-center-fabric-the-next-generation-facebook-data-center-network/
Sergei
оно правда не про ipv6, но без ipv6 такие сети становится тяжеловато делать. собственно, фейсбук уехал.
Роман
Запустить нужные сервисы на новой ноде и переписать конфиги у кублетов)
Вот, сгенерил я сертификаты на одной из нод (назовём её node-test), используя ca.crt. Подкинул манифесты с мастера на эту ноду. В итоге, смотрю get pods с мастера - реплики etcd-node-test, kube-apiserver-node-test, kube-controller-node-test и kube-scheduler-node-test. Смотрю get на node-test - ничего нет, только svc/kubernetes. Подтолкните в нужном направлении.
Maksim
nodeSelector?
Роман
nodeSelector?
У них нет nodeSelector
Maksim
а дай деплой одно из
Роман
а дай деплой одно из
Они, я так понял, из манифестов создаются. Сейчас.
Maksim
ты же из kubeadm разворачивал усё?
Роман
apiVersion: v1 kind: Pod metadata: annotations: scheduler.alpha.kubernetes.io/critical-pod: "" creationTimestamp: null labels: component: etcd tier: control-plane name: etcd namespace: kube-system spec: containers: - command: - etcd - —listen-client-urls=http://127.0.0.1:2379 - —advertise-client-urls=http://127.0.0.1:2379 - —data-dir=/var/lib/etcd image: gcr.io/google_containers/etcd-amd64:3.0.17 livenessProbe: failureThreshold: 8 httpGet: host: 127.0.0.1 path: /health port: 2379 scheme: HTTP initialDelaySeconds: 15 timeoutSeconds: 15 name: etcd resources: {} volumeMounts: - mountPath: /etc/ssl/certs name: certs - mountPath: /var/lib/etcd name: etcd - mountPath: /etc/kubernetes name: k8s readOnly: true hostNetwork: true securityContext: seLinuxOptions: type: spc_t volumes: - hostPath: path: /etc/ssl/certs name: certs - hostPath: path: /var/lib/etcd name: etcd - hostPath: path: /etc/kubernetes name: k8s status: {}
Maksim
failureThreshold: 8 Ого)
Maksim
поробуй как раз nodeSelector добавить...
Maksim
но меня не покидает чувству курицы и Яйца
Maksim
etcd это осное хранилище, без которого кубер не воркает
Maksim
но оно живёт в самом кубере)
Maksim
- hostPath: path: /var/lib/etcd - Эти данные перенёс?
Роман
Ого. Точно. Сейчас попробую...
Maksim
скорее всего утебя всё упадёт..
Maksim
и не сработает. там же схема что они все пишут и читают из etcd
𝚔𝚟𝚊𝚙𝚜
внезапно его кстати можно вывесить на интерфейсы и это начнет работать
@spuzirev, сорри, не так тебя понял, то есть ты имел ввиду вручную вывесить на интерфейс? - или kubernetes это умеет сам делать?
Sergei
@spuzirev, сорри, не так тебя понял, то есть ты имел ввиду вручную вывесить на интерфейс? - или kubernetes это умеет сам делать?
вручную конечно. и не просто вывесить, но еще и обеспечить роутинг этого трафика к месту, где вывесил.
Sergei
это нетривиальный кейс, не слушай меня
𝚔𝚟𝚊𝚙𝚜
у меня как раз такой, все хосты в одном L2-сегменте
Maksim
у меня как раз такой, все хосты в одном L2-сегменте
тогда при разворачивания можешь написать это l2 сегмент как сеть сервисов
Maksim
и нужным тебе сервисам назначать ClusterIP=IP на интерфейсе
Maksim
правда вопрос как работает таблица маршрутизации...когда IP вести и в DNAT таблице и в Route таблицы
Maksim
что там в ip route ) и адресации пакета в ядре оси)
Maksim
но это проблема внутреннего трафика не внешнего, внешнему всё ок
𝚔𝚟𝚊𝚙𝚜
думаю все будет прекрасно работать, сейчас реализовал это с помощью pipework, но хочу по нормальному переделать
𝚔𝚟𝚊𝚙𝚜
то есть когда контейнер стартует, на хосте создается veth интерфейс, который одним концом в бридж - другим в контейнер
𝚔𝚟𝚊𝚙𝚜
и ip на него вешается
Maksim
не не
Maksim
контейнер стратует в своей overlay сети
Maksim
а вот сервис, что пересылает трафик на поды, уже в публичной сети
Maksim
или через cni вешать сеть на поды, и давать им адреса, то имхо совсем грусто из-за кол-ва адрессов
𝚔𝚟𝚊𝚙𝚜
а вот сервис, что пересылает трафик на поды, уже в публичной сети
это как раз то, что я сейчас задумал, в рамках изучения kubernetes :)
𝚔𝚟𝚊𝚙𝚜
thank you guys!
Maksim
thank you guys!
всегда пожайлуста
Роман
и не сработает. там же схема что они все пишут и читают из etcd
Да. Не сработало. Придётся поднимать кластер по другому...