@kubernetes_ru

Страница 592 из 958
Dmitriy
31.05.2018
05:48:34
У меня так не вышло. Выглядит так, что переменные доступны только внутри файла gitlab-ci.yml
а как выкручивались? Хочу сделать динамические шоурумы, где branch=showroom

Konstantin
31.05.2018
05:51:03
а как выкручивались? Хочу сделать динамические шоурумы, где branch=showroom
Решили внутри gitlab-ci.yml прям helm command передавать нужные переменные через --set VAR=$GITLAB_CI_VAR

Google
Dmitriy
31.05.2018
05:58:55
а можно подробнее о этом решении? вот есть у меня мой .gitlab-ci.yaml Deploy: stage: deploy script: - docker pull registry.devpayever.com/shipping - dapp —version - dapp kube deploy —namespace default —set "global.env=stage" —set "global.git_rev=${CI_BUILD_REF:-$CI_COMMIT_SHA}" —set global.ciProjectName=$CI_PROJECT_NAME registry.devpayever.com tags: - deploy есть ingress apiVersion: extensions/v1beta1 kind: Ingress metadata: name: {{ .Chart.Name }} annotations: kubernetes.io/ingress.class: "nginx" spec: rules: - host: {{ .Chart.Name }}.example.com http: paths: - path: / backend: serviceName: {{ .Chart.Name }}-srv servicePort: 8000 tls: - secretName: custom-tls-cert-1 hosts: - {{ .Chart.Name }}.example.com Как можно передать в хосты имя бранча?

Konstantin
31.05.2018
06:03:50
А вообще кейс интересный. Если все ресурсы создавать в отдельном namespace, то и почистить потом все оттуда не составит. Думаю мы такое тоже попробуем сделать.

Dmitriy
31.05.2018
06:21:25
Wildcard?

Konstantin
31.05.2018
06:50:39
Wildcard?
Wildcard чего? Вы про *. example.com?

Dmitriy
31.05.2018
06:50:56
Да

Konstantin
31.05.2018
06:51:26
Мы так и делаем
А вопрос @dimaold решали и обошли?

Dmitriy
31.05.2018
06:52:37
короче обошел - но немного костыльным путем

before_script: - sed -i — "s/example/$CI_COMMIT_REF_NAME/g" ./.helm/Chart.yaml

Konstantin
31.05.2018
06:54:28
Да
Ну, допустим, все эти имена резолвят 1 ip. Дальше, что то затрудняюсь сразу додумать куда это пойдет.

Google
Konstantin
31.05.2018
06:55:49
Как вариант 2 haproxy балансера под vip адресом, бэкендом которых будет ip с нодпортами ingress сервиса

Дмитрий
31.05.2018
06:58:38
Пока ещё не обзавелись. Но правильная готовка эластика - дорого
о правильной готовке с логами до 100Гб в день можно особо не задумываться, он и в стоке хорош (ну только разве о диках под объём надо подумать)

Stanislav
31.05.2018
06:59:40
А вопрос @dimaold решали и обошли?
Мне не ясен его вопрос.

Скажу только, что месяца полтора велосипед прогали

Зато стенды теперь за пару минут создаются, с SSL и DNS

Konstantin
31.05.2018
07:01:16
По сути вопрос такой: имя ветки с git -> host Ingress

Под доменом example.com

Stanislav
31.05.2018
07:02:22
Мы в имя хоста суем имя группы, имя проекта, slug бранча/sha, номер pipeline/job

Konstantin
31.05.2018
07:02:26
Stanislav
31.05.2018
07:02:41
Велосипед в студию ?
Это очень дорого и сложно

Sergey
31.05.2018
07:07:31
А есть ли способ мониторить конкретный namespace(именно те ресурсы которые он использует)

Konstantin
31.05.2018
07:13:29
Делаете в grafana dashboard с нужными графиками/метриками. Namespace выносите в переменную. И смотрите ресурсы по неймспейсам

