@kubernetes_ru

Страница 893 из 958
Andor
12.10.2018
23:10:19
от стабильности

Сергей
13.10.2018
07:11:40
От чего?)
От естественной смерти

Sergey
13.10.2018
10:40:17
Хочется пару кластеров без даунтайма перевести на калико :) зачем? Надо :)
Blue-green. Поднять рядом новый кластер с калико и приложениями, переключить трафик

Andrey
13.10.2018
11:00:09
Кто-нибудь сталкивался с тем, что при применении NetworkPolicy в kubernetes с ipvs и calico ломается коннект к сервисам (к подам по их IP трафик идет как надо)? Воспроизводится на calico 2.6.8 и 3.2.3, kubernetes 1.11.2

Google
Артем
13.10.2018
11:32:06
Добрый день. Разбираюсь с kubernetes. Как интегрировать kubernetes с локальным gitlab?

Banschikov
13.10.2018
11:35:37
Добрый день. Разбираюсь с kubernetes. Как интегрировать kubernetes с локальным gitlab?
Нажимаешь в гитлабе на Integration => kubernetes и заполняешь поля:)

Артем
13.10.2018
11:37:22
Banschikov
13.10.2018
11:41:10
Где взять CA Certificate и token
Я думаю перед тем как в это погружатся, вам необходимо ознакомится с азами kubernetes и почитать про него информации больше.

Где взять CA Certificate и token
Вот можно тут почитать https://edenmal.moe/post/2017/GitLab-Kubernetes-Perfect-Match-for-Continuous-Delivery-with-Container/

Andor
13.10.2018
11:48:54
Gitlub

Twelfth
13.10.2018
13:04:11
Есть ли смысл поднимать ceph fs с kubernetes на vds ках для теста?

Andor
13.10.2018
13:04:58
А цель какая?

Maksim
13.10.2018
13:52:50
Организация сетевого провайдера дисков в кубернетис дело неочень увлекательное :(

В AWS хоть есть провайдеры ebs...

А для тестов есть хост паз провайдер в песочнице на гитхабе можно почитать :)

Google
Maksim
13.10.2018
13:55:14
Он даже pvc и pv поддерживает ;)

bebebe
13.10.2018
14:02:08
Для тестов и NFS provisioner подойдёт.

Banschikov
13.10.2018
15:26:47
Привет! Кто prometheus в kubernetes с наружи ходит? Вот таким образом пытаюсь ходить в k8s: scrape_configs: - job_name: 'kubernetes-apiservers' kubernetes_sd_configs: - role: endpoints api_server: https://10.10.54.88:6443 scheme: https tls_config: ca_file: /etc/prometheus/ca.crt bearer_token_file: /etc/prometheus/token relabel_configs: - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] action: keep regex: default;kubernetes;https Но получаю ошибку: x509: certificate signed by unknown authority(

Andrey
13.10.2018
16:20:01
Попробуй корректный CA указать.

Banschikov
13.10.2018
16:28:22
Попробуй корректный CA указать.
100 % корректный указываю

Никита
13.10.2018
16:36:38
100 % корректный указываю
Кароч на сертификат прометеус может в двух местах ругаться - во время процесса дискавери, и в момент похода на задискаверенные эндпоинты за метриками.

Велкам!)

Grisha
13.10.2018
16:37:14
Велкам!)
Привет, и в этом чате)

Ребзя, привет! Подскажите, можно ли при rolling update в deployments указать pre_stop хук?

Grisha
13.10.2018
16:39:26
spec: containers: - image: nginx:1.9.4 imagePullPolicy: IfNotPresent lifecycle: preStop: exec: command: - sleep 60 Запилил вот так, но когда запускаю апдейт например релиза nginx , контейнер перезагружается сразу же

Никита
13.10.2018
16:43:48
Куда копать или с чем это связанно?
tls_config есть и в секции kubernetes_sd_configs, там попробуй указать свой ca_file. Судя по тому, что он не может ничего листить - проблема ещё и с RBAC, добавь туда же bearer_token аккаунта с правами на листинг нужных ресурсов.

С дивана решение выглядит так)

https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config

Никита
13.10.2018
16:46:08
А, я думал, вопрос про поход снаружи.

