@kubernetes_ru

Страница 231 из 958
Maksim
07.08.2017
10:44:27
а вот что сейчас делать с ошибкой на fs/cgroup пока не оч ясно

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

Aleksey
07.08.2017
13:17:47
Подскажите, а есть ли механизм позволяющий прописать зависимости или ожидания? Хочу, чтоб деплоймент не запускался, пока не запущен такой-то сервис. Сходу не нагуглил, прошу простить, если вопрос избитый.

Denis
07.08.2017
13:19:38
init containers

Google
Denis
07.08.2017
13:19:59
https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

Кто нибудь знает есть ли возможность кастомизировать порядок роллинг апдейта?

Vitaliy
07.08.2017
13:58:30
Посмотрите в сторону stateful set, но я сам не юзал

Вообще следить за порядком запуска - не kubernetes way

Maksim
07.08.2017
14:01:10
Вообще следить за порядком запуска - не kubernetes way
Один момент, обычно разрабы видят Кубер и начинают вливать свой compose

а там они очень сильно извращают, да ещё у них там и host alies и порядок запуска и вообще детская песочница, а у нас тут взрослый сервис с fqdn и т.п.)

да ещё иногда и сервисы зависимы друг от друга

Посмотрите в сторону stateful set, но я сам не юзал
ну он всё ещё поддерживается а Ordered ввели в 1.7, так что kubernetes way в эту строну то же смотрит

Denis
07.08.2017
14:18:48
Посмотрите в сторону stateful set, но я сам не юзал
Ну это немного для другого все таки

Хотя The RollingUpdate update strategy will update all Pods in a StatefulSet, in reverse ordinal order то что нужно прям :)

Maksim
07.08.2017
14:23:14
In Kubernetes 1.7 and later, StatefulSet allows you to relax its ordering guarantees while preserving its uniqueness and identity guarantees via its .spec.podManagementPolicy field

Это раз

The RollingUpdate update strategy implements automated, rolling update for the Pods in a StatefulSet. When a StatefulSet’s .spec.updateStrategy.type is set to RollingUpdate, the StatefulSet controller will delete and recreate each Pod in the StatefulSet. It will proceed in the same order as Pod termination (from the largest ordinal to the smallest), updating each Pod one at a time. It will wait until an updated Pod is Running and Ready prior to updating its predecessor

Google
Maksim
07.08.2017
14:24:28
Это два)

Так что да копать StateFull set

Andrey
07.08.2017
21:10:27
Народ, будучи в отпуске я решил проанализировать все доступные источники информации (хайповые и не очень), и составить таблицу наиболее интересных транспортов между сервисами сети (с прицелом на перенос инфораструктуры, так что требования субьективные да и сравнивается там не технологии одного уровня а теплое с мягким). В общем, попытка определить "хайповость" технологии и решить на чем делать следующий проект чтобы потом не обосраться. Накидал вкратце примерный список фич и штрихами заполнил часть из них, без выводов пока и всего остального. Если кому интересно пишите свой фидбек (какие фичи были бы еще полезны, что из того что написал неправильно или непонятно), можно в приват. Нужны любые ваши комментарии, очень хочу их услышать даже если у вас есть всего пара слов по этому поводу. Заранее спасибо :) Да и табличка может потом пригодиться коллегам. https://docs.google.com/spreadsheets/d/1l-jbEGlkW83Hcb122oHZZ8SGTdE1nRQVOT5gnWvbXO0/edit?usp=sharing

Alex
08.08.2017
04:11:13
Народ, будучи в отпуске я решил проанализировать все доступные источники информации (хайповые и не очень), и составить таблицу наиболее интересных транспортов между сервисами сети (с прицелом на перенос инфораструктуры, так что требования субьективные да и сравнивается там не технологии одного уровня а теплое с мягким). В общем, попытка определить "хайповость" технологии и решить на чем делать следующий проект чтобы потом не обосраться. Накидал вкратце примерный список фич и штрихами заполнил часть из них, без выводов пока и всего остального. Если кому интересно пишите свой фидбек (какие фичи были бы еще полезны, что из того что написал неправильно или непонятно), можно в приват. Нужны любые ваши комментарии, очень хочу их услышать даже если у вас есть всего пара слов по этому поводу. Заранее спасибо :) Да и табличка может потом пригодиться коллегам. https://docs.google.com/spreadsheets/d/1l-jbEGlkW83Hcb122oHZZ8SGTdE1nRQVOT5gnWvbXO0/edit?usp=sharing
А http? Можно было бы еще добавить список фреймворков, где транспорт реализован на каждой из технологий.

