Andrey
Он подставляет внут. адреса подов
Artem
Ого
Artem
Ты точно ничего не перепутал и это ingress?
Oleg
host network вроде вопрос решает
Artem
Кстати да
Oleg
только будет простой при обновлении или падения самого ингреса
Oleg
для этого есть всякие злые хаки, которые подсмотрел у фланта
Artem
Ну можно часть поднять и переключить днс на него
Artem
У тебя один ингресс?
Artem
Сделай несколько
Andrey
У меня 3 по одному на каждый хост, и есть failover ip который переезжает в слуучае падения ноды
Oleg
там все сложнее, смотрят поднят ли 80 порт с помощью модуля сокет, если не поднят, заворачивают трафик в другое место где поднят нгинкс с прокси протоколом, который отправляет трафик в отдельный деплоймент ингреса как раз на такой случай
Andrey
https://habr.com/company/flant/blog/331188/#comment_10532820
Ща повкуриваю, спс за урл)
bebebe
@SinTeZoiD ^^^
G72K
Он подставляет внут. адреса подов
Выставьте externaltrafficpolicy: Local на сервисе ингресс контроллера
Andrey
Он работает только для Nodeport & LB
Andrey
У меня ClusterIP c externalIPs
Andrey
Да я решил воткнуть перед ингресами Haproxy и пинать трафик с него на ингресы
Andrey
Тогда все сохраняется ибо нет NAT
G72K
У меня ClusterIP c externalIPs
Точно externalTrafficPolicy не работает с externalIP? Проверяли? Сам не пользовался, но хотелось бы знать :)
Stas
Точно externalTrafficPolicy не работает с externalIP? Проверяли? Сам не пользовался, но хотелось бы знать :)
а как оно может в принципе работать, если этот параметр просто запрещает использовать нелокальные эндпоинты сервиса с точки зрения того хоста на который прилетел трафик?
Nik
а как передеплоить helm chart ?
Andrey
а как передеплоить helm chart ?
удалить с helm delete —purge ... и деплоить с нуля
Anonymous
helm delete --purge mongodb-enterprise-operator Error: transport is closing у когонить было такое? helm delete mongodb-enterprise-operator --debug --dry-run [debug] Created tunnel using local port: '56822' [debug] SERVER: "localhost:56822" Error: release: "mongodb-enterprise-operator" not found
Andrey
Error: transport is closing было, но на функционал не влияло
Anonymous
я так из хелма не могу удалить этот оператор( в кубере неймеспейсов нет
Никита
Он в helm ls виден?
Denis
Доброго утра всем! Кто нибуть использует в сервисе около 100 портов? kube-proxy не троит?
Никита
Дык кубпрокси только конфигурит iptables нынче, ну или ipvs.
Denis
Дык кубпрокси только конфигурит iptables нынче, ну или ipvs.
Я вот тут просто почитал и озадачился https://github.com/kubernetes/kubernetes/issues/23864
Denis
Есть ли такая проблема
Nik
удалить с helm delete —purge ... и деплоить с нуля
Это как бы не апдейт. А возможности нормально проапдейтить, не вырезая весь сервис нет?
Nik
(Беда)
Владимир
беда (кродёться)
G72K
а как оно может в принципе работать, если этот параметр просто запрещает использовать нелокальные эндпоинты сервиса с точки зрения того хоста на который прилетел трафик?
Ну у него есть сторонний эффект, что пакеты не SNAT ятстя, логично чтобы и для externalIP так же работало :) глянул код, снатит ..
Anonymous
https://docs.google.com/spreadsheets/d/16bxRgpO1H_Bn-5xVZ1WrR_I-0A-GOI6egmhvqqLMOmg/edit#gid=1612037324 Кому интересно.
Andor
я б оттранспонировал
Никита
Это как бы не апдейт. А возможности нормально проапдейтить, не вырезая весь сервис нет?
https://github.com/helm/helm/blob/master/docs/charts_tips_and_tricks.md#automatically-roll-deployments-when-configmaps-or-secrets-change
Салтыдык
https://docs.google.com/spreadsheets/d/16bxRgpO1H_Bn-5xVZ1WrR_I-0A-GOI6egmhvqqLMOmg/edit#gid=1612037324 Кому интересно.
Ссылка на первый haproxy ingress controller ведёт на блог. Почему бы не на оф.репу? https://github.com/jcmoraisjr/haproxy-ingress
Nik
ты спросил про передеплой
Ну значит не то заветное слово .
Никита
Есть ли такая проблема
Судя по обсуждению, решения для публикации диапазона портов так и нет, воркараунд - описывать их по-одному. Это плохо, так как породит туеву хучу iptables-правил, но, в целом, приемлемо, и будет работать при не очень высоком пакетрейте. В обсуждении упоминается юзерспейсный кубпрокси, который легаси, и который, судя по всем, большое число описанных портов могло серьёзно поаффектить. Олсо, а что за юзкейс?
Anton
Добрый день! Подскажите пожалуйста export KUBECONFIG=./kube/kube.conf helm install stable/postgresql helm подхватит KUBECONFIG и будет устанавливать postgresql в кубернетесе, который указан в KUBECONFIG?
Салтыдык
? Официальный док. HAProxy Ingress controller смотрел?
что значит смотрел? в jcmoraisjr/haproxy-ingress я даже контрибьютил. Знаю ещё voyager, не понравился. Другие не смотрел, ибо гугл о них не знает. UPD: в статье именно о них и идёт речь (но примеры из первого).
Никита
Да я так и понял. Там сервис есть, который использует много портов. Сильно не вдавался в это.
Я бы сделал сеть подов маршрутизируемой и сервис публиковал как headless, наверное.
Anton
да
Спасибо
Roman
Всем привет! Подскажите пожалуйста как можно посмотреть из-за чего не создается контейнер? NAME READY STATUS RESTARTS AGE pod/db-5877dd4f57-6dwc4 1/1 Running 0 47m pod/nc-767fc48868-4mc4q 1/1 Running 0 47m pod/proxy 0/1 ContainerCreating 0 47m При попытке посмотреть логи: kube@test-kubernetes-01:~/nc-deployment$ kubectl log proxy log is DEPRECATED and will be removed in a future version. Use logs instead. Error from server (BadRequest): container "nc-proxy" in pod "proxy" is waiting to start: ContainerCreating
Andor
describe ещё может помочь
Roman
благодарю, буду копать
Roman
Отлично, проблему нашел. выполняю деплой с мастера, соответственно все конфиги на нем, кубик ругается что на одной из нод не может смонтировать волюм из-за отсувствия файла
Roman
это что получается на каждую ноду еще файло для деплоя нужно раскопировать?
Andor
вероятно ты хочешь ConfigMap
Roman
именно, для энжинкса
Roman
спасибо за наводку!
Denis
Товарищи, подскажите, мне этих прав хватит запускать, удалять и просматривать кронджобы? kind: Role apiVersion: rbac.authorization.k8s.io/v1beta1 metadata: name: kube-cron-jobs-role namespace: develop rules: - apiGroups: ["batch"] resources: ["jobs"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]
Denis
не GKE случаем?
Нет, там другой iaas провайдер
Siarhei
Друзья, опять я со своим ceph. Поднял кластер цефа, потом заменил образ контроллер менеджера (на с поддержкой RBD), затем создал сторадж класс и PVC - все ок PV создался автоматом. но!!! он не хочет коннектиться к поду. Unable to mount volumes for pod "nginx-swhdj_default(aec92db6-b67f-11e8-a47c-001a4a1900b7)": timeout expired waiting for volumes to attach or mount for pod
Dmitry
@Zhibul_Siarhei А глянь логи controller-manager и kubelet на который заасайнился под с этим volume
Siarhei
controller-manager : rbd.go:326] successfully created rbd image "kubernetes-dynamic-pvc-4599363a-b67f-11e8-b29d-001a4a1900b7" type: 'Normal' reason: 'SuccessfulCreate' Created pod: nginx-9lkqc kubelet на воркере reconciler.go:207] operationExecutor.VerifyControllerAttachedVolume started for volume "pvc-45932f3d-b67f-11e8-a47c-001a4a1900b7" nestedpendingoperations.go:267] Operation for "\"kubernetes.io/rbd/kube:kubernetes-dynamic-pvc-4599363a-b67f-11e8-b29d-001a4a1900b7\"" failed. No retries permitted until 2018-09-12 14:45:53.023064853 +0300 +03 m=+87427.356766566 (durationBeforeRetry 2m2s). Error: "Volume not attached according to node status for volume \"pvc-45932f3d-b67f-11e8-a47c-001a4a1900b7\" (UniqueName: \"kubernetes.io/rbd/kube:kubernetes-dynamic-pvc-4599363a-b67f-11e8-b29d-001a4a1900b7\") pod \"nginx-9lkqc\" (UID: \"360eb829-b680-11e8-a47c-001a4a1900b7\") " Sep 12 14:43:57 ha-worker02 kubelet[11085]: E0912 14:43:57.412420 11085 kubelet.go:1640] Unable to mount volumes for pod "nginx-9lkqc_default(360eb829-b680-11e8-a47c-001a4a1900b7)": timeout expired waiting for volumes to attach or mount for pod "default"/"nginx-9lkqc". list of unmounted volumes=[mypvc]. list of unattached volumes=[mypvc default-token-sbqsg]; skipping pod Sep 12 14:43:57 ha-worker02 kubelet[11085]: E0912 14:43:57.412457 11085 pod_workers.go:186] Error syncing pod 360eb829-b680-11e8-a47c-001a4a1900b7 ("nginx-9lkqc_default(360eb829-b680-11e8-a47c-001a4a1900b7)"), skipping: timeout expired waiting for volumes to attach or mount for pod "default"/"nginx-9lkqc". list of unmounted volumes=[mypvc]. list of unattached volumes=[mypvc default-token-sbqsg]
Siarhei
на всех машинах modprobe rbd, install ceph-common все как в мурзилке
Siarhei
ось центос 7.5 везде
Grigorii
слушайте, у меня тут затык такой, может я чего-то не понимаю или разучился гуглить( вот у меня скажем есть БД из 3 реплик, по православному, в виде StatefulSet, каждая реплика на отдельной ноде в разных AZ. К примеру, db-0, db-1, db-2 и соотв в зонах zone-a, zone-b, zone-c. И вот я убиваю ноду в зоне b, потому что БД из двух нод должна работать тоже. Но у StatefulSet есть такое поведение как Ordered Pod Creation: For a StatefulSet with N replicas, when Pods are being deployed, they are created sequentially, in order from {0..N-1}. Notice that the web-1 Pod is not launched until the web-0 Pod is Running and Ready И в моем случае db-1 висит в Pending статусе естественно (потому что ноды нет в этом AZ) и из-за этого не запускается db-2, и никогда не запустится. Хотя если бы запустилась, кластер бы работал. Никто с этим не сталкивался и не знает как обойти это? (Не надо только говорить что k8s не место для БД :) это не моя прихоть)
Grigorii
точно, разучился: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies спасибо!
Anton
погоди, а почему db-1 не running после убийства db-0?
Grigorii
я убил db-1, которая в зоне b :)
Grigorii
ну в любом случае ответ уже нашел)
bebebe
коллеги, кто-нибудь делает helm CI через chartmuseum? https://github.com/helm/chartmuseum
Igor
Мы
bebebe
Мы
испытываете какие-нибудь боли?