Banschikov
13.10.2018
16:48:04
А, я думал, вопрос про поход снаружи.
Я его переношу из кластера, наружу. Сейчас вот думаю как сделать. scrape_configs: - job_name: 'kubernetes-apiservers' kubernetes_sd_configs: - role: endpoints api_server: https://10.10.54.88:6443 scheme: https tls_config: ca_file: /etc/prometheus/ca.crt bearer_token_file: /etc/prometheus/token relabel_configs: - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] action: keep regex: default;kubernetes;https Так не работает. x509: certificate signed by unknown authority выдает

sbog
13.10.2018
19:52:27
Доброго вечера, коллеги. Есть инсталляция k8s, 8 нод под workload, nginx ingress, сервис за ним. Перед k8s внешний балансер. Идем в сервис за данными - тот отдает их за 2мс вне зависимости от количества реквестов (по сути, если идешь с однотипным запросом, он один раз берет данные из базы, а остальное время отдает из кэша). Идем в k8s - держит 550 rps, дальше начинает терять пакеты, чем дальше, тем больше. На балансере нагрузка около 40% по CPU при этом (разворачиваем https), на сервисе нагрузка минимальна, на ингрессе, судя по всему, теряем запросы, но нагрузка на нем тоже невысокая. Стандартная инсталляция прометеуса несильно помогает понять, в чем дело. Есть предположения, куда и как копать, если есть желание получить на сервисе, скажем, 10k rps?

Google
Andor
13.10.2018
20:16:09
у тебя даже таргеты не находятся из кубе-апи?

Banschikov
13.10.2018
20:19:28
scrape_configs: - job_name: 'kubernetes-apiservers' kubernetes_sd_configs: - role: endpoints api_server: https://10.10.54.88:6443 tls_config: ca_file: /etc/prometheus/ca.crt bearer_token_file: /etc/prometheus/token scheme: https tls_config: ca_file: /etc/prometheus/ca.crt
Да, я пробовал так, и после этого ошибка ушла. Но прометей так и не пошел собирать в кластер метрики. Все пусто в логах его

у тебя даже таргеты не находятся из кубе-апи?
Не совсем понял замечание. Вот всю базу по настройке брал от сюда. https://github.com/prometheus/prometheus/blob/master/documentation/examples/prometheus-kubernetes.yml

Никита
13.10.2018
20:20:42
Да, я пробовал так, и после этого ошибка ушла. Но прометей так и не пошел собирать в кластер метрики. Все пусто в логах его
Он в Service Discovery должен показать эндпоинты. Если он их задискаверил, но не получил метрики - он напишет, что за ошибка.

В смысле, в веб-интерфейсе.

Banschikov
13.10.2018
20:22:28
В смысле, в веб-интерфейсе.
В интерфейсе нет метрик. Все дефолтные. Как будто он ничего не делает.

Никита
13.10.2018
20:23:40
В интерфейсе нет метрик. Все дефолтные. Как будто он ничего не делает.
Там есть отдельный пункт "Service Discovery", в меню в выпадающем списке.

Banschikov
13.10.2018
20:24:59
Там есть отдельный пункт "Service Discovery", в меню в выпадающем списке.
Спасибо за совет. Да действительно они есть там.

Banschikov
13.10.2018
20:26:04
с прометеем вообще работал?
Неделю как осваиваю

Даже меньше

Никита
13.10.2018
20:27:15
Ага, если ендпоинты задискаверились, то секция kubernetes_sd_configs правильная) Дальше надо смотреть, почему метрики не приезжают.

Andor
13.10.2018
20:29:58
ну если в таргетах есть хоть что-то, значит кубе-апи работает

если оно всё красное - с этим уже надо разбираться отдельно

Banschikov
13.10.2018
20:33:15
Ага, если ендпоинты задискаверились, то секция kubernetes_sd_configs правильная) Дальше надо смотреть, почему метрики не приезжают.
А как можно продебажить это? Я правильно понимаю что прометей ломится в kube-api, потом чекает все сервисы, эндпойнты, и поды. Когда находит экспортеры, то забирает с них метрики?

Google
Andor
13.10.2018
20:33:57
зависит от настроек, может что-то собирать, а что-то скипать

Никита
13.10.2018
20:45:18
В твоём конфиге есть - role: endpoints, значит, он будет собирать только эндпоинты.