Andrey
08.08.2017
05:07:35
о, и ты здесь :) привет у меня там в таблице не столько сравнение (нельзя сравнивать теплое с мягким), сколько попытка описать характеристики спасибо за инфу, подумаю как вставить в таблицу grpc использует http2 под капотом, graphql не регламентирует протокол но из коробки идет http1 - то есть я не рассматриваю отдельно http так как он в комплекте идет если ты имел ввиду чистый http1 со всеми своими косяками то он не прошел предварительный отбор в таблицу :) по поводу фреймворков, прикол в том что только gRPC дает возможность взять и написать бизнес-логику на определенном списке языков (а дальше админы пусть думают как ее в воркфлоу встроить) остальные претенденты не обладают мультиязыковым фреймворком к сожалению (ваш amqp-фреймворк хорош но только под ноду к сожалению... а собственно, почему "ваш", я тоже в начале разработки руку приложил :), то есть надо создавать спецификацию и при входе новой команды в разработку (или желании сменить язык) надо заново фреймворк писать... если я не ошибаюсь, поправьте меня

Let Eat
08.08.2017
07:24:53
Народ, будучи в отпуске я решил проанализировать все доступные источники информации (хайповые и не очень), и составить таблицу наиболее интересных транспортов между сервисами сети (с прицелом на перенос инфораструктуры, так что требования субьективные да и сравнивается там не технологии одного уровня а теплое с мягким). В общем, попытка определить "хайповость" технологии и решить на чем делать следующий проект чтобы потом не обосраться. Накидал вкратце примерный список фич и штрихами заполнил часть из них, без выводов пока и всего остального. Если кому интересно пишите свой фидбек (какие фичи были бы еще полезны, что из того что написал неправильно или непонятно), можно в приват. Нужны любые ваши комментарии, очень хочу их услышать даже если у вас есть всего пара слов по этому поводу. Заранее спасибо :) Да и табличка может потом пригодиться коллегам. https://docs.google.com/spreadsheets/d/1l-jbEGlkW83Hcb122oHZZ8SGTdE1nRQVOT5gnWvbXO0/edit?usp=sharing
zeromq, nanomsg, mqtt

Айбелив
08.08.2017
07:29:04
https://nats.io

Andrey
08.08.2017
07:29:44
это все event-driven паттерны (объединил их в amqp, хотя и не обязательно там должен быть amqp - mqtt тоже ттуда же например :)

Artem
08.08.2017
08:02:12
 fedora atomic - неплохо придумали и сделали.

наверное повезу ее в прод

Роман
08.08.2017
08:26:07
Когда использовал просто докер, gitlab-ci-runner нормально работал. Теперь поставил его в кубер. Но уже несколько дней не могу понять в чём проблема. Раннер создаёт три контейнера, среди них есть svc-0, который не стартует. Причина: не может сменить группу у /var/run/docker.sock на docker, так как группы не существует. И действительно: в контейнере есть группа 999, но называется она ping. Используется образ docker:dind. В то же время, аналогичная схема работает, если используется просто контейнер с этим образом вне кубера. Раннер используется для сборки образа и запушивания его в регистри. Кто-нибудь сталкивался? Как победили? Я уже всё перечитал, что нашёл по этому вопросу. Ответ один: всё должно работать...

Rinat
08.08.2017
08:44:41
всем привет, может кто знает перестали работать сервисы снаружи кластера т.е. зайти по внешнему ip на них не могу wait response и все внутри куба ответ есть

думал yaml косячный у меня, проверил на дашборде_, тоже перестал работать

Rinat
08.08.2017
08:58:54
Нет

Service loadbalancer

Igor
08.08.2017
09:01:18
Service loadbalancer
Ого, эту штуку используют? ?

