@kubernetes_ru

Страница 58 из 958
Alexander
20.09.2016
10:55:30
Да. теперь надо курить остальные доки и api

пишу свою обертку для развертывания

Maxim
20.09.2016
10:58:52
может стоит посмотреть на helm/deis пока не поздно?

Тимур
20.09.2016
11:11:04
а это кто-то юзает ?

Google
Maxim
20.09.2016
11:11:20
ну тут вроде есть любители

просто это уже готовый велосипед

Alexander
20.09.2016
11:11:59
хмм

надо будет тоже посмотреть

Не совсем то что нужно. Но код можно посмотреть.

Maxim
20.09.2016
11:43:57
Еще spread

https://github.com/redspread/spread

в общем есть из чего выбрать

Andrey
20.09.2016
12:49:28
философские размышления: если разделять неймспейсы на staging/production - имеет ли смысл иметь одинаковые названия configmap в них? вроде как удобно, а ну как перепутаешь и пошлешь тестовый трафик на прод :(

Maxim
20.09.2016
12:50:24
гггг

у меня неймспейсы попроектные

Andrey
20.09.2016
12:50:53
да, наверное так правильнее

Maxim
20.09.2016
12:51:01
конфигмапы для одинаковых компонентов одинаково называются

Google
Fike
20.09.2016
12:52:58
я вообще не рассматривал вариант делать разные окружения в одном кластере

Maxim
20.09.2016
12:53:13
+1

Andrey
20.09.2016
12:53:20
документация кубернетеса рассматривает

не а че, несколько кластеров городить?

Fike
20.09.2016
12:53:44
я про то, что физически можно, но я этим пользоваться не буду

да

Fike
20.09.2016
12:54:00
тем более что в gke через баш довольно легко создается/прибивается

я исходил из того, что вся эта штука с самого начала должна удовлетворять phoenix server фаулера

Andrey
20.09.2016
12:54:38
с одним бы разобраться... слишком много сущностей, у меня переполнение информацией, пойду в угол забьюсь

Maxim
20.09.2016
12:54:45
ггг

kay
20.09.2016
13:29:27
Коллеги, есть проблемка. nginx deployment хостит статику с hostPath и привязан к конкретному хосту. решил обновить. запилил новую версию образа контейнера. теперь имею вечный Pending и вечный Terminating. в events logs всё ок: 2016-09-20T13:07:00Z 2016-09-20T13:07:00Z 1 nginx-2905510493-rodsr Pod Normal Scheduled {default-scheduler } Successfully assigned nginx-2905510493-rodsr to ubuntu3

не связано ли это с тем, что один и тот же hostpath не отдается двум работающим подам? и как этого избежать?

Maxim
20.09.2016
13:30:04
связано

сейчас уже только docker kill

kay
20.09.2016
13:30:29
это не наш метод

а как сделат ьтак, чтобы в будущем конфликта не было?

Fike
20.09.2016
13:30:57
я опять залезу со своими дурацкими советами, но если там не пользовательская статика, то, может, просто вкомпилить ее в докер-образ?

kay
20.09.2016
13:30:59
это ж статика

Maxim
20.09.2016
13:31:00
а в дальнейшем - либо не делай роллинг-апдейтов, либо тип доступа к шаре на read-write-many поменяй

Google
kay
20.09.2016
13:35:22
вот жешь... HostPath судя по табличке поддерживает только ReadWriteOnce

http://kubernetes.io/docs/user-guide/persistent-volumes/

Maxim
20.09.2016
13:35:59
ну тогда сначала останавливай старый под, потом поднимай новый :(

kay
20.09.2016
13:36:07
даунтайм

Maxim
20.09.2016
13:36:36
ну никак по-другому же

роллинг-апдейт сначала запускает

а старый еще работает

а новый уже пытается смонтировать

а низзя

дедлок

то есть вот это именно красивый, классический дедлок

прям по мануалу

Тимур
20.09.2016
13:43:25
кстати статику в образ - вполне себе вариант иногда

Maxim
20.09.2016
13:43:50
у меня так с blog.amplifr.com, например

там статика вся прям в образе

но она не меняется от деплоя к деплою

мы ж не знаем, как там у @kay_rus

может у него в эту папку куча демонов срут статикой онлайн

kay
20.09.2016
13:44:43
такое тоже может быть

ну зашибись. теперь еще и docker не отвечает =\

Google
Fike
20.09.2016
13:47:14
логи?

Maxim
20.09.2016
13:47:27
ооо

kay
20.09.2016
13:47:56
а ничего в логах.

Maxim
20.09.2016
13:48:00
агада

kay
20.09.2016
13:48:01
status alive

Maxim
20.09.2016
13:48:06
ты скорее всего поймал https://github.com/docker/docker/issues/13885

kay
20.09.2016
13:48:07
висит и всё

да нет у меня high load )

Admin
ERROR: S client not available

Maxim
20.09.2016
13:48:19
у меня прошлой ночью такое было

да у меня тоже нет

бородатые докерописатели просят килять демона с USR1 и присылать им трейс

Maxim Filatov @lk4d4 смотри, какая штука: # strace -p 16080 Process 16080 attached read(37, "<probe> ERRO: 2016/09/18 20:34:2"..., 32768) = 156 futex(0x2a69030, FUTEX_WAKE, 1) = 1 futex(0x2a68f70, FUTEX_WAKE, 1) = 1 futex(0xc8203fb508, FUTEX_WAKE, 1) = 1 write(38, "{\"log\":\"\\u003cprobe\\u003e ERRO: "..., 236) = 236 read(37, "<probe> ERRO: 2016/09/18 20:34:3"..., 32768) = 156 futex(0x2a69030, FUTEX_WAKE, 1) = 1 futex(0x2a68f70, FUTEX_WAKE, 1) = 1 futex(0xc8202fe108, FUTEX_WAKE, 1) = 1 write(38, "{\"log\":\"\\u003cprobe\\u003e ERRO: "..., 236) = 236 read(37, "<probe> ERRO: 2016/09/18 20:34:4"..., 32768) = 156 futex(0x2a69030, FUTEX_WAKE, 1) = 1 futex(0x2a68f70, FUTEX_WAKE, 1) = 1 futex(0xc82002ad08, FUTEX_WAKE, 1) = 1 ну и так в цикле 16080 - это /usr/bin/dockerd docker ps висит вечность в логе демона девственная чистота куда копать-то вообще? Maxim Filatov похоже на https://github.com/docker/docker/issues/13885 на всякий случай написал туда Alexander Morozov @bregor надо SIGUSR1 послать и трейс ещё собрать. Там по ходу миллиард причин может быть Ещё надо dmesg проверить Maxim Filatov блин, я несколько часов назад все расстрелял :disappointed: уже нельзя было ждать дальше а почему USR1? Alexander Morozov Ну это все равно не фикс Но оно тогда трейс горутин выдаёт Посмотрели бы что висит Короче там что-то зависает, может netlink или volume driver И просто мьютекс занят из-за этого А ps пытается у каждого контейнера залочить мьютекс

kay
20.09.2016
14:26:39
оказалось враки

такбличка неправильна. http://kubernetes.io/docs/user-guide/persistent-volumes/

можно запилить: apiVersion: v1 kind: PersistentVolume metadata: name: media-prod-ng labels: type: local app: icp icp: media namespace: prod-ng spec: capacity: storage: 20Gi accessModes: - ReadWriteMany hostPath: path: /localdata/media

Maxim
20.09.2016
14:28:22
у тебя неймспейс в метки съехал

или это метка такая?

kay
20.09.2016
14:28:33
метка такая

ибо нельзя pv к namespace привязывать

Google
Maxim
20.09.2016
14:28:50
кстати да

pvc можно, а pv - нельзя

kay
20.09.2016
14:32:36
так вот. accessModes нельзя прописать к volume в описании самого пода. потому что принимается всего одно значение "Path": https://github.com/kubernetes/kubernetes/blob/6a9a93d46954f69c8736a51cf6a8f073a962ad25/pkg/api/v1/types.go#L537 а если это значение не прописано, то host_path автоматом ставит ReadWriteOnce: https://github.com/kubernetes/kubernetes/blob/6a9a93d46954f69c8736a51cf6a8f073a962ad25/pkg/volume/host_path/host_path.go#L94

не хотелось костыли с claim+volume сторить

строить*

но пришлось

Maxim
20.09.2016
14:34:32
так и как в итоге сделал?

kay
20.09.2016
14:35:11
через описание ReadWriteMany в pv + claim. а под уже этот claim использует

Maxim
20.09.2016
14:35:41
ну так вроде бы это the only way, не?

как ты хотел без этого сделать?

kay
20.09.2016
14:37:05
вот так: - deployment: - pod description: volumes: - name: media-persistent-storage hostPath: path: /localdata/prod-ng/media accessModes: - ReadWriteMany

Maxim
20.09.2016
14:37:26
ааа

kay
20.09.2016
14:37:34
но в данном слачае api принимает на вход только hostpath с path. и всё

Тимур
20.09.2016
14:37:42
мол если локальный стор то и нефиг claim ?

kay
20.09.2016
14:37:48
ну да

без правки сорцов никак

Maxim
20.09.2016
18:11:46
https://docs.google.com/document/d/1Q2juTrM_oA5SatVCbLoal0k68dGaiH5ON_VVI5-ns9g/edit

коллеги, это обязательно нужно прочитать

Тимур
20.09.2016
18:34:06
спасибо!

Maxim
20.09.2016
19:19:59
https://github.com/kubernetes/dashboard/releases/tag/v1.4.0

Dmitriy
21.09.2016
06:49:37
Кто какие message queue использует? Что бы кластеризовались нормально в kubernetes и была поддержка авторизации, для того что бы можно было снаружи доступ открыть. Сейчас у нас используется gearman и он ни то ни другое не умеет

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