Maxim
ну да
Denis
странно
Denis
обновил и ничего
Denis
пробую apiserver.pem и apiserver-key.pem обновить
Maxim
эээ
Maxim
а что ты до этого обновлял?
Denis
уи
Denis
думал да
Denis
только ca будет достаточно, учитесь на моих ошибках =)
Denis
kubectl заработало
Denis
Я ещё вот что подумал) может Chef всё-таки внедрить
Maxim
если у тебя кореос, то шеф тебе не поможет
Maxim
всмысле - не заработает он там
Maxim
учи анзибель
Denis
Я думал он может cloud-config централизованно обновлять
Denis
Генерируя при этом ключи уникальные для каждого миньона
Etki
У меня тако вопрос, может быть дурацкий: может ли сервис указывать на другой сервис? Я сейчас пытаюсь разбить всю инфру по неймспейсам, и в идеале из неймспейсов должны торчать отдельные сервисы, а уже неймспейс routing ответственен за то, чтобы пробросить определенный сервис наружу.
Alexander
Если торчат tcp-порты, то почему бы нет? У меня в разных неймспейсах сервисы друг друга видят по FDQN У тебя же есть DNS внутренний (по-идее) попробуй внутри nslookup <svc-name>.<namespace>.svc или nslookup <svc-name>.<namespace>.svc.cluster.local Соотвественно по-сети сервисы друг друга отлично видят
Alexander
http://kubernetes.io/docs/admin/dns/
Alexander
или я не правильно понял вопрос?
Etki
Угу, я знаю что их видно с указанием ns. Я просто хочу сделать схему externally-available.routing -> locally-available.internal без добавления промежуточного контейнера, который будет принимать запросы из первого и направлять их во второй.
Etki
т.е. чтобы сервис проксировал не контейнеры, а именно другой сервис
Maxim
брррр
Maxim
а что мешает екстернал-сервис ткнуть носом в кубе-днс?
Etki
подробнее
Maxim
# cat /etc/nginx/sites-enabled/blog-apps-frontend.conf upstream kube-blog-app { server blog.apps.svc.kubernetes.local:4000; } ... location / { ... proxy_pass http://kube-blog-app; } ... }
Maxim
NGINX, использующий этот конфиг, бежит прямо на железе
Maxim
вне всяких контейнеров
Etki
мы пока явно из куба вылезать не будем
Maxim
так а тогда где проблема-то?
Etki
под external service подразумевается просто проброс сервиса наружу. сейчас чуть подробнее опишу.
Etki
Есть некий namespace, пусть это backend. В нем есть база данных, которая светит портами: порт для клиентов, порт внутренней коммуникации, еще какой-нибудь порт. Все это дело светится только внутри кластера. В то же время я могу захотеть выбросить наружу порт для клиентов, на время или постоянно, и для этого хотелось бы в отдельном неймспейсе роутинга завести сервис, единственная цель которого - выдача внутреннего сервиса наружу, чтобы к нему можно было обратиться оп айпишнику кластера.
Etki
Это можно втупую реализовать с еще одним промежуточным деплойментом с nginx/haproxy, но если можно без - хотелось бы узнать такой способ
Maxim
Что-то пока без идей...
Etki
да это не факт что вообще возможно, может я зря ленюсь через контейнер все бросать
Александр🖤
Присоединиться
Denis
В блоге Kubernetes опубликовали подробный рассказ о Kubernetes Namespaces: что это такое, зачем они нужны и для чего их не стоит использовать. Учитывая скупость и разрозненность документации, этот пост может сослужить хорошую службу тем, кто только начинает работать с этой системой. http://amp.gs/8sws
Maxim
баян
Maxim
уже больше недели статье
Denis
:))
Maxim
коллеги
Maxim
я тут практически монетку кидаю
Maxim
RBAC или ABAC?
Maxim
ABAC + проще менеджить (один JSONL file) - каждое изменение - это рестарт аписервера - дока туманно намекает на мертворожденность и deprecation on alpha stage
Maxim
RBAC + все менеджится как любой другой k8s-ресурс - с помощью манифестов + вроде как планируется поддержка и развитие - правила адски-зубодробительные - формат будет меняться - проеб админского аккаунта влечет потерю кластера по причине того, что ключ --authorization-rbac-super-user будет упразднен
Maxim
короче, я прямо весь в сомнениях
Denis
А можешь вкратце расшифровать?
Denis
Я что-то упустил этот момент. Что значит RBAC? Что ABAC?
Alexander
https://habrahabr.ru/company/custis/blog/248649/ Наверно так
Maxim
@asigatchov там в конце табличка про сравнение выглядит несколько странно судя по кубернетесодокам (я понимаю, что там не про кубернетес), плюсики и минусики надо поменять местами
Anonymous
@pipopolam я за то чтобы реализовать ABAC и опубликовать доку по результатам (как делал, впечатления по использованию) - жутко интересно
Maxim
А почему не rbac?
Maxim
Судя по доке, rbac выглядит более "родным"
Anonymous
ну роли это стандартно как-то, да и негибко
Maxim
Там все внутри
Maxim
В виде манифестов
Maxim
А abac - внешний файл
Maxim
Каждое изменение = рестарт аписервера
Anonymous
ну вот и говорю: там проще, а сложное решение интересно посмотреть, особенно если кто-то другой сделает :)
Maxim
Мне-то как-раз abac проще - у меня chef
Maxim
Доставка файла и рестарт сервиса при его изменении - его работа
Anonymous
я так понимаю вся суть атрибут-бейсед в том что атрибуты проверяются _в момент запроса авторизации_ а не в момент настройки?
Anonymous
то есть шефом применил что-то - ок, но когда надо авторизироваться атрибуты в системе могут и поменяться
Maxim
?
Maxim
Не понял последней сентенции
Anonymous
ну я по статье сужу, может невнимательно прочитал предположим, создаем правило "предоставить доступ фредди если сейчас пятница 13-е и он админ" условие даты не зависит от chief
Anonymous
или ты что-то другое имел ввиду? тогда сорян
Maxim
Chef - это система автоматизации конфигураций
Maxim
http://chef.io
Anonymous
да я знаю что такое чиф, ансибль и пуппет (сори фор май инглиш :)
Maxim
Он вообще с кубернетесом никак не связан
Anonymous
Мне-то как-раз abac проще - у меня chef
ты первый начал, я просто заметил что чиф поидее не влияет
Maxim
Он просто приносит изменения в файл и рестартит аписервер
Maxim
Ну и вся инфраструктура у меня шефом менеджится
Maxim
В этом смысле abac - проще
Maxim
Для него весь бэкграунд уже готов
Anonymous
например?
Maxim
Ну система по доставке конфига и рестарту сервиса у меня уже есть
Maxim
Не придется велосипедить
Maxim
А вот в rbac каждый чих - три манифеста