она вроде как - брошенный проект

альтернатив понавыпускали типа appcode/voyager

Rinat
08.08.2017
09:06:46
хз в доках нету про depricated

Google
Rinat
08.08.2017
09:06:48
https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors

Denis
08.08.2017
09:25:57
А нужно какие нибудь особые tolerations прописывать для DS, чтобы он точно и всегда был запущен на всех нодах? Или это уже из коробки?

Rinat
08.08.2017
10:04:13
вопрос)) а как ingress понимает какой ip использовать? делает резолвинг ?

Igor
08.08.2017
10:32:52
Пример: на мастере стоит node-role.kubernetes.io/master=true:NoSchedule Чтобы туда DS задеплоил, надо: tolerations: - key: node-role.kubernetes.io/master value: "true" effect: NoSchedule

Dmitry
08.08.2017
10:59:49
Ребят, раз уж вопрос о ingress возник. Такой кейс: есть helm чарт в проде с ингрессами и kube-lego. Хочу на minikube его перенести для разработки и тестов. Как без отключения tls секции его перенести? или слишком много хочу?

Ivan
08.08.2017
11:42:30
if-чиком в чарте?

Роман
08.08.2017
12:03:06
Если у пода нет доступа в интернет - куда смотреть?

Artem
08.08.2017
12:26:05
какой оверлей?

фланель-калико-чтотоеще?

Роман
08.08.2017
12:30:10
какой оверлей?
Разобрался. Всё обстоит хуже. Это докер в докере. У контейнера в контейнере нет интернета. Ему можно сделать —net=host. Но это сложный очень путь. Я по другому сейчас пробую.

Artem
08.08.2017
12:30:46
ты внутри пода запускаешь докер и там внутри интернета нет?

Paul
08.08.2017
12:32:30
Alexandr
08.08.2017
12:33:02
Привет всем! Есть вопрос по TCP настройке. У меня веб приложение работает по http 80 и вебсокету. Эта часть работает нормально через ingress. Но в этом же приложении есть tcp server (port: 6666). Который не понимаю как выпихнуть его наружу. Может кто - то подскажет как это сделать? Могу расшарить конфиги посмотреть если это чем - то поможет. Не могу как - то нагуглить как сделать.

Если сделать port-forward и потом через telnet то подключается

Kaspar
08.08.2017
12:33:42
шарь

Alexandr
08.08.2017
12:36:14
https://gist.github.com/oivoodoo/bc047b48a1b31ba019f2b420c03636b4

Google
Alexandr
08.08.2017
12:36:40
nodePort
ок попробую почитать документацию про NodePort. спасибо

Artem
08.08.2017
12:46:39
Ага.
может быть подкрутить попробовать iptables? замаскарадить все по ступеням

хотя, кажется, попробовать вообще убрать второй докер будет быстрее

Admin
ERROR: S client not available

Alexandr
08.08.2017
13:18:38
nodePort
Работает, спасибо большое!

Роман
08.08.2017
13:57:25
йа тебе сюда https://docs.gitlab.com/runner/configuration/autoscale.html#distributed-runners-caching
Не получается. Который день мучаюсь уже. Какие там нюансы?

Paul
08.08.2017
14:23:46
Не получается. Который день мучаюсь уже. Какие там нюансы?
не получается - это плохое описание проблемы

Роман
08.08.2017
14:28:31
не получается - это плохое описание проблемы
Более подробно: Вот часть конфига раннера: [runners.kubernetes] namespace = "gitlab" privileged = true image_pull_secrets = ["deploy-robot"] [[runners.kubernetes.volumes.host_path]] name = "docker-socket" mount_path = "/var/run/docker.sock" host_path = "/var/run/docker.sock" [runners.kubernetes.node_selector] gitlab-runner = "true" Деплоймент - самый обычный, там в нём просто инструкция запустить образ и примонтировать hostPath с этим конфигом. Получается следующее: раннер создаёт три контейнера в поде. Один из них (srv-0) сразу же падает с ошибкой: can't create unix socket /var/run/docker.sock: device or resource busy Второй, который build, пытеется собрать мой проект, но не может, так как route -n в нём показывает дефолтный шлюз - 169.254.1.1 и никакие сервисы недоступны (не пингуются). Однако днс резолвит адреса из внешнего интернета.

