@kubernetes_ru

Страница 67 из 958
kay
29.09.2016
08:39:50
nginx-controller наблюдает за изменениями в инстансе ingress во всех неймспейсах

и на основе этих изменний формирует nginx конфиг из темплейта /etc/nginx/template/nginx.tmpl

и если что-то изменилось, контроллер делает reload

nginx начинает юзать новый конфиг

Google
kay
29.09.2016
08:42:26
так понятнее?

Artem
29.09.2016
08:42:41
да, спасибо)

M
29.09.2016
08:46:57
@kay_rus вчера переключил на даемонсеты, почти без приключений. вопрос по хелфчеку, у тебя что в этой секции? А то то что в мане традиционно не работает

kay
29.09.2016
08:47:32
они там накосячили с портами

то один порты был то второй

M
29.09.2016
08:47:47
Судя по комментариям в нгинск конф оно открывает рандомный?

kay
29.09.2016
08:47:59
для версии gcr.io/google_containers/nginx-ingress-controller:0.8.3 используется порт 10254

M
29.09.2016
08:54:14
Странно он у меня открыл какой 18800, сейчас достану из пода

# default server, used for NGINX healthcheck and access to nginx stats server { # Use the port 18080 (random value just to avoid known ports) as default port for nginx. # Changing this value requires a change in: # https://github.com/kubernetes/contrib/blob/master/ingress/controllers/nginx/nginx/command.go#L104 listen 18080 default_server reuseport backlog=511; location /healthz { access_log off; return 200; }

при этом в мане про демонсет

- image: gcr.io/google_containers/nginx-ingress-controller:0.8.3 name: nginx-ingress-lb imagePullPolicy: Always readinessProbe: httpGet: path: /ingress-controller-healthz port: 80 scheme: HTTP livenessProbe: httpGet: path: /ingress-controller-healthz port: 80 scheme: HTTP initialDelaySeconds: 10 timeoutSeconds: 1

Artem
29.09.2016
08:58:26
@kay_rus a чтобы поднять все это дело, надо default-backend поднять и daemonset?

M
29.09.2016
08:59:53
# Changing this value requires a change in: # https://github.com/kubernetes/contrib/blob/master/ingress/controllers/nginx/nginx/command.go#L104 // Name returns the healthcheck name func (ngx Manager) Name() string { return "NGINX" }

Google
M
29.09.2016
09:00:32
вот как это юзать?)

@a_hillo да, сначала запускаешь default-backend а потом стартуешь контроллер

Andrey
29.09.2016
09:07:01
оффтоп: https://github.com/containernetworking/cni пробовал уже кто?

Artem
29.09.2016
09:08:30
@exename у меня бекенды стартуются, запускаются и крашаться CrashLoopBackOff и тоже самое с демонсетом, как причину чекнуть?

kay
29.09.2016
09:09:17
причина в healthcheck

@exename где именно ты этот рандомный порт увидел?

M
29.09.2016
09:10:51
@a_hillo kubectl get ev , kubectl log pod если он какое то время все же запущен

@a_hillo попробуй так http://pastebin.com/MbxWrmm6

Artem
29.09.2016
09:16:52
ага ща попробую, пасиб

@exename ну вроде поднялось, а как теперь это проверить что работает, и конфиги прикруить?

M
29.09.2016
10:15:21
@a_hillo все зависит от твоих конфигов, как именно ты хочешь чтобы оно заработало?

Конфиг ингресс нужно добавить в те неймспейсы, которые хочешь выставить наружу через контроллер

Dmitry
29.09.2016
10:16:37
@a_hillo Выше уже подсказали =)

только я не демонами, а сервисом делал

и лейблами на ноды этот Nginx пришил

Artem
29.09.2016
10:34:26
@exename я хочу увеличить client_body_size, потому что апликуха сыпит ошибки при загрузке больших файлов

M
29.09.2016
10:35:19
configmap я не прикручивал, выше писали как это сделать

Artem
29.09.2016
10:39:43
Ага, я кажется понял

yolkov
29.09.2016
10:44:53
все через ингрес только http прокидывают? а какие-нибудь tcp сервисы?

оффтоп: https://github.com/containernetworking/cni пробовал уже кто?
через cni работает calico и вроде weave тоже

Google
kay
29.09.2016
10:47:49
убил полных 3 дня чтобы настроить правильно ELK в kubernetes. сейчас наслаждаюсь визуализацией логов. https://github.com/kayrus/elk-kubernetes

Sergey
29.09.2016
10:51:02
спасибо

kay
29.09.2016
11:15:36
?

Alexander
29.09.2016
11:16:04
звездочку поставил в github

kay
29.09.2016
11:16:21
ок.

Alexander
29.09.2016
11:17:10
И как по ресурсам? не сильно отжирает ELK?

там же все-таки Java

Fike
29.09.2016
11:18:33
java != суперпотребление ресурсов само по себе

kay
29.09.2016
11:18:41
пока вот так

heap у меня по минимуму

индекс пока за день

yolkov
29.09.2016
11:29:18
@key_rus а не смотрел в сторону флюент logging driver для докера?

kay
29.09.2016
11:30:15
так у меня fluent и используется. только логи собираются из FS

kubelet делает симлинки

по ним и определяются контейнеры

yolkov
29.09.2016
11:31:44
я понимаю, но еть вот такое https://docs.docker.com/engine/admin/logging/fluentd/ и хотел узнать пробовал ли ты?

kay
29.09.2016
11:33:23
не пробовал. пока даже не знаю как оно устроено. что будет если fluent демон упадет, как там ассайнятся тэги k8s и т.п.

