@kubernetes_ru

Страница 676 из 958
Valera
10.07.2018
11:22:30
Всем привет. А как правильно создавать deployment в определенном кластере? Допустим, есть dev, staging, production. В каждом из них хотелось бы задеплоить микросервис "app" с одинаковым dns именем "app.default.svc.cluster.local" Но kubectl create -f file.yaml --cluster=dev (и без = тоже) ругается "cluster "dev" does not exist", хотя он вполне себе есть..:(

Второй вопрос по GKE: при создании node-pool --node-taints не применяются, если использовать "gloud container clusters create", но применяются, если использовать "gloud beta container clusters create". Это так и должно быть?

использую 1.10.5-gke.0, т.е. latest stable на GKE на текущий момент

Artyom
10.07.2018
11:26:19
Может неймспейс указать?

Google
Artyom
10.07.2018
11:26:58
Или изменить кластер в .kube

Valera
10.07.2018
11:33:39
Может неймспейс указать?
нет, namespace одинаковый, кластеры разные

разобрался: set-context dev --cluster=dev + use-context dev и тд

Nik
10.07.2018
11:34:22
Народ, а куда мог пропасть /var/lib/kubelet/config.yaml?

Alex Milushev
10.07.2018
12:45:33
Привет, а кубер умеет по TPU скедулить?

Alexander
10.07.2018
12:56:54
Подскажите, ввожу токен, нажимаю логин и ничего не происходит, в чем может быть проблема?

Alexander
10.07.2018
13:05:16
такое бывает если приходишь не с локалхоста
если варианты решения проблемы?

Slava
10.07.2018
13:05:26
есть

у меня такая же проблема была

Psy
10.07.2018
13:05:42
если варианты решения проблемы?
да, по ssh прокинь порт и ходи на локалхост

Slava
10.07.2018
13:07:24
суть: дэшборд не хочет пускать по 80-му порту (ну или на какой-ты там порт прокси поднял, или ингресс наружу выставил) никого (в логах что-то такое светилось, да и респонсы в консоли браузера говорили, что токен я тебе дам, но что-то несекюрно ко мне ходишь)

Google
Slava
10.07.2018
13:08:02
дальше делаю серт letsecnrypt, создаю secret, создаю ингресс и задаю ему созданный secret

иду к дэшборду по https, авторизовываюсь по токену

вуаля!

с дефолтными сертификатами, кстати, тоже прокатывало

главное ходить к нему по https

Banschikov
10.07.2018
14:57:39
Мужики, кто юзает это у себя? https://github.com/kubernetes/charts/tree/master/stable/mongodb-replicaset

Banschikov
10.07.2018
15:14:19
В чем вопрос?
У меня проблема, что после сбоя, меняется мастер в кластере, а приложение конектится к сервису, а тот перебрасывает его на слейв-ноду. Приложение не может туда записать данные. Может чего то я не допонимаю

Andrey
10.07.2018
15:16:55
Если у Вас сверху не накручены конфиг сервера с роутерами, то вам нужно коннектится ко всем инстансам монги.

Banschikov
10.07.2018
15:21:49
Так а в прилаге в строке подключения указаны все ноды сета?
Нет. Я не совсем это понимаю как сделать. К примеру полный путь до сервиса, через который ходит до монги мое приложение. mongodb.database.svc.cluster.local

Alan
10.07.2018
15:22:51
Строка подключения как выглядит?

Вижу, что в соседнем чате уже ответили)

Banschikov
10.07.2018
15:26:13
Строка подключения как выглядит?
Кажется понял.У нас приложение коннектится к монге через pymongo. Получается там нужно это реализовывать? Да, ответили) но мне хотелось бы понять, будет ли это относится к k8s конфигурации

Alan
10.07.2018
15:28:35
Как у вас определяется адрес монги в приложении? Через конфиг/хардкод/динамически? Вопрос скорее к вашему приложению, а не куберу

Andor
10.07.2018
15:29:14
а ещё можно mongos использовать, который за тебя сам будет мастеров находить

Alan
10.07.2018
15:30:57
А в реплика-сете он есть?

Banschikov
10.07.2018
15:32:44
Как у вас определяется адрес монги в приложении? Через конфиг/хардкод/динамически? Вопрос скорее к вашему приложению, а не куберу
Определяется в переменном окружении, с которым запускается под. Т.е - name: MONGO_URL value: mongodb.database.svc.cluster.local Ну и поэтому урлу приложение идет в монгу

Alan
10.07.2018
15:33:39
Ну вот там значит все ноды сета должны быть указаны

Andrii
10.07.2018
15:35:20
{{- define "mongo.connection" -}} {{- $release := .Release.Name -}} {{- $db := .Release.Name -}} {{- $port := index .Values "mongodb-replicaset" "port" -}} {{- $replicas := index .Values "mongodb-replicaset" "replicas" | int -}} {{- $rs := index .Values "mongodb-replicaset" "replicaSet" -}} {{- $authUser := index .Values "mongodb-replicaset" "auth" "adminUserUE" -}} {{- $authPass := index .Values "mongodb-replicaset" "auth" "adminPasswordUE" -}} {{- $range := until $replicas -}} {{- printf "mongodb://" -}} {{- if $authUser -}} {{- printf $authUser -}} {{- if $authPass -}} {{- printf ":" -}}{{- printf $authPass -}} {{- end -}} {{- printf "@" -}} {{- end -}} {{- range $i, $_ := $range -}} {{- if $i -}} {{- printf ":%.0f" $port -}} {{- printf "," -}} {{- end -}} {{- printf "%s-mongodb-replicaset-%d.%s-mongodb-replicaset" $release $i $release -}} {{- end -}} {{- printf ":%.0f/%s?replicaSet=%s" $port $db $rs -}} {{- end -}} Ну и потом в env переменную. env: - name: MONGO_URL value: {{ template mongo.connection . }}