В связи с этим вопрос: как заставить раннер не монтировать docker.sock в контейнер svc-0, но монтировать в контейнер build?

Artem
08.08.2017
19:10:16
поправь host_path

а у тебя в поде два контейнера ?

тьфу

сорри протормозил

kvaps
08.08.2017
23:13:51
а кто-нибудь может объяснить зачем сервисам типа nodePort вообще нужен параметр clusterIP?

Paul
08.08.2017
23:56:36
а если у вас несколько внешних ип? вот для этого и нужен

причем, как я понимаю, он маршрутизирует к нужному контейнеру сам - у меня работал сервис с IP одного сервера, но с контейнером на другом

Vasiliy
09.08.2017
00:56:28
хм, а в каком чатике можно обсудить закон о защите персональных данных (типа что надо их хранить на территории РФ)? я так понял придется отказываться от google cloud platform если хранишь/обрабатываешь персональные данные. хотя у меня только телефон хранится, но сим-карты привязываются к паспорту гражданина РФ сейчас, и хз можно ли считать номер моб. телефона персональными данными, мне вот говорят, что да (ну и инфа из открытых источников это подтверждает)

Lev
09.08.2017
01:40:15
Просто номер?) или номер и имя?

[Anonymous]
09.08.2017
01:54:07
@luxmoney38 - Слив лучших платных архивов: курсов-тренингов-мануалов! Сливаем все, за что раньше приходилось платить. Вся информация БЕСПЛАТНО в одном месте! ?Чекнуть всем! https://t.me/luxmoney38

Yury
09.08.2017
06:22:42
А есть возможность описать сервис, который будет смотреть не внутрь кластера а на внешние сервисы. Ну чтобы откликался по днс, но эти сервисы не в кластере?

Google
Artem
09.08.2017
06:27:13
Да, запросто, например можно описать сервис для бд, которая на внешнем хосте вне в кластере

Yury
09.08.2017
06:40:38
ну единственное что подходит это ExternalName, но а мне надо чтобы адреса и round-robin

Artem
09.08.2017
07:44:01
https://kubernetes.io/docs/concepts/services-networking/service/#external-ips

Yury
09.08.2017
07:59:32
https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
ну это опять же не в ту сторону, насколько я понимаю. Нашёл решение с https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors и вручную созданными Endpoints как раз на внешние адреса

kvaps
09.08.2017
08:10:58
а если у вас несколько внешних ип? вот для этого и нужен
То есть правило форварда будет настроенно с externalIP именно на на clusterIP а с clusterIP уже на сервис, верно?

Artem
09.08.2017
08:12:46
Я видимо не понимаю кейза использования

kvaps
09.08.2017
08:12:49
Тогда я хоть убей, не понимаю назначения сервисов с типом nodePort, потому что сервисы типа clusterIP делают ровно тоже самое, но в добавок разрешают использовать привелигерованные порты

причем, как я понимаю, он маршрутизирует к нужному контейнеру сам - у меня работал сервис с IP одного сервера, но с контейнером на другом
А где конкретно этот clusterIP должен висеть? (я имею ввиду сам IP'шник) Где-то на ноде или внутри какого-то контейнера? - или он чисто dummy и есть только его упоминание в правилах ip-tables?

Paul
09.08.2017
08:26:09
Просто номер?) или номер и имя?
Проблема в том, что сейчас персональными данными считается уже все. Включая логин

Lev
09.08.2017
08:27:10
если я заполню таблицу 12 значными числами, то это будет считаться персональной информацией?)

Paul
09.08.2017
08:50:34
если я заполню таблицу 12 значными числами, то это будет считаться персональной информацией?)
как я понял взбрык нашего правительства - если вы - нет. Если пользователи – да.

Роман
09.08.2017
10:47:10
Кто разворачивает куб при помощи kubespray? Как там указать внутреннюю сеть между нодами? Чтобы не через интернет работали, а через свич. При этом ингресс-контроллеры должны смотреть в интернет...

ivan
09.08.2017
11:02:05
юзать переменную cloud_config

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