sbog
13.10.2018
20:45:43
И технически балансер очень близко расположен к кластеру, там TTL<1ms

Stas
13.10.2018
20:47:51
Да, каждой нодой просто
я бы начал с того что заэкспоузил сервис нод портом и потестил, после этого когда стало юы точно понятно что это нджинкс пошел бы читать статьи

sbog
13.10.2018
20:48:06
Норм идея, пасиб

Никита
13.10.2018
20:49:51
В твоём конфиге есть - role: endpoints, значит, он будет собирать только эндпоинты.
endpoint - это такая сущность кубернетеса. Обычно их регистрирует сервис, когда выбирает необходимые ему поды (или как-то так).

Stas
13.10.2018
20:51:45
Норм идея, пасиб
после этого я бы начал с этого https://danielfm.me/posts/painless-nginx-ingress.html

sbog
13.10.2018
20:53:03
Угу, тоже вот нашел это. Попробую сейчас сервис выставить нодпортом

DDD
13.10.2018
21:14:51
какая допустимая задержка для федерализации не больше 50мс?

Dmitry
13.10.2018
21:32:20
гайс, а кому-то прилетал инвайт на k8s от digitalocean ?

Andor
13.10.2018
21:35:55
летом прилетал

Sergey
14.10.2018
04:43:00
Доброго вечера, коллеги. Есть инсталляция k8s, 8 нод под workload, nginx ingress, сервис за ним. Перед k8s внешний балансер. Идем в сервис за данными - тот отдает их за 2мс вне зависимости от количества реквестов (по сути, если идешь с однотипным запросом, он один раз берет данные из базы, а остальное время отдает из кэша). Идем в k8s - держит 550 rps, дальше начинает терять пакеты, чем дальше, тем больше. На балансере нагрузка около 40% по CPU при этом (разворачиваем https), на сервисе нагрузка минимальна, на ингрессе, судя по всему, теряем запросы, но нагрузка на нем тоже невысокая. Стандартная инсталляция прометеуса несильно помогает понять, в чем дело. Есть предположения, куда и как копать, если есть желание получить на сервисе, скажем, 10k rps?
нжинкс-ингресс в дефолтной конфигруации тысячи запросов не напрягаясь пережовывает. Я бы начал с того, что снимал бы метрики с кластера и ингресс контролера (особенно удобно это делать с последними версиями nginx-ingress где даже графана дашборда из коробки вполне вменяемая, там используется lua вместо vts для метрик). Далее можно делать лоадтест как самого нжинкса (какой-нибудь статус ендпоинт дергать) так и лоадтест “эхо” сервиса, после этого лоадтесты уже рабочего сервиса. Ну и для лоад тестов брать нормальные приблуды, например, wrk,tank,vegeta.

Grisha
14.10.2018
07:13:49
Может сегодня повезет, ребзя подскажите, как при rolling update в deployments сделать так чтобы перед обновлением пода он дождался когда все службы внутри пода заерщаться?

terry
14.10.2018
07:39:40
оо забыл

а стрим уже начался

Google
Dmytro
14.10.2018
07:40:20
а стрим уже начался
По идее да, keynote уже идёт

M
14.10.2018
07:43:31
Может сегодня повезет, ребзя подскажите, как при rolling update в deployments сделать так чтобы перед обновлением пода он дождался когда все службы внутри пода заерщаться?
поставь таймаут большой для выключения поды что-то типа 3600. он его выведет из лоад балансинга но будет ждать пока он сам выйдет.

Grisha
14.10.2018
07:44:12
тут сложность еще в том что я не управляю балансигом им занимается другой процесс nodejs

есть CC - command center у ноды, которые рулит трафом

M
14.10.2018
07:45:28
я имею ввиду балансинг на уровне service

Andor
14.10.2018
07:51:00
А Service занимается балансировкой?

Дмитрий
14.10.2018
07:52:57
А как можно продебажить это? Я правильно понимаю что прометей ломится в kube-api, потом чекает все сервисы, эндпойнты, и поды. Когда находит экспортеры, то забирает с них метрики?
Пром из API получает внутренние IP и аннотации куда стучаться за метриками (если нестандартные порты и URL), а потом пытается в них сходить. Отсюда метод проверки - с хоста прома ты можешь получить метрики с подов (в первую очередь маршрутизация внутренних ip)

Страница 893 из 958