
Алексей
09.06.2018
10:38:54
подключаешься из пода?
kubectl describe podName покажи

Volodimir Fedorov
09.06.2018
13:24:57
всем привет. ребята заранее извините если пишу не туда.. проблема скорее с ранчером, но тут народу просто больше. у ранчера под капотом к8с так что возможно я смогу получить тут ответ.

Sergey
09.06.2018
13:26:02

Google

Volodimir Fedorov
09.06.2018
13:26:43
каким образом я могу монтировать pv на nfs в множество подов в разных неймспейсах?

Valentin
09.06.2018
13:27:01
@vizdrag ты тоже не понял, как оказался в чате про криптовалюту?

Sergey
09.06.2018
13:27:50

Valentin
09.06.2018
13:28:46
pvc вроде сколько угодно подов могут юзать

Sergey
09.06.2018
13:28:56

Volodimir Fedorov
09.06.2018
13:29:25
все поды в одном неймспейсе могут использовать "заклаймленый" сторедж.. но в другом неймспейсе сторедж помечен как bound, и заклаймить еще раз его соответственно нельзя

Sergey
09.06.2018
13:29:48
pod-pvc-pv

Volodimir Fedorov
09.06.2018
13:31:36
т.е нужно создавать одинаковые pv под каждый неймспейс? через storage class нельзя сделать?

Sergey
09.06.2018
13:33:56
я не знакомился с ранчером так что хз как он там устроен
как я разумею надо шарить не pv а pvc которые будут на pv ссылаться
запутали?
https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims

Valentin
09.06.2018
13:35:49
нуда, точняк

Google


Sergey
09.06.2018
13:37:26
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv01
spec:
capacity:
storage: 5Mi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Recycle
storageClassName: any
mountOptions:
- hard
- nfsvers=4.1
- intr
nfs:
path: /mnt/nginx
server: <ip.addr>
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: myclaim
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 5Mi
volumeName: pv01
storageClassName: any
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nfs-web
spec:
replicas: 3
selector:
role: web-frontend
template:
metadata:
labels:
role: web-frontend
spec:
containers:
- name: web
image: nginx
ports:
- name: web
containerPort: 80
volumeMounts:
# name must match the volume name below
- name: pv01
mountPath: "/usr/share/nginx/html"
volumes:
- name: pv01
persistentVolumeClaim:
claimName: myclaim
а никто случаем не владеет инфой по best-practices HELM+K8S+DAPP+Gitlab?
надо у фланта спросить?


Konstantin
09.06.2018
13:43:41

Sergey
09.06.2018
13:44:10

Konstantin
09.06.2018
13:44:30
да, там всё красиво и толково, но теория в большинстве

Sergey
09.06.2018
13:45:05
ну, еще бы на конференции бы все тех подробности гибкой проды рассказывали, ага:)
"смарите все как надо много бабла рубить"

Konstantin
09.06.2018
13:46:05
в вики такое - "Пример .gitlab-ci.yml (#TODO)" ))
Но и без этого инфы там хватает, читал?

Sergey
09.06.2018
13:46:53
ты про dapp?

Konstantin
09.06.2018
13:47:05
да, http://flant.github.io/dapp/

Sergey
09.06.2018
13:47:21
а, эту то всю доку шерстил, ага
а в итоге вышло - билд даппом - деплой кубером
по джобам
может вообще какая супердуперклассная техника есть?

Konstantin
09.06.2018
13:49:27
так а dapp kube deploy ?

Sergey
09.06.2018
13:50:50
не, тогда уж хельм
надо бы отредактировать
а вообще сказать прямо "делай так" не получится, у всех свои среды\приложения\переменные и пр, и silverbulllet вряд ли найдется

Google

Konstantin
09.06.2018
13:56:37
таки да, у тебя вводных не так уж и много)

Sergey
09.06.2018
13:57:02
?
в принципе, хельм стоит над кубером, а кубер над образами, скорее там надо искать в dapp практики, типа а как еше можно лучше сделать

Konstantin
09.06.2018
14:08:30
думаю вопрос всё же ближе к gitlab и лучше там спросить?

Dmytro
09.06.2018
19:10:56


Алексей
09.06.2018
19:13:08
разве dapp деплоит не через helm чарты?

Dmytro
09.06.2018
19:14:51
В этом наверное и проблема с шарингом pv с другими подами. PV живёт вне неймспейса pvc в неймспейсе. PV нужно тогда описать как ReadWriteMany в случае нфс чтобы другие pvc тоже могли его цеплять.
Всё это как я понимаю должно работать в теории, сам с нфс в кубере не работал

Артём
09.06.2018
20:14:17

Алексей
09.06.2018
20:26:21

