Алексей
пакеты идут на lvs балансировщик
с него на поды
с подов напрямую к клиенту
Алексей
сеть l2
Алексей
и внешка и внутренняя
𝚔𝚟𝚊𝚙𝚜
в L2-режиме меня смутило что на простой arp-запрос who-has, отвечают сразу все ноды кластера
𝚔𝚟𝚊𝚙𝚜
у вас так же?
𝚔𝚟𝚊𝚙𝚜
или как ваш роутер узнает на какую ноду слать пакеты?
Алексей
сервисы висят на noarp интерфейсе это те которые внутренние
внешка выделенна в 3 машины, l2 только на них
собственно проблемы не вижу
Алексей
в общем то это более менее стантартный способ рабоы lvs
𝚔𝚟𝚊𝚙𝚜
Алексей у меня по умолчанию все ноды отвечали, у вас получается только три? - или что значит "внешка выделенна в 3 машины"? - просто arp работает там?
Алексей
если использую отдельный vip с маскарадингом то да
но я в основном использую tunneled режим, маскарадинг мой трафик не тянет
а в tunneled режиме vip и nodeip одно и тоже
𝚔𝚟𝚊𝚙𝚜
Очень интересно:)
У меня много IP-адрессов и много нод, нужно организовать несколько точек входа для каждого из них. Kube-router выглядит очень многообещающе но как разрулить эти точки входа в L2-режиме я так и не придумал, похоже arptables надо просто подкрутить
Алексей
vмного нод это сколько?
Andor
4-6
𝚔𝚟𝚊𝚙𝚜
ну пока 200
Алексей
а они что все должны торчать наружу?
𝚔𝚟𝚊𝚙𝚜
ну пока не так много
kubectl get pod --all-namespaces | wc -l
1626
Алексей
собственно lvs в режиме тунелирования или directrouting позволяет прокачивать очень много, 30 krp/s у меня через lvs спокойно пролазиет
Алексей
это на 4 нодах которые смотрят наружу
основная нагрузка идет на nginx/haproxy внутри
Алексей
в принципе хватило бы и одной ноды, но входящий канал не позволяет
𝚔𝚟𝚊𝚙𝚜
туннелинг это тот который:
--enable-overlay When enable-overlay set to true, IP-in-IP tunneling is used for pod-to-pod networking across nodes in different subnets. When set to false no tunneling is used and routing infrastrcture is expected to route traffic for pod-to-pod networking across nodes in different subnets (default true)?
Алексей
нет
Алексей
annotations:
kube-router.io/service.dsr: tunnel
Алексей
service.dsr грепни в документации
𝚔𝚟𝚊𝚙𝚜
спасиб!
Алексей
там без sysctl специфических не заведется, ну вернее зависит от того что дефолтом
Алексей
и от версии ядра
Алексей
ну и в принципе можно еще vrrp впилить тогда оно еще и внешние ip отказоустойчивыми сделает
𝚔𝚟𝚊𝚙𝚜
ага, то есть это тот самый новомодный Direct server return
𝚔𝚟𝚊𝚙𝚜
𝚔𝚟𝚊𝚙𝚜
но когда тестил kube-router, очень понравился своей нативностью и наличием DSR - его то я правда и не потестил тогда
Алексей
а почему ‘новомодный Direct server return’
я эту хрень юзал в 2005 году еще
Алексей
если не ошибаюсь по времени
Алексей
ну в 2008 точно
𝚔𝚟𝚊𝚙𝚜
потому что никто кроме kube-router больше не предоставляет эту функцию, везде по умолчанию предлагается только nat, в какой-то момент она меня очень заинтересовала, но до тестов пока так и не дошло
Siarhei
доброго дня, подскажите что дает реплика 3шт kube-dns (делаю по этой статье с 3-я мастерами) https://habr.com/post/358264/#othermaster
𝚔𝚟𝚊𝚙𝚜
сейчас используем romana и pipework для некоторых сервисов, который в принципе делает почти тоже самое. (ассигнит внешний ip в сетевой неймспейс пода), pipework - хочется выкинуть, но увы, вариантов пока особо нет.
Siarhei
на текщий момент 3 мастера все в статусе Ready, но потом предлагается kube-dns реплицировать до количества мастеров, и затем прописать количество apiserver-count 3 в манифесте kube-apiserver.yaml каждого мастера- я этот момент никак не поиму - что это дает?
𝚔𝚟𝚊𝚙𝚜
Siarhei
ох я невнимательный.. спс
𝚔𝚟𝚊𝚙𝚜
Алексей
pipework эт что?
Алексей
я немного не в трэнде, варюсь сам по себе и тенденции не отслеживаю
𝚔𝚟𝚊𝚙𝚜
эт древний скрипт, который позволяет в неймспейс контейнера прокидывать интерфейсы и ассигнить айпишники, прописывать роуты включая дефолтный и все такое
https://github.com/jpetazzo/pipework
𝚔𝚟𝚊𝚙𝚜
не рекомендуется к использованию, так как это НЕнативный способ сети в docker и k8s
Алексей
чет напоминает помесь bridge-utils + обвязку + всякую фигню
𝚔𝚟𝚊𝚙𝚜
так оно и есть
Алексей
у вас профиль сетевой нагрузки какой в основном?
Алексей
сервисы с высоким rps есть?
Алексей
насколько я понимаю использование iptables для сервисов с высоким rps это изначально тупик с костылями
высокий это от 5k rps в секунду на ноду
Алексей
запросов а не пакетов
Алексей
собственно поэтому я сразу начал плясать от ipvs
Алексей
тем более я его давно знаю и пользую
𝚔𝚟𝚊𝚙𝚜
сколько rps честно не знаю, но такие севисы точно есть, потеря призводительности - это одна из основных причин почему мы пробрасываем внешние интерфесы сразу в под, а не роутим средствами k8s
𝚔𝚟𝚊𝚙𝚜
но повторюсь, от этого очень хочется уйти
Алексей
ну боль понятна, скриптами обросли
𝚔𝚟𝚊𝚙𝚜
Не, скрипт то один, и запущен как демонсет, эт ваще не напрягает
𝚔𝚟𝚊𝚙𝚜
Не нравится то, что куб ничего не знает о том что происходит внутри контейнера и никак не отслеживает эти изменения
Sergey
Andrey
CRI-O ещё.
𝚔𝚟𝚊𝚙𝚜
Не понял, а это тут при чем?
𝚔𝚟𝚊𝚙𝚜
Разговор был про сетевой стейк контейнера
Quang
Hi all.
Anyone have that issue ?
== Failed to curl https://kubeupv2.s3.amazonaws.com/kops/1.9.1/linux/amd64/nodeup. Retrying. ==
All downloads failed; sleeping before retrying
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:19 --:--:-- 0Warning: Transient problem: timeout Will retry in 10 seconds. 6 retries left.
0 0 0 0 0 0 0 0 --:--:-- 0:00:19 --:--:-- 0Warning: Transient problem: timeout Will retry in 10 seconds. 5 retries left.
0 0 0 0 0 0 0 0 --:--:-- 0:00:19 --:--:-- 0Warning: Transient problem: timeout Will retry in 10 seconds. 4 retries left.
0 0 0 0 0 0 0 0 --:--:-- 0:00:19 --:--:-- 0^C
bebebe
Quang
i deployed k8s using kops but have that error on my master node.
Quang
command used :
kops create cluster --node-count 4 --zones ap-southeast-1a --master-zones ap-southeast-1a --dns-zone=${DNS_ZONE_PRIVATE_ID} --dns private --node-size t2.medium --master-size t2.small --topology private --networking weave --vpc=${VPC_ID} --bastion=true ${NAME}
Quang
need to check nat gw on master node ?? because i see my master node is stay on private subnet, but i i already added nat GW.
Quang
https://kubecloud.io/ha-kubernetes-cluster-on-aws-kops-makes-it-easy-2337806d0311
Quang
i'm using this tutorial.
bebebe
Quang
oke. let me check again.
Andor
VN?
Anatolii
Друзья, подскажите почему деплой происходит как-будто из какого-то кеша. Я на докер хабе образ обновил, а деплотся старый?
Andor
небось со старым тегом?
Anatolii
Andor
https://kubernetes.io/docs/concepts/containers/images/#updating-images
Anatolii
Vladimir
a=1 b=2 envsubst < template.yml > kubectl create -f - прокатит или надо вместо > |?
Andor
а ты между ними знаешь разницу?