Dmitriy
31.05.2018
07:49:38
Зато стенды теперь за пару минут создаются, с SSL и DNS
Мы юзаем самописный интегратор который создает необходимое имя в паверднсе. ssl прописан в секрете ингреса

Stanislav
31.05.2018
07:52:17
Мы кстати не крутим домены по факту, хотя проверка в коде и автокорректировка записи есть. Просто *. указывающая на кластер. Наружу торчит только один балансировщик.

Так как иначе глюки кеширования неизбежны

Dmitriy
31.05.2018
07:53:42
так и есть - Wildcard и динамически генерирующиеся поддомены. Поддомен = тикет в джире=динамческий шоурум

Stanislav
31.05.2018
07:53:58
Угу

Google
Dmitriy
31.05.2018
07:54:39
я просто не знал как правильно в чартах задать имя этому шоуруму

Stanislav
31.05.2018
07:55:06
Мой пример помог найти путь к решению?

Dmitriy
31.05.2018
07:55:33
я уже кидал какой костыль я изобрел

before_script: - sed -i — "s/example/$CI_COMMIT_REF_NAME/g" ./.helm/Chart.yaml

Stanislav
31.05.2018
07:55:49
У нас имя получается вида php7-app1-master-765.домен

Dmitriy
31.05.2018
07:57:05
$CI_COMMIT_REF_NAME - у нас имя бранча = джира тикет= щоурум.домен

Konstantin
31.05.2018
08:11:39
А есть ли способ мониторить конкретный namespace(именно те ресурсы которые он использует)
Флант на рите это разжевал, 1день середина или у них может уже есть

Sergey
31.05.2018
08:12:16
Флант на рите это разжевал, 1день середина или у них может уже есть
неее, то что прометей это то понятно, я уже курю

Konstantin
31.05.2018
08:13:34
Хотя тут уже ответили, но

Dmitriy
31.05.2018
08:32:49
И ещё: Просто интересно, как вы планируете обеспечить доступность хоста, в dns как то пропишете? Вот получится branch-1.example.com. Как сразу же его резолвить?
я немного выше писал - Мы юзаем самописный интегратор который создает необходимое имя в паверднсе. ssl прописан в секрете ингреса

Leo
31.05.2018
08:48:42
graylog все хочу заюзать

руки никак не доходятъ

Dmytro
31.05.2018
09:06:58
ребята, а юзал кто-то https://github.com/kubernetes-sigs/kustomize/blob/master/README.md ?

Mikhail
31.05.2018
09:12:03
руки никак не доходятъ
Та же фигня с loghouse

Leo
31.05.2018
09:12:29
психанул

начал разварачивать graylog

Andrey
31.05.2018
09:56:55
Народ а кто как хранить данные prometheus ? Я тут попробовал прикрутить influxdb через https://github.com/prometheus/prometheus/tree/master/documentation/examples/remote_storage/remote_storage_adapter Какое то время это работало, но с увеличеним обьема данных, работать перестало

