@kubernetes_ru

Страница 107 из 958
Paul
15.12.2016
12:15:23
а можно еще и статью в блог, чтобы для гугла не пропало

Andrey
15.12.2016
12:15:39
1) почему база падает иногда: кластер может разваливается (в текущей редакции, пока я не разобрался как правильно настроить) если на ноде закончилась оперативная память и процесс OOM killer убил инстанс монги: http://shtsh.blogspot.com/2012/04/oom-killer.html в этом случае процесс монги убивается/перезапускается в нормальном сетапе после этого инстанс базы должен снова войти в кластер, но проблема в том что происходит следущее: в кластере он прописан как mongo1.svc.cluster.local а по факту у него другой хостнейм, и из-за этого его не пускают в кластер таким образом, не войдя в кластер, инстанс переходит в сингл-режим если упал слейв то косяк но некритичный - кластер продолжит работать без него но если упал мастер - то все распадается, потому что оставшися не хватает кворума чтобы выбрать нового мастера 2) что в этом случае надо сделать: - получаешь список всех подов с монгой: $ kubectl —namespace=software get pods | grep mongo - заходишь на те которые выпали и насильно вводишь их в кластер: $ kubectl —namespace=software exec -it mongo1-rs-z70gq mongo MongoDB shell version v3.4.0 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.4.0 Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see http://docs.mongodb.org/ Questions? Try the support group http://groups.google.com/group/mongodb-user rs0:OTHER> use admin switched to db admin rs0:OTHER> db.auth({user: 'admin', pwd: 'oDBABVsb'}) 1 rs0:OTHER> var conf = rs.conf() rs0:OTHER> rs.reconfig(conf, {force: true}) { "ok" : 1 } rs0:OTHER> rs0:SECONDARY> обрати внимание: с OTHER статус изменился на SECONDARY - это значит он вошел в кластер и выбрал себе роль (а значит мастер уже появился)

пароль ессно не настоящий если что :) и там где про кластер когда говорю имею ввиду репликасет

Fike
15.12.2016
12:18:47
на выпадении мастера с двумя репликами кворума должно хватать :\

Google
Andrey
15.12.2016
12:20:02
а вот нет почему-то

я тоже думал

Vladimir
15.12.2016
12:29:33
может быть проблема в том, что у них голосов нету или приорити одинаковое?

Andrey
15.12.2016
12:30:10
приорити одинаковое... это bad practice?

Vladimir
15.12.2016
12:35:02
" If both Nodes B & C have the same priority, then the one who is most up to date in respect to the failed primary (oplog) wins" - а нет, сорри, это не важно

Fike
15.12.2016
12:53:41
я тоже видел что-то такое про равную приорити

Alexandr
15.12.2016
12:55:47
Странный вопрос - хочу на ноуте поработать с kubernetes. Никто не знает удобный для этого?

Vladimir
15.12.2016
12:58:09
есть вот такой проект, но я не пробовал https://github.com/kubernetes/minikube

Ihor
15.12.2016
13:05:12
да, верная ссылка

Alexandr
15.12.2016
13:07:19
Спасибо, попробую

Zon
15.12.2016
13:48:01
Можно сделать инит, который проверит, что там с кластером

Andrey
15.12.2016
13:57:03
rs.initiate() при каждом старте пода?

Zon
15.12.2016
13:57:42
rs.initiate() при каждом старте пода?
можно проверить статус, попытаться задискаверить другие, если никого нет - инициировать

Google
Igor
15.12.2016
14:29:05
а можно еще и статью в блог, чтобы для гугла не пропало
С помощью teleg.am или как этот сервис называется

Paul
15.12.2016
14:55:38
где же обещаная простыня? :)

Andrey
15.12.2016
15:19:06
Наволочка )

Paul
15.12.2016
15:19:45
кстати, коллеги, использует ли кто в качестве ингресса трэфик? как там делается базовая авторизация для конкретного хоста? не смог найти

или мне самому придется наволочку писать?

Denis
15.12.2016
15:50:41
А зачем тебе traefk?

Igor
15.12.2016
15:52:15
http://kubernetes.io/docs/admin/authorization/

Role-Based Access Control

Paul
15.12.2016
15:55:20
When specified “RBAC” (Role-Based Access Control) uses the “rbac.authorization.k8s.io” API group to drive authorization decisions, allowing admins to dynamically configure permission policies through the Kubernetes API. As of 1.3 RBAC mode is in alpha and considered experimental для сильных духом

Igor
15.12.2016
15:57:33
в k8s половина фичей в альфе или бетте

Paul
15.12.2016
15:58:23
бета меня не пугает

а вот альфа смущает слегка

Igor
15.12.2016
15:59:44
все относительно, иногда альфа, это просто не полная реализация задуманного, но реализовано хорошо

Ihor
15.12.2016
16:52:34
Как мейнтейнер фич в Kubernetes, могу обратить внимание на https://github.com/kubernetes/features/issues - все фичи начиная с 1.4 трекаются тут

Andrey
15.12.2016
16:54:02
а кто знает когда в гугле 1.5 появится?

Ihor
15.12.2016
16:54:34
Можно сортировать по milestones и labels. Сейчас там правда не все фичи отображают корректный статус (в период между релизами ряд фич переходят в 1.6, некоторые - нет), но скоро это будет пофикшено