Google
Andor
10.07.2018
15:38:44
tpemltae

Andrii
10.07.2018
15:39:27
через Helm chart https://github.com/kubernetes/charts/tree/master/stable/mongodb-replicaset

tpemltae
спасибо

Banschikov
10.07.2018
15:41:28
Всем спасибо

Banschikov
10.07.2018
15:42:38
Ну вот там значит все ноды сета должны быть указаны
А если к replica set на пряму коннектится?

Alan
10.07.2018
15:43:13
Что значит напрямую?

Banschikov
10.07.2018
15:49:42
Что значит напрямую?
mongodb://db1.example.net:27017,db2.example.net:2500/?replicaSet=test

Andor
10.07.2018
15:50:38
ну вылечи

Alan
10.07.2018
15:52:10
mongodb://db1.example.net:27017,db2.example.net:2500/?replicaSet=test
Ну это и есть полная строка подключения Только лучше минимум 3 ноды делать в сете

Banschikov
10.07.2018
15:55:22
Ну это и есть полная строка подключения Только лучше минимум 3 ноды делать в сете
Да у меня 3 ноды. Это получается что мне нужно 3 разных сервиса для каждой ноды монги поднимать?

Banschikov
10.07.2018
15:58:44
https://docs.mongodb.com/manual/reference/connection-string/
Да я от туда и скинул пример выше

Andor
10.07.2018
15:58:49
вообще это не куберо-вопрос, это монго-вопрос

Admin
ERROR: S client not available

Banschikov
10.07.2018
16:01:38
Вообще я пытаюсь понять смысл работы этого хэлм чарта. И как работают с ним приложения в k8s

Andrii
10.07.2018
16:04:09
он создайот 3 пода. Тебе нужно в стирге написать их. Ето стейтфул сет. Значит все поды будут иметь одинаковые имена и инкрементальный суфикс.

Konstantin
10.07.2018
16:04:45
Вообще я пытаюсь понять смысл работы этого хэлм чарта. И как работают с ним приложения в k8s
Так разбираться нужно с тем, что ты уже умеешь готовить без куба. А так ты одновременно и Хелм и монгу пытаешься разобрать)

Banschikov
10.07.2018
16:10:03
Так разбираться нужно с тем, что ты уже умеешь готовить без куба. А так ты одновременно и Хелм и монгу пытаешься разобрать)
Нужно быстрое решение) Вот и решил заюзать этот чарт. Может чуток не правильно выразился. Я представляю как он работает. Думал как то по другому люди цепляют свои сервисы.

Andrey
10.07.2018
16:10:07
Привет. Вопрос про etcd. Периодически на лидере в journald прилетает etcdserver: failed to send out heartbeat on time и etcdserver: server is likely overloaded сейчас ему отдано 512Мб (всего на ноде 4Гб), кластер из 3-х нод, etcd:3.2.4, БД около 350Мб. В документации пишут о 8Гб, но сдается это многовато для моих текущих реалий. Если увеличу квоту до 1Гб, станет ли лучше, или в другую сторону копать?

Google
Banschikov
10.07.2018
16:11:06
он создайот 3 пода. Тебе нужно в стирге написать их. Ето стейтфул сет. Значит все поды будут иметь одинаковые имена и инкрементальный суфикс.
Да была такая мысль, да там проблема с большими урлами. Спасибо. Придется решать вопрос на уровне приложения походу

Andrii
10.07.2018
16:12:10
Старанно у нас нет проблем с длинними урлами

Banschikov
10.07.2018
16:22:00
Prezident
10.07.2018
16:25:07
а какой длины у вас URL'ы?

Alan
10.07.2018
16:28:12
40см холодной!

Maksim
10.07.2018
18:13:19
Short names?

Pavel
11.07.2018
04:05:53
/24

Sanzhar
11.07.2018
04:34:56
/24

Volodimir Fedorov
11.07.2018
05:10:12
42

Konstantin
11.07.2018
05:50:40
Коллеги, как поменять owner'a у директории, которая является mountPath'ом для PersistentVolume? Через securityContext не получится, потому что он только группу умеет менять. Через initContainer не получается, т.к. при старте init контейнера ещё не запровижионен pv. Что делать?

А не, получилось! через initContainer

Alexander
11.07.2018
06:40:03
/24

Aleksey
11.07.2018
07:24:58
подскажите, пожалуста, нубасу как конфиг кубика экспортировать в ~/.kube/admin пытаюсь прикрутить куб-шел, а он требует наличие этого файла https://github.com/cloudnativelabs/kube-shell.git

Andor
11.07.2018
07:38:12
/16

Fike
11.07.2018
07:38:22
/stahp

Mikhail
11.07.2018
07:40:29


Andor
11.07.2018
07:40:52
/0

Mikhail
11.07.2018
07:43:56
Я тут попросил у ноков /15 для подов:) они сильно офигели:)

Alex Milushev
11.07.2018
07:48:27

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