Alexander
29.09.2016
16:31:41
кто подскажет? в ingress прописываю path: /one и собственно в приложение в pod приходит запрос с /one, а нужно с /. Необходимо развернуть так несколько сервисов /one - один под, /two - совершенно другой под

M
29.09.2016
16:58:33
ну так и пиши / а не /one если нужно из корня, или вопрос про реврайты?

Google
M
29.09.2016
16:58:51
@sclif13 ^

https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples/rewrite

Alexander
29.09.2016
17:00:55
вот, спасибо

Ayrat
29.09.2016
17:44:13
Kubeadm из 1.4: http://kubernetes.io/docs/getting-started-guides/kubeadm/ http://blog.kubernetes.io/2016/09/how-we-made-kubernetes-easy-to-install.html Чем то напоминает Swarm mode :)

Andrey
29.09.2016
18:13:29
в чем его суть? он качает чтоли etcd и бинарники, и джоинит между собой мастеров и клиентов? хм, я могу ошибаться но это вроде как это пара-тройка команд всего в консоли да и самый цемес это не заджойнить ноды а грамотно их настроить - правильные сервисы и гуи поставить (типа аддоны), сети прописать, сгенерировать токены и правила доступа, отказоустойчивость (тот же kelsey предлагает etcd на отдельных машинах держать потому что они не часть кластера)

Ivan
29.09.2016
19:05:12
kubeadm рано или поздно, так понимаю, будет делать всё это. Эту тулзу хотят сделать главным (tm) инструментом деплоя k8s. Двигают идею чуваки из sig-cluster-lifecycle, в тч тов. Joe Beda, автор первого коммита в github.com/kubernetes/kubernetes

Andrey
30.09.2016
07:43:04
Canonical expands enterprise container portfolio | Ubuntu Insights https://insights.ubuntu.com/2016/09/27/canonical-expands-enterprise-container-portfolio/?utm_source=telegram.me&utm_medium=social&utm_campaign=ubuntu-nachali-predostavlyat-sobstvennuyu

kay
30.09.2016
08:24:19
Бодрая штука... https://www.elastic.co/products/beats/topbeat

И логи и мониторинг ресурсов в одной kibana. Интересно, умеет ли он alert'ы высылать

Admin
ERROR: S client not available

kay
30.09.2016
08:26:49
https://github.com/elastic/kibana/issues/1011

А эта штука пока проприетарная и платная https://www.elastic.co/products/watcher

Fike
30.09.2016
08:27:50
да попробуйте грейлог уже ) http://docs.graylog.org/en/2.1/pages/getting_started/stream_alerts.html

там ровно тот же es внутри

и для любителей прямо в докере есть gelf log driver

kay
30.09.2016
08:29:18
вот странно почему в оффициальноё репе k8s продвигают kibana, а не graylog

политика?

Fike
30.09.2016
08:30:46
у меня оущущение, что все почему-то его обходят стороной

ну и продвижение кем-то чего-то очень часто не является лучшим решением

https://marketplace.graylog.org/addons?search=callback это по алертам

Google
kay
30.09.2016
08:32:44
вот я о graylog еще с 2013 года слышал. но в продакшене его ни разу не видел

и непонятно почему все prometheus рекламируют. по мне так он не шибко функционален

либо у меня не дошли еще руки красивый и функциональный dashboard запилить

Andrey
30.09.2016
08:47:08
Panda Strike: Fluentd vs Logstash https://www.pandastrike.com/posts/20150807-fluentd-vs-logstash

fluentd родной есть

kay
30.09.2016
08:51:53
ну я вот тоже fluentd использую. главное преимущество - рестарт за секунду. logstash же пока подгрузит всё...

а минус в том, что многие плагины не из-коробки. приходится бегать по репозиториям и устанавливать порой must-have плагины

Andrey
30.09.2016
08:52:58
Логи из докера нативно шлются... вот буду имплеиентить на след неделе, по спрашиваю тебя )

kay
30.09.2016
08:53:37
вот кстати один из примеров. чтобы пропарсить ingress - nginx логи, нужно установить плагин. http://stackoverflow.com/questions/39742322/parse-nginx-ingress-logs-in-fluentd

Andrey
30.09.2016
11:34:44
друзья, а подкиньте мануал по ingress для ламеров? желательно с примерами :) наверное тут ссылки уже пролетали но блин 1к+ сообщений мне не просмотреть, заранее спасибо

kay
30.09.2016
11:35:26
https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples

Andrey
30.09.2016
11:36:11
спс

оффтоп: в гугле 1.4.0 появилось, только что обновился

kay
30.09.2016
11:59:20
GCE?

Andrey
30.09.2016
11:59:26
yep

Alexander
30.09.2016
12:06:23
ну и как?

Andrey
30.09.2016
12:06:51
ну хз то что было нормально встало обратно

yolkov
30.09.2016
12:33:18
тоже не совсем понимаю как скрестить кубернейтс с остальной инфраструктурой. хочу в кубе запустить пару сервисов(HTTP, TCP) нужно чтобы много разных серверов, виртуалок могли с ними работать. Как лучше открыть доступ из вне куба до виртуальных ИП сервисов?

kay
30.09.2016
12:34:38
вот же пример для TCP, https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples/tcp

а вот для UDP https://github.com/kubernetes/contrib/tree/master/ingress/controllers/nginx/examples/udp

yolkov
30.09.2016
12:37:06
я может чего то не понимаю, да но как зароутить с серверов вне кластера ИП адреса сервисов

внутри кластера ИП сервисов доступны через иптаблес

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