
Алексей
16.10.2018
13:19:10
задача собеседования - понять 2 вещи
1) может ли человек решать задачи под которые его берут
2) будет ли остальным комфортно с ним работать
или я не прав?

kvaps
16.10.2018
13:19:34

Алексей
16.10.2018
13:20:48

Google

Алексей
16.10.2018
13:20:59
спросить простенькие вещи
дать простую задачку
послушать уточняющие вопросы
перейти на более высокие уровни абстракции
поговорить за жизнь ))

Konstantin
16.10.2018
13:21:08
или я не прав?
Прав конечно. Но ведь всех когда то просили подготовить список вопросов для кандидатов... Появился же как то tcp vs udp, как включается linux итп

Vadim
16.10.2018
13:21:10

Alexander N.
16.10.2018
13:21:19
Да все подряд
Раз все подряд - в первую очередь надо смотреть как человек мыслит, а конкретную тулзу всегда можно выучить. Если с порога кандидат говорит "все у вас ху... надо так" или "нахер логи собирать я и так посмотрю их" - повод отправить в пешее

Dmitriy
16.10.2018
13:22:56
Тип сервиса ClusterIP обеспечивает балансировку нагрузки? Или только отказоустойчивость?

Konstantin
16.10.2018
13:23:48

Алексей
16.10.2018
13:23:59
базовые вопросы по протоколам и работе linux
никто не отменял
потом pod, deploy, sts...
способы конфигурирования configmap secrets...
ingress
способы расширения функционала (crd ...) причем сюда лучше выводить уже с задачи которую влоб не решитью

Alexander N.
16.10.2018
13:24:30
вы в любом случае первые пару месяцев человека не подпустите к более-менее боевым кластерам, за это время можно вполне базово выучить человека даже с нуля.

Konstantin
16.10.2018
13:25:46
Ладно, всем большой лайк, тут столько накидали, что и самому есть что почитать теперь ?. Спасибо большое
Если что то получится, поделюсь

Let Eat
16.10.2018
13:26:31
У нас туева куча логики на jsonnet: проверить конфликт DNS, сгенерировать ямлы для бекапа, развесить лейблы согласно полиси, прописать network policy к задекларированным зависимостям (и обратно), автовыбор storageclass по требуемым фичам и черти что еще, при этом у разработчиков полная свобода модифицировать ямлы сгенерированные из наших компонентов при помощи их собственного jsonnet "скрипта", который подцепляется при деплое, если что-то они сделают, что выйдет за пределы наших ожиданий, то валидаторы (написанные на jsonnet) просто не дадут сгенерировать ямлы и скажут разработчикам где они неправы. Jsonnet это больше чем шаблонизатор, на нем можно писать развесистую логику

Anton
16.10.2018
13:26:54

bebebe
16.10.2018
13:27:01
У нас туева куча логики на jsonnet: проверить конфликт DNS, сгенерировать ямлы для бекапа, развесить лейблы согласно полиси, прописать network policy к задекларированным зависимостям (и обратно), автовыбор storageclass по требуемым фичам и черти что еще, при этом у разработчиков полная свобода модифицировать ямлы сгенерированные из наших компонентов при помощи их собственного jsonnet "скрипта", который подцепляется при деплое, если что-то они сделают, что выйдет за пределы наших ожиданий, то валидаторы (написанные на jsonnet) просто не дадут сгенерировать ямлы и скажут разработчикам где они неправы. Jsonnet это больше чем шаблонизатор, на нем можно писать развесистую логику
бохато звучит

Google

bebebe
16.10.2018
13:27:27
но обычно это делается CI частью, на pull request, или на коммит, CI не прошел, тютю
не совсем понятно зачем этот нишевый продукт.

Алексей
16.10.2018
13:28:00
я бы глянул пример чегонить jsonnet...
с логикой
любопытно

bebebe
16.10.2018
13:28:15

Alexey
16.10.2018
13:28:23

Andor
16.10.2018
13:28:44
там разве развесистое?

Alexey
16.10.2018
13:29:22
не кисло для одно проекта

Andor
16.10.2018
13:29:36
вот все говорят что ksonnet/jsonnet хорошие
открываешь первый попавшийся файл, а там:
local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
_config+:: {
namespace: 'monitoring',
},
};

Alexey
16.10.2018
13:30:02
ну вот это и суть jsonnet
kube-prometheus/kube-prometheus.libsonnet либа, как в любом языке.

Andor
16.10.2018
13:30:43
я не про импорт, а про то, что далее
_config+:: это чоа

Alexey
16.10.2018
13:31:23
kube-prometheus.libsonnet в том же проекте и там ниже уже мясо
https://github.com/coreos/prometheus-operator/blob/master/contrib/kube-prometheus/jsonnet/kube-prometheus/kube-state-metrics/kube-state-metrics.libsonnet

Anton
16.10.2018
13:32:20

Andor
16.10.2018
13:32:34
хз
не очень понятно

Alexey
16.10.2018
13:32:39
https://github.com/ksonnet/ksonnet-lib
тут примеры вроде получше

Google

Sergei
16.10.2018
13:33:24
а в чем проблема с пониманием того, выкатилось helm'ом успешно или нет? можно же просто статус деплойментов проверить и всё. ну если хелзчеки написаны норм. но хелзчеки в любом случае лучше адекватно писать

Andor
16.10.2018
13:33:59
самому приверять?
глазками?

Sergei
16.10.2018
13:34:38
ну я например на питоне юзал кубернетес клиент. там 5 строк получается
можно и просто kubectl

