@kubernetes_ru

Страница 162 из 958
Let Eat
22.04.2017
20:46:19
вкратце: создает ветку vanilla/stack куда просто вываливается дефолтный конфиг из kube-aws, затем на основе нее создается tailored/stack где все правки/дополнения/улучшения общие для всех кластеров, из них создается defaults/<AWS-account> которые по сути tailored/stack с заполненными полями вроде vpc-id, subnet id и т.д.,затем из них уже создается kluster/<kluster-name> где финальный конфиг конкретного кластера. таким образом изменения можно вносить на всех уровнях, "релизить" кластеры по будто это код ну и подтягивать всю свежесть из новых версий kube-aws относительно легко, без ручного переноса кастомизаций

десятком кластеров таким методом управлять получается довольно просто. при росте >20-30 кластеров наверно нужно будет дальше автоматизировать роботами

Vitaliy
22.04.2017
20:49:56
кто как разворачивает кубер?
coreos ignition конфиги. Шаблонизируем через Ansible. За основу брали coreos matchbox, но сильно всё переделано.

Let Eat
22.04.2017
20:52:58
то есть вы скопировали kargo?
kargo умеет AWS Autoscaling groups?

Google
Paul
22.04.2017
20:54:10
Oleg
22.04.2017
21:23:53
а разработку как ведете? вот надо всю инфраструктуру из подов, а отдельный локальный сервис со своей машины

Oleg
22.04.2017
22:07:00
у меня я девопс )

на чем san разворачиваете?

Paul
23.04.2017
10:53:56
на чем san разворачиваете?
у нас ceph. решение неидеальное, но из того, что можно поднять в BMR я лучше не нашел

Sergey
23.04.2017
14:28:43
Ребята подскажите в чем может быть проблема, у нас периодически ingress начинает на все запросы отдавать 503, в логах повляется надписи наподобие service default/company_1 does not have any active endpoints service default/company_2 does not have any active endpoints service default/company_3 does not have any active endpoints

так происходит минут 5 потом все восстанавливается

т.е. такое ощущение будто сервисы массово теряют endpoint

при этом поды не пересоздаются

Paul
23.04.2017
16:31:30
а в логах кубелета есть что-нибудь интересное?

Роман
24.04.2017
10:38:57
Изучаю куб. Поднимаю тестовое приложение, типа вебсервера, который отображает на странице hostname (имя пода, в котором поднят контейнер). Создал нэймспейс, сервис и деплоймент. По умолчанию под не поднимается на мастер-ноде (10.0.0.10), но поднимается на node1 (10.0.0.11). Если я с node1 выполню curl http://127.0.0.1:30001, то всё хорошо - показывается hostname. Если я с мастер-ноды выполню curl http://127.0.0.1:30001 (порт этот есть в списке открытых) - у меня таймаут соединения. В связи с этим вопрос: что мне ещё нужно предпринять, чтобы схема заработала? Реализовать хочу такую схему: допустим я поднял несколько реплик на разных нодах - что-то должно балансировать запросы между ними. Пускай это делает nginx. Сейчас я вижу только то, что мне вручную придётся править конфиг энджинкса и прописывать там ноды. Может это как-то по другому делается?

Google
Роман
24.04.2017
10:46:33
Ну и второе: где и что нужно разрешить, чтобы я с мастер-ноды мог выполнить curl http://10.0.0.11:30001? Сейчас у меня тоже таймаут, если я пытаюсь это сделать. Думаю, это потому, что каких-то прав нехватает...

Zon
24.04.2017
12:39:46
А вот такой вопрос - чем лучше сделать простые (301/302) редиректы, если их нужно много и не хочется билдить для этого новые имаджи? Чтоб при этом можно было регэкспы задавать, а не просто мап

Igor
24.04.2017
18:01:06
Привет всем. На работе внедряется Kubernetes. Где можно подробно и с примерами почитать? В доке? Или лучше есть? Может видео?

Paul
24.04.2017
18:03:46
а вы не пробовали самостоятельно искать информацию?

а то такой вопрос выглядит даже не как хамство

для начала можно взять официальный док и курс на юдасити

Konstantin
24.04.2017
18:04:25
lmgtfy

Zon
24.04.2017
19:16:17
Гляньте внутри nginx-ingress, может там есть какие-нибудь хуки специально под это дедл
Там была опция, но как-то не очень красивое решение получается особенно если gce ingress тоже использовать

