Andrey
вернет ноды к исходному состоянию, плейбук то гляньте :)
Andrey
исходное = деинсталирует всё что инсталлировал
Anton
вернет ноды к исходному состоянию, плейбук то гляньте :)
ну это подойдет, в принципе, если при этом кластер будет работать
Anton
и конфиг перегенерится
Anton
мне ворклоады не жалко
Maksim
А тут есть эксперты оп Опеншифту?)
Stanislav
Посоны, кто знает что это и как это фиксить?
Stanislav
&{0xc420746b40 0xc420393b20 ingress-nginx nginx-ingress-controller nginx-ingress-deploy.yaml 0xc4200c9e68 3457620 false} for: "nginx-ingress-deploy.yaml": Operation cannot be fulfilled on deployments.extensions "nginx-ingress-controller": the object has been modified; please apply your changes to the latest version and try again
Pavel
Всем привет, есть нубский вопрос. поднимаю с помощью vagrant и virtual box машину. У неё два сетевых интерфейса eth0 (NAT VB), eth1 (ip, который реально использую). Разворачиваю на ней kubernetes master. Делаю advertise_ip с eth1. Всё поднимается, ноды подсоединяются. Затем выполняю команду kubectl get pods —all-namespaces -o wide и вижу, что все системные поды висят на eth0_ip. Вопросы: 1. почему это плохо? 2. как можно поменять?
Oleg
Ребят, подскажите. Поднял helm, сделал install stable/mongodb-replicaset при выводе get pods вижу следующее mongodb-dev-mongodb-replicaset-0 1/1 Running 0 18m mongodb-dev-mongodb-replicaset-1 1/1 Running 0 17m mongodb-dev-mongodb-replicaset-2 1/1 Running 2 16m openebs-provisioner-55ff5cd67f-qxc9v 1/1 Running 0 1d pvc-00ddbb70-591e-11e8-b467-9600000a8d06-ctrl-79ddfd59cb-pdxv5 2/2 Running 0 17m pvc-00ddbb70-591e-11e8-b467-9600000a8d06-rep-d499c4468-6ks22 0/1 Pending 0 17m pvc-00ddbb70-591e-11e8-b467-9600000a8d06-rep-d499c4468-cnl6k 0/1 Pending 0 17m pvc-00ddbb70-591e-11e8-b467-9600000a8d06-rep-d499c4468-j72l6 1/1 Running 0 17m pvc-266ca21a-591e-11e8-b467-9600000a8d06-ctrl-7c669b485-mswzd 2/2 Running 0 16m pvc-266ca21a-591e-11e8-b467-9600000a8d06-rep-6d89584fd4-5jl5l 0/1 Pending 0 16m pvc-266ca21a-591e-11e8-b467-9600000a8d06-rep-6d89584fd4-l6zf9 1/1 Running 0 16m pvc-266ca21a-591e-11e8-b467-9600000a8d06-rep-6d89584fd4-p7bs9 0/1 Pending 0 16m pvc-d5b0565c-591d-11e8-b467-9600000a8d06-ctrl-59ccccc54d-x4k7x 2/2 Running 0 18m pvc-d5b0565c-591d-11e8-b467-9600000a8d06-rep-6c6dd85b7b-2c6vp 0/1 Pending 0 18m pvc-d5b0565c-591d-11e8-b467-9600000a8d06-rep-6c6dd85b7b-lfktc 1/1 Running 0 18m pvc-d5b0565c-591d-11e8-b467-9600000a8d06-rep-6c6dd85b7b-pc758 0/1 Pending 0 18m почему здесь pvc? насколько понимаю их тут быть не должно.
Andor
В чарт посмотри
Andor
Берут инструмент, хуярят в прод, а что этот инструмент делает - не знают :/
Stanislav
Потому что Helm гавно
Stanislav
Это вам не rpm пакет накатить)
Anton
volumeClaimTemplates: - metadata: name: data spec: accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 1Giесли в statefulset вот такой template, откуда возьмется этот 1 гигабайт? в смысле нет привязки ни к какому storageClass
CrusaderX
Потому что storageClass есть по-умолчанию (для aws это gp2)
Anton
а для bm?
Anton
https://cloudyuga.guru/blog/kubernetes-storage/ — вот тут пишут, что куб будет просто искать в существующем пуле PV best match. То есть не похоже, что есть storageClass по умолчанию.
Oleg
Берут инструмент, хуярят в прод, а что этот инструмент делает - не знают :/
Кто сказал про прод? Я изучаю куб, делаю все на деве, в чем проблема?
Anton
Берут инструмент, хуярят в прод, а что этот инструмент делает - не знают :/
так если в прод не зафигарить, никогда не узнаешь, что он делает :)
Й
Не прод для слабаков
Sergey
так если в прод не зафигарить, никогда не узнаешь, что он делает :)
это как с женщинами, сколько не изучай их в песочнице, в жизни все намного веселее
Andor
Кто сказал про прод? Я изучаю куб, делаю все на деве, в чем проблема?
проблема в том что ты не понимаешь что делает хельм и спрашиваешь у нас это
Andor
аналогия с женщинами не в тему
Oleg
верно, я не пытался разобратся в этом чарте и спросил сразу. думал что тех (небольших) знаний о кубе мне хватит понять что оно делает, но нет
Andor
ну короче просто погрепай по слову volume по чарту который ты применил и я думаю многое сразу станет понятнее
Oleg
а вот если я ставлю как helm install ( а не через клон репки чартов), как то можно все равно посмотреть какой чарт применяется ?
Anton
еще можно использовать --debug и --dry-run
Oleg
не знаю правильно ли задал вопрос)))
Anton
чтобы увидеть что там за описание ресурсов в итоге
Oleg
окей, спасибо
Anton
ну тоесть достаточно было сделать helm install --help
Anton
и ведь там написано To check the generated manifests of a release without installing the chart, the '--debug' and '--dry-run' flags can be combined. This will still require a round-trip to the Tiller server.
Oleg
😅
Anton
и еще из полезного helm template --help
Dmytro
В общем сделал в лоб ❗️Прописал Retain Policy в сам StorageClass (((
Так именно так и надо, как ещё защититься если девы будут pvc и могут что угодно там прописать
Stanislav
Да, чтото такое и буду пилить
Dmytro
Ребят, вопрос по nginx ingress (тот что кубовый), как к создаваемому конфигу ингресса добавить свой сниппет? У меня там секция с access_by_lua_file реализующая SSO через crowd. Или переписать логику и сделать через oauth-external-auth?
Там через конфигмап есть несколько extension points, типа вот этот ключ задаёшь и в него кусок конфига нжинкс который вставится в блок сервера, location, ещё какие то - гляньте документацию. Это чтобы не делать совсем кастомныц конфиг нжинкс у ингресса
Дмитрий Харитонов
Такой вопрос. На 2-х серверах настроен плавающий айпишник. Как лучше всего натравить на него порт из сервиса? будет ли работать externalIP?
Grigorii
скорее всего будет, сервис это же vip
Дмитрий Харитонов
при переезде айпишника kube-proxy сразу перепишет iptables?
Stanislav
Народ, есть у вас какие то наработки по такой штуке: Хочу чтобы пользователь с правами на уровне кластера имел возможность создавать Namespace, и соответственно быть в них админом по дефолту, но не иметь возможности управлять другими Namespace, не созданные им.
Stanislav
?
Grigorii
насколько я помню он и так на всех нодах поддерживает iptables со всеми externalIP
Дмитрий Харитонов
кароче, нужно пробовать)
Grigorii
по идее даже если каким-то чудом на ноду придет пакет с externalIP чужой ноды в том же кластере, он все равно уйдет в нужный под)
Grigorii
так что попробуй, да
Я и твой кот
Народ, есть у вас какие то наработки по такой штуке: Хочу чтобы пользователь с правами на уровне кластера имел возможность создавать Namespace, и соответственно быть в них админом по дефолту, но не иметь возможности управлять другими Namespace, не созданные им.
Дайте пользователю возможность запускать джоб с параметром 'namespace-name', который будет админскими правами добавлять неймспейс и давать пермишшны на вызывающего пользователя. Пользователю права на кластер не давайте.
Stanislav
Дайте пользователю возможность запускать джоб с параметром 'namespace-name', который будет админскими правами добавлять неймспейс и давать пермишшны на вызывающего пользователя. Пользователю права на кластер не давайте.
Ды вот всетаки хотелось бы это как то средствами кубика добится, без костылей, костыли можно всегда нагородить :) А если я создам SA в default и дам ему права создавать NS, то в этом NS этот SA будет иметь полные права?
Я и твой кот
Не будет
Stanislav
Не будет
Печалько, по сути это и надо
Lex
Привет, спасайте, горю, задеплоил alb ingress controller. Создал ingress для сервиса и теперь контроллер ругается вот так вот: Error parsing annotations for ingress default-datarobot-hackathon-ingress. Error: Subnets subnet-xxxxxxxxsubnet-zzzzzzzzsubnet-yyyyyyyy were invalid. Could not resolve to a VPC.
Lex
как победить это, может кто сталкивался?
Anton
Ребят, как создать нового юзера что-бы потом юзать его для set image деплоймента на CI? Пытаюсь сделать ClusterRole + ServiceAccount + ClusterRoleBInding с правами на деплойменты, но всеравно юзер не имеет прав.
Anton
Обновление образа для деплоймента через kubectl deployment/example set image
Igor
Ребят, как создать нового юзера что-бы потом юзать его для set image деплоймента на CI? Пытаюсь сделать ClusterRole + ServiceAccount + ClusterRoleBInding с правами на деплойменты, но всеравно юзер не имеет прав.
Если достаточно деплоить только в один namespace, то достаточно Role и RoleBinding https://gist.github.com/ivaravko/b2739203f1201c450b5c96ae398d21e3 рабочий пример
Ilya
Чет не могу найти доку, мож кто подскажет, тока вливаюсь в кубернетес... вот поставил кубернетес, поставил в нем дашборд, и возникли вопросы как сделать чтоб дашборд работал не только через kubectl proxy выкинуть наружу и еще когда логинюсь через токен, вроде не хватает прав?
Ilya
Ilya
не, я понимаю что ingress нада настраивать, но не понял еще как
Ilya
извиняюсь за нубские вопросы если тут такие не приняты, просто токо поднял, и не понятно куда дальше запрягать... мож кто подскажет?
Ilya
по токену
Sergey
по токену
ну, токен привязан к акку
Sergey
в чем трабла
Ilya
по этой инструкции токен достал https://github.com/kubernetes/dashboard/wiki/Access-control
Ilya
прав нет я чтото делаю не так? не оттуда токен достал? делал так kubectl -n kube-system get secret kubectl -n kube-system describe secret replicaset-controller-token-kzpmc ввел на входе мож юзверя завести? или что нада делать? просто ругается что я анонимный пользователь... User "system:anonymous" и где потом тогда токен брать?
Ilya
в дашборд по админ аккаунту пускает?
а это как по админ акаунту? где раздобыть?
Igor
kubectl auth can-i get pods -n=search --as=ci-robot no apiVersion: v1 kind: ServiceAccount metadata: name: ci-robot namespace: search а как применять --as для ServiceAccount?
Igor
хотя вот тут https://docs.giantswarm.io/guides/securing-with-rbac-and-psp/ есть пример $ kubectl auth can-i use podsecuritypolicies/privileged \ -n kube-system \ --as=system:serviceaccount:kube-system:calico-node yes
Igor
--as=serviceaccount:search:ci-robot не сработало
Ilya
по вашему доку сверху
ваще не могу найти
Sergey
ваще не могу найти
https://github.com/kubernetes/dashboard/wiki/Creating-sample-user а если повнимательней
Ilya
таж беда что на скрине