Andor
09.06.2018
20:27:19
а это не helm?

Алексей
09.06.2018
20:31:19
тиллер это хелмовский демон в к8с

Dmytro
09.06.2018
20:36:06
не демон а один под, ну или смотря в каком смысле

Алексей
09.06.2018
20:43:57
демон не в смысле daemonset, а в смысле часть хелма

Caffeine
09.06.2018
20:47:16
Кстати. Демонсет же деприкейтед уже. Кто как гарантирует размещение подов на каждой ноде?

Mikhail
09.06.2018
20:47:45
Может кто-нибудь рассказать зачем нужен helm? Я уже прочитал что это типа пакетный менеджер для кубернетиса, посмотрел доку, поднял пару сервисов с помощью него, но пока не вижу его пользы, если я использую только свой софт на кубер кластере.

Caffeine
09.06.2018
20:48:58

Mikhail
09.06.2018
20:50:28
Ну много людей использует, видимо я что-то не понимаю :)

Алексей
09.06.2018
20:54:04
Тут надо начать с вопроса, а чего вы собственно от него ожидаете?
Если вам надо задеплоить софт одной командой - это хороший вариант. Для всех популярных программ есть helm чарты.

Caffeine
09.06.2018
20:56:02

Google

Mikhail
09.06.2018
20:56:11

Алексей
09.06.2018
20:56:47
Разве с kubectl нельзя так? ?
думаю можно и докер композом
или вообще накидать sh скрипт с деплоем по машинам
зачем вообще эти куберы докеры понапридумали

Andor
09.06.2018
20:57:51
> Для всех популярных программ есть helm чарты.
и примерно все из них надо будет допиливать руками, а для этого надо уметь в хельм для начала

Алексей
09.06.2018
20:58:15

Andor
09.06.2018
20:59:14
@azalio вощем юзай envsubst где тебе надо шаблонизировать манифесты и всё %)

Caffeine
09.06.2018
20:59:19

Mikhail
09.06.2018
21:00:35

Andor
09.06.2018
21:01:31
может
но тогда с тасками
чтобы по команде

Алексей
09.06.2018
21:02:13

Mikhail
09.06.2018
21:02:17

Andor
09.06.2018
21:02:54
таски папета

Mikhail
09.06.2018
21:03:41
Оу, для меня это новье

Andor
09.06.2018
21:05:03
оно и есть

Dmytro
09.06.2018
21:22:37
хелм удобен если нужно поставить одно и тоже приложение несколько раз с разными параметрами
в том числе в разных неймспейсах или кластерах
плюс у него есть хуки post install, post update и т.п., он умеет рестартанут поды позле изменения конфигмапа или секрета и прочие мелкие плюшки которые kubectl apply не умеет

Google

Andor
09.06.2018
21:25:00
до сих пор не понимаю почему в кубере этого нет в коробке

Dmytro
09.06.2018
21:25:16
в плане возможностей го темплейты явно на порядок выше envsubst

Valentin
09.06.2018
21:25:18
рестартануиь поды после изменения конфигмапа - это интересно

Andor
09.06.2018
21:25:57
то же самое сели через ту же jinja делать

Dmytro
09.06.2018
21:26:24
ну и в конце концов - это уже некоторый устоявшийся стандард в куб коммьюнити и если вы выложите чарт или там с другой командой поделиттся захочете то все знают что такое чарты и с чем их едят а все велоспиеды с envsubst не сильно расшаришь

Andor
09.06.2018
21:27:02
ну вот согласен, главное преимущество, что оно стандарт де-факто

Dmytro
09.06.2018
21:27:31
угу
это как с паппетом или шефом - ну говно же что один что другой
но сука стандард и все пользуются

Andor
09.06.2018
21:28:03
папет старее 4.0 говно :)
современный очень ок

Dmytro
09.06.2018
21:28:35
я 4 не видел, на 3 закончил с ним общение и очень этому рад

Andor
09.06.2018
21:28:37
но остадочек остался и новички его не хотят изучать

Mikhail
09.06.2018
21:28:40

Dmytro
09.06.2018
21:28:49
может хелм к 4 версии тоже уже и не говно будет

Andor
09.06.2018
21:29:35
вангую что они на версионирование <yyyy>.<mm> перейдут скорее

Dmytro
09.06.2018
21:31:01
есть еще ksonnet, он вроде бы выглядит поприятнее чем хелм (все-таки считай полноценный ЯП) но с ним я не ковыряся подробно и как по мне там слишком много магии тогда как хелм простой как табуретка
переменные прокинул, ямлики нагенерировал - все понятно что куда

Andor
09.06.2018
21:32:35
https://github.com/fkorotkov/k8s-kotlin-dsl вот ещё есть