Artem
24.04.2017
19:24:29
Ребят, можно вопрос?

Мне надо ноду развернуть, чтобы было, как здесь infura.io

https://github.com/ethereumproject/etherkube

может кто-то помочь с этим?

Konstantin
24.04.2017
19:29:10
Помочь - сделать?

Paul
24.04.2017
19:44:56
вот мне тоже интересно стало

Mikhail
25.04.2017
11:34:10
Коллеги, правильно ли я понимаю схему кластеризации мастер-нод: каждый из процессов (etcd, kube-apiserver , kube-dns) должен быть запущен как docker контейнер. Каждый процесс объявить cервисом, с проброшенным наружу IP, ну и настроить Replication Controllers. Соответственно снаружи запросы на них будут поступать через какой-нибудь балансировщик (тот же nginx+, например). Собственно требуется повысить отказоустойчиость самого кластера, чтобы при падении мастера (где у меня крутится апи и прочее), кластер оставался доступным. Может я чего не так понимаю ? Буду благодарен, если кто подскажет, как лучше всего это должно быть спроектировано :)

Let Eat
25.04.2017
11:35:03
etcd это отдельная песня.запускаете их нечетное количество >2 и все

матсер ноды: на каждой apiserver, scheduller , controller (ну и kubelet но он везде кроме etcd)

apiserver они stateless, так что все просто работает. scheduller и controller manager умеют leader election если передать соответствующий флаг. тогда они между собой через etсd будут договариваться кто из них главный, а остальные на подхвате

Google
Arthur
25.04.2017
11:40:33
Всем привет. Подскажите что такое Deployments в контексте Kubernetes?

Fike
25.04.2017
11:41:09
Какие вопросы возникли после прочтения оф.доки?

Sergej
25.04.2017
11:41:54
"(etcd, kube-apiserver , kube-dns) должен быть запущен как docker контейнер. " можно и в качестве бинарника.

Dorian
25.04.2017
11:43:49
православенее в докере

бинари тоже работают

Mikhail
25.04.2017
11:44:28
Спасибо за ответы!

Let Eat
25.04.2017
11:46:31
православенее в докере
самое православное это внутри самого куба :)

Dorian
25.04.2017
11:47:18
С резервированием

ахха

Let Eat
25.04.2017
11:47:54
Всем привет. Подскажите что такое Deployments в контексте Kubernetes?
Deployment - это ресурс который запускает несколько экземпляров пода и умеет их обновлять согласно настраиваемой стратегии обновления

Mikhail
25.04.2017
11:56:15
etcd это отдельная песня.запускаете их нечетное количество >2 и все
прям вот просто запускать, без какой либо донастройки? :)

Maksim
25.04.2017
12:15:19
прям вот просто запускать, без какой либо донастройки? :)
НУ почти https://coreos.com/etcd/docs/latest/v2/clustering.html

Mikhail
25.04.2017
12:16:45
оп,спасибо! Пошел изучать :)

Fike
25.04.2017
12:23:53
https://coreos.com/etcd/docs/latest/op-guide/clustering.html подозреваю что для третьей версии это

Let Eat
25.04.2017
12:24:03
ясно. получается к deployment можно привязать автоматическое обновление?
когд вы обновляете deployment, оно постепенно перезапустит все контейнеры , которыми управляет

обновляете == заливаете новый yaml

прям вот просто запускать, без какой либо донастройки? :)
etcd-wrapper работает из коробки, всё что нужно задать - ETCD_INITIAL_CLUSTER или что-то такое

Konstantin
25.04.2017
12:27:40
есть кто работает с разной оркестрацией? docker swarm mode сильно отстаёт от кубера по функционалу?

Roman
25.04.2017
12:30:23
Ребят, пытаюсь продумать как сделать правильно, но не получается с собой даже договориться. Подскажите, пожалуйста. Есть сервис, который из себя представляет бинарь на go, общающийся с redis в качестве хранилки. Допустым есть несколько нод в кластере kubernetes (предположим 4). Хочется размножить на эти ноды данный сервис. С размножением go-шного бинарника в контейнере никаких проблем нет, делаем replicas 4 и забываем. Как быть с редисом я не совсем понимаю, а конкретно - с консистентностью данных. Можно на каждой ноде сделать вольюм, который будет монтироваться по сети, но мне кажется что это костыль. Может кто сталкивался с подобным, подскажите добрым словом.