Andrey
15.12.2016
16:54:48
в плане сколько обычно проходит времени между релизом и обновлением в google: день, неделя, месяц... примерно )

Google
Ihor
15.12.2016
16:56:54
@vkfont https://drive.google.com/file/d/0B7nkS0ZWjVOpLVlRdFpkeWpwTlk/view?usp=sharing

Andrey
15.12.2016
16:57:31
спс

Denis
16.12.2016
13:58:38
Так а два мастера в Kubernetes уже нормально поднимается?

Stanislav
16.12.2016
14:02:17
Igor
16.12.2016
14:06:30
меньше трех в продакшине смыслв нет

иначе никакого HA

Stanislav
16.12.2016
14:07:46
меньше трех в продакшине смыслв нет
Как там про галеру писали - больше дровишек в топку ;)

Igor
16.12.2016
14:08:52
не, ну тут не совсем так, сплит брэйн маловероятен

Stanislav
16.12.2016
14:09:15
Ну два то совсем не варич

Igor
16.12.2016
14:09:51
да вариант для HA, один лег, второй на подхвате - лучше три

а вот ETCD лучше 3 минимум

а то есть шанс конфиги потерять

Denis
16.12.2016
14:15:50
но K8s не поддерживал раньше же несколько мастеров

Они как раз в декабре обещали зарелизить апдейт с поддержкой нескольких

Igor
16.12.2016
14:17:07
Может путаете multimaster и federation?

Paul
16.12.2016
14:17:26
федерация в бете, хотя Хайтауэр выкладывал ман

Andrey
16.12.2016
19:15:04
глупый вопрос: а в GKE можно как-то названия компов поменять?

никак не могу запомнить хосты типа "gke-staging-default-pool-25526cbd-190k" :)

Google
Paul
16.12.2016
19:20:31
можно, через hostname

Andrey
16.12.2016
19:46:15
я так думаю гугль немножко по другому действует: как минимум при обновлении кластера инстансы пересоздадутся и хостнейм потеряется, а остальные вещи я даже боюсь предсказать

Paul
16.12.2016
23:07:41
может, человек не любит метки

Denis
16.12.2016
23:15:34
Andrey
17.12.2016
06:09:13
А зачем тебе они?)
в кластере монги хосты юзаются для связи... некритично, но к конфиге выглядит не юзер-френдли )

Admin
ERROR: S client not available

Sander
17.12.2016
14:58:19
Всем привет, нужна ваша помощь, чтоб я смог понять. есть NodePort, я как понимаю, его следует указывать только если, ты хочешь достучаться до приложения, вне кластера по http(s) протоколу. я получаю вот такую ссылку в итоге: http://10.245.1.3:30892/ которая открывает мое веб приложение. но как быть с портом 30782? его надо же как-то на 80 порт перекидывать? Чтоб ссылка открывалась без порта.

Zon
17.12.2016
15:04:33
Можно использовать балансировщик внешний от клауд провайдера или свой поставить, например haproxy или nginx

Sander
17.12.2016
15:04:53
понятно, значит поверх этого всего еще нужен nginx

ехх

Zon
17.12.2016
15:05:51
Можно и на 80 порт закинуть, но тогда много приложений на ноде неудобно

Sander
17.12.2016
15:06:37
я ищу способ все токи как автоматизировать процесс

еще один вопрос, который я хотел задать.

2) в k8s, есть kind: Deployment я так понимаю что он одновременно позволяет создать, replicas и делать deploy в эти replicas. 3) есть еще rc(replication controller) и rs (replica sets), если я правильно понимаю но rs, это какое-то новое поколение команд, и rc в принципе больше нет смысла использовать.

@zon_orti

Zon
17.12.2016
15:11:59
Да, лучше использовать деплойменты, ибо они выкатывают новый репликасет

Sander
17.12.2016
15:12:17
2) понял и 3

?

Zon
17.12.2016
15:12:38
?

Google
Sander
17.12.2016
15:13:05
вроде rc даже не работает с kind deployment

так что скорей это к 2 вопросу

Zon
17.12.2016
15:13:29
Репликасет - низкоуровневая абстракция под деплойментом

RC не нужны уже

Sander
17.12.2016
15:14:06
ага

понял

В общем все понятно

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

есть ли что-то магическое, как это сделать

Zon
17.12.2016
15:16:23
Не проверял, но https://github.com/kubernetes/contrib/tree/master/service-loadbalancer

Sander
17.12.2016
15:16:24
чтоб не было гемороя с портами

Zon
17.12.2016
15:16:47
Если тебе хостер балансировку не даёт

Sander
17.12.2016
15:17:08
я не знаю где эта балансировка может быть у хостера

digital ocean?

Zon
17.12.2016
15:17:55
Хм, не делал у них, вариант с хапрокси должен быть рабочим

Sander
17.12.2016
15:19:04
блин думал что все будет проще, =/

Zon
17.12.2016
15:19:57
Можно так ещё http://stackoverflow.com/questions/35884643/kubernetes-external-load-balancer-service-on-digitalocean

+ можно сделать ингресс контроллер и всё через него заводить

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