Let Eat
16.10.2018
13:34:49
я бы глянул пример чегонить jsonnet...
с логикой
Ну вот например надо им подцепиться к зависимости , они пишут "v1.resolveRelation(anotherApp)" и при деплое в зависимости от того где они деплоя подставляется или сервис из нужного окружения или ингресс из другого кластера + сразу прописывается network policy чтобы доступ был (по умолчанию все перекрыто даже внутри одного неймспейса). На этой штуке сделаны то что я назвал "sheaf" - связка приложений. Надо что то потестировать , деплоим все приложения в новый sheaf вообще без изменений кода/конфигов, внутри resolveRelation() поймет куда деплоим, выдаст нужные значения. По умолчанию sheaf создаётся по имени бранча , но можно явно указать. Разрабы под демо, отработки багов, перф тесты и вообще чего попало создают эти sheafs ,я про это ничего не знаю даже и им код никакой писать не надо тоже

Andor
16.10.2018
13:35:02
то что манифест пошёл применяться - не значит, что деплоймент у тебя выкатится

Let Eat
16.10.2018
13:36:11

Алексей
16.10.2018
13:36:16
У нас туева куча логики на jsonnet: проверить конфликт DNS, сгенерировать ямлы для бекапа, развесить лейблы согласно полиси, прописать network policy к задекларированным зависимостям (и обратно), автовыбор storageclass по требуемым фичам и черти что еще, при этом у разработчиков полная свобода модифицировать ямлы сгенерированные из наших компонентов при помощи их собственного jsonnet "скрипта", который подцепляется при деплое, если что-то они сделают, что выйдет за пределы наших ожиданий, то валидаторы (написанные на jsonnet) просто не дадут сгенерировать ямлы и скажут разработчикам где они неправы. Jsonnet это больше чем шаблонизатор, на нем можно писать развесистую логику
т.е. ты описал кучу велосипедов которые никак нельзя масштабировать на использование за пределы вашей компании?

Vadim
16.10.2018
13:36:45

Let Eat
16.10.2018
13:38:07
При этом у меня рантайм стоковый куб, там ломаться нечему - ни истио, ни admission /mutating admission controller, ну других мутотений, которые "решают проблему в масштабе" .

Andor
16.10.2018
13:41:42
Как у тебя скучно :(

Алексей
16.10.2018
13:41:55

Andor
16.10.2018
13:42:00
Никакого праздника

Maxim
16.10.2018
13:42:11

Алексей
16.10.2018
13:43:01
ksonnet - кто-то использует?

Andor
16.10.2018
13:46:04
И ты не пишель свои деплойменты на нём, а юзаешь только сандартные?

Алексей
16.10.2018
13:46:39

Google

Andor
16.10.2018
13:46:49
Тебе привели аналог

Алексей
16.10.2018
13:47:21

Andor
16.10.2018
13:47:47
ksonnet, построенный на jsonnet, да
Что по-твоему есть "велосипедостроение"?

Алексей
16.10.2018
13:48:32

Andor
16.10.2018
13:49:20
Говоришь в чяте кубера про jsonnet - подразумеваешь ksonnet и наоборот

Vadim
16.10.2018
13:49:57
>Если подобных хельму приложений нет, то какой бы он гавно не был, он един в своём роде
Он сукин сын, но он наш сукин сын!

bebebe
16.10.2018
13:50:32
в целом интернете нет больше хелм-хейтеров чем в этом чатике

Алексей
16.10.2018
13:50:32

bebebe
16.10.2018
13:50:37
возможно это хелмо-боты....
проплаченные

Andor
16.10.2018
13:50:50

Let Eat
16.10.2018
13:51:38

Vadim
16.10.2018
13:51:54

Andor
16.10.2018
13:52:28
А хельм3 обещают с луа
Ну не велосипед ли?
А хельм2 вообще на голанг написали, велосипедище

Алексей
16.10.2018
13:52:56
И в ksonnet нету jsonnet?
не путай тёплое с мягким. Было чётко сказано, что jsonnet решит все проблемы. Я спрашивал про приложение, а не про язык. Мне пофиг, пусть хоть руби там под капотом. Мне нужен интерфейс для работы, а не язык.
Так что не придирайся. Если ksonnet так хорош как его малюют, то я с ним ознакомлюсь. Благодарю за наводку.

Andor
16.10.2018
13:53:20
На руби есть mortar

Google

Алексей
16.10.2018
13:54:02
Да сейчас поискал много чего есть оказывается.

Andor
16.10.2018
13:54:42
И каждый инструмент по-своему плох

Let Eat
16.10.2018
13:55:49
Хочу jsonnet с типами, что то навроде dhall kubernetes, но погибче

Алексей
16.10.2018
14:01:10
For Helm v3, I would like the template expansion/rendering mechanism to be moved to external plugins -- no built-in template formats.
Из обсуждения про добавление jsonnet в helm

Михаил
16.10.2018
14:02:01

kvaps
16.10.2018
14:02:04
а у калики какая-то своя реализация сервисов?

Михаил
16.10.2018
14:02:16

bebebe
16.10.2018
14:05:56
может такое даже есть

kvaps
16.10.2018
14:07:00
alias ping=curlхехе

bebebe
16.10.2018
14:07:44
кстати, хозяйке на заметку, curl умеет так: curl telnet://ip:port/

Andor
16.10.2018
14:07:57
Кстати, а есть кто себе ipv6 завёл в кубере?

kvaps
16.10.2018
14:08:33

Andor
16.10.2018
14:09:42
Вообще

Михаил
16.10.2018
14:10:00

Andor
16.10.2018
14:10:11
Ну например

Михаил
16.10.2018
14:10:56

Fike
16.10.2018
14:11:06

Vadim
16.10.2018
14:11:38