Google
Fike
25.04.2017
12:32:19
вам нужно сменить хранилище. я не шучу.

Fike
25.04.2017
12:32:46
если у вас не включен фсинк на каждый коммит в редисе, то вы и так уже в беде

Admin
ERROR: S client not available

Konstantin
25.04.2017
12:34:20
смотря что он хранит в редисе, не сказано. И нужно ли его масштабировать в его случае вообще

Fike
25.04.2017
12:34:49
данные, которые должны быть консистентными

Roman
25.04.2017
12:37:54
вам нужно сменить хранилище. я не шучу.
да, я уже рассматривал этот вариант) просто можно что сделать - 4 приложения на го, которые пишут в один редис. но этот редис находится на одной ноде. в случае выхода ноды из строя будут проблемы. о реплике я тоже думал, но это вариантик так себе. собрать кластер из редисов - вольюмы и костыли

Fike
25.04.2017
12:39:07
Этот кластер все равно будет неконсистентным, там все гарантии только от однопоточного режима. В случае кластера эта отговорка уже понтяное дело не сработает.

Konstantin
25.04.2017
12:39:10
редис для данных плохая затея

Fike
25.04.2017
12:41:55
Если у вас жесткие требования к консистентности (требуется линеаризация операций, т.е. результат операции над записью сразу же виден последующим чтениям), то попробуйте riak, если у вас что-то попроще - то можно взять Кассандру (там на самом деле тоже можно делать CAS-операции, просто по умолчанию там нет никаких проверок, да и у riak бОльшая заточенность на разбор с конфликтами - те же счетчики у него должны работать как часы, у кассандры возможны аномалии).

(есть еще миллиард других вариантов, просто я их не знаю или недостаточно знаю, чтобы рекомендовать)

Roman
25.04.2017
12:42:44
да можно тарантул взять даже? вопрос был именно о редисе)

спасибо, ребят)

Konstantin
25.04.2017
12:53:07
Maksim
25.04.2017
12:58:57
оп,спасибо! Пошел изучать :)
https://kubernetes.io/docs/admin/high-availability/

Ещё чуток инфы. Вообще на офф сайте очень много интеренсого написано...

Konstantin
25.04.2017
13:06:03
redis умеет кластер нативно
Да я ему даже готовый конфиг скинул, но тут вопрос в целесообразности

Fike
25.04.2017
13:08:30
редис не нужен ?

Павел
25.04.2017
17:08:28
Using Projected volumes | Kubernetes https://kubernetes.io/docs/tasks/configure-pod-container/projected-volume/

Google
Sergey
25.04.2017
18:14:08
> We are excited to announce that we are working in partnership with both Google and IBM to bring Envoy to Kubernetes. https://eng.lyft.com/envoy-7-months-later-41986c2fd443 https://news.ycombinator.com/item?id=14194026

Sergey
25.04.2017
19:38:15
Это ещё один линкерд?
Видимо, предпочитаемый гуглом.

Zon
25.04.2017
19:41:42
Возможно плюсы им ближе скалы

"linkerd’s memory and CPU requirements are significantly higher than Envoy’s. In contrast to Envoy, linkerd provides a minimalist configuration language, and explicitly does not support hot reloads, relying instead on dynamic provisioning and service abstractions." Особенно если память не бесплатная

yolkov
26.04.2017
09:08:23
а кто-то использует подобный линкерд софт или сам линкерд?

Ihor
26.04.2017
09:16:14
НУ почти https://coreos.com/etcd/docs/latest/v2/clustering.html
v2 уже нет в 1.6, используйте мануалы для v3

Let Eat
26.04.2017
09:21:59
v2 уже нет в 1.6, используйте мануалы для v3
как это? всё есть :) 1.6 умеет общаться с v2

Maksim
26.04.2017
09:23:27
Помнится была ремарка на офф сайте, что лучше оставаться на v2

Ihor
26.04.2017
09:23:54
etcd v3 дефолтный в 1.6, обратная совместимость с v2 есть, но v3 - основной

Artem
26.04.2017
09:26:08
не было такого

Ihor
26.04.2017
09:26:17
мы готовили release notes, и добавили это - https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG.md#warning-etcd-backup-strongly-recommended

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