Нативная связка вообще не взлетела ((

Google
Dmytro
31.05.2018
10:04:45
у нас хранят в самом проме, но только 2 недели retention period

Andrey
31.05.2018
10:07:11
Нам хотябы пол года нужно

Пробовал potgresql прикрутить, но тоже не влетело. Точнее, писать он туда писал, а вот прочитать занимало очень много времени...

Dmytro
31.05.2018
10:09:35
prometheus для таких длинных промежутков не очень насколько я слышал

Dmytro
31.05.2018
10:10:03
у нас есть куча метрик в influx но мы туда их пушаем вручную а не через прометеус

уже наверное больше года там метрик

Andrey
31.05.2018
10:11:36
Индексы навешивать не пробовали?
Нет. Сделал все по доке, но не взлетело. Дальше заморачиваться не стал

Dmytro
31.05.2018
10:12:10
но опять же их там не так много, всего 12гиг на данный момент занято

Andrey
31.05.2018
10:13:08
но опять же их там не так много, всего 12гиг на данный момент занято
У меня то что уже успело на 32GB написать в influxdb ?

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

Dmytro
31.05.2018
10:15:32
У меня то что уже успело на 32GB написать в influxdb ?
ого, а точно вам нужны эти метрики целых полгода если вы даже не знаете что там?

Andrey
31.05.2018
10:16:33
Sergey
31.05.2018
10:16:45
Andrey
31.05.2018
10:19:28
а есть запись?
Присоединяюсь к вопросу

Эдуард
31.05.2018
10:26:33
kafka рассматривали?
Прометей туда умеет?

Andrey
31.05.2018
10:26:52
kafka рассматривали?
Нет, туда еще не смотрели

Google
Andrey
31.05.2018
10:26:54
не уверен, вот только это нашёл https://github.com/cortics/prometheus-to-kafka-exporter

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

Andrew
31.05.2018
10:28:40
/report

Andrey
31.05.2018
11:06:43
а точно ли нужна такая детализация метрик за такой большой период?

почему бы для longterm не скрейпить реже?

Флант рассказывал об этом в первый день в главном зале

Max
31.05.2018
11:08:11
Гайз в борьбе против настройки дашборда для кубера - настроил ингресс, тестовые сервисы работают нормально - запустил дашборд с http - через kubectl proxy могу обращаться с локальной машины (что странно из браузера все равно не могу обратится - только с локальной машины-виртуалки) - добавляю ингресс руты для дашборда 1) если только http то получаю 404 page not found (причем ответ похоже от самого дашборда - так как от ингрес-нжинкса страница выглядит по другому) 2) если дашборд http а спереди зделать https от ингресса то таже 404, что доказывает что я достучался до дашборда 3) если запустить дашборд по https и у ингресса добавить аннотацию nginx.org/ssl-services: "kubernetes-dashboard" то получаю 404 от нжинкса Есть нормальный гайд по настройке дашборда для ингресса?

Andrey
31.05.2018
11:08:42
есть

Max
31.05.2018
11:09:02
в открытом доступе?))

а не вот эта записулька https://github.com/kubernetes/dashboard/wiki/Accessing-Dashboard---1.7.X-and-above Ingress Dashboard can be also exposed using Ingress resource. For more information check: https://kubernetes.io/docs/concepts/services-networking/ingress.

Andrey
31.05.2018
11:10:05
https://github.com/kubernetes/dashboard/wiki/Accessing-Dashboard---1.7.X-and-above

Max
31.05.2018
11:10:31
оооокей

Andrey
31.05.2018
11:11:04
me@sshct:~$ cat git/k8s/k8s-dashboard-ingress.yaml --- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: kubernetes-dashboard namespace: kube-system annotations: kubernetes.io/tls-acme: "true" nginx.ingress.kubernetes.io/secure-backends: "true" spec: tls: - secretName: k8s-XXXXXXXX-ru-tls hosts: - k8s.XXXXXXXXX.ru rules: - host: k8s.XXXXXX.ru http: paths: - backend: serviceName: kubernetes-dashboard servicePort: 8443

Max
31.05.2018
11:11:56
спасибо сейчас попробую

Andrey
31.05.2018
11:12:00
ничего сложного, кроме хитрости с secure-backends. В остальном - сделано по гайду

Evgeniy
31.05.2018
11:16:39
Коллеги подскажите как решить проблему деплоя проекта. Грубо говоря у меня проект из 15 сервисов, есть helm чарты как для отдельных кусков проекта так и для всего в целом. Но уперся в проблему последовательности создания подов.

То шина поднимается раньше базы для нее, бэки соответственно дольше фронтов и авторизационных форм. Из за этого общий деплой - это лютый гемор.

Нет что нибудь типа докеровского depends_on

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