
Maxim
24.08.2016
19:18:56
А в abac'e так тоже нельзя
Он не настолько гранулированный

Andrey
24.08.2016
19:19:27
согласно статье - можно, типа там атрибуты проверяются в момент запроса и они могут быть любыми, я прочитал только что и впечатлился
если такого нельзя - надо такое сделать :)

Google

Andrey
24.08.2016
19:20:25
из статьи картинка:
https://habrastorage.org/files/c0c/5f1/bf2/c0c5f1bf268e42e99048fcc7d4e2da17.png

Maxim
24.08.2016
19:20:41
Аааа, ты вот про что
Так статья-то - это же про abac/rbac в вакууме
Они суть есть паттерны же
Ну там как REST

Andrey
24.08.2016
19:21:48

Maxim
24.08.2016
19:22:03
А вот конкретная реализация в кубернетесе - это совсем другой коленкор
@vkfont сюда читай: http://kubernetes.io/docs/admin/authorization/
Тут есть и rbac и abac
В рамках кубернтеса
И оно совсем не похоже на ту статью ;)

Andrey
24.08.2016
19:23:46
вижу, понял

Google

Maxim
24.08.2016
19:24:15
@asigatchov там в конце табличка про сравнение выглядит несколько странно
судя по кубернетесодокам (я понимаю, что там не про кубернетес), плюсики и минусики надо поменять местами

Andrey
24.08.2016
19:24:31
ну тогда "--authorization-mode=Webhook" + сервер, походу идея для сервиса :)

Maxim
24.08.2016
19:25:13
Там кстати и для аутентификации есть вебхуки
http://kubernetes.io/docs/admin/authentication/#webhook-token-authentication
Но я пока не совсем понял суть реализации

Andrey
24.08.2016
19:28:39
oauth, bearer = запрашиваем внешний сервер и получаем токен, а потом даем доступ к ресурсу всем кто такой токен предоставляет без вопросов

Denis
24.08.2016
19:30:40
А из-за чего такое может быть?
# kubectl logs my-app-web-1237290625-syas4
...
Aug 24 18:59:03 my-app-web[24] ERROR: [api/images router] images-search error: { [FetchError: request to https://api.shutterstock.com/v2/images/search?page=1&per_page=40&query=nike failed, reason: getaddrinfo ENOTFOUND api.shutterstock.com api.shutterstock.com:443]
name: 'FetchError',
message: 'request to https://api.shutterstock.com/v2/images/search?page=1&per_page=40&query=nike failed, reason: getaddrinfo ENOTFOUND api.shutterstock.com api.shutterstock.com:443',
type: 'system',
errno: 'ENOTFOUND',
code: 'ENOTFOUND' }

Maxim
24.08.2016
19:31:20
Dns сломался

Andrey
24.08.2016
19:31:25
node.js?

Maxim
24.08.2016
19:31:32
Добро пожаловать в клуб
`kubectl exec -it <pod> -- ping ya.ru`

Fike
24.08.2016
19:32:11
в kube

Denis
24.08.2016
19:32:52
А как починить??

Maxim
24.08.2016
19:33:22
Ну ты выполни ту команду, что я привел
И покажи вывод

Denis
24.08.2016
19:33:40
Так она весит)
DNS слетел же)
ping: unknown host

Maxim
24.08.2016
19:34:06
Ага

Google

Maxim
24.08.2016
19:34:09
Оно
Ну позырь в днсовы логи

Denis
24.08.2016
19:35:48
а чем / как?

Maxim
24.08.2016
19:35:54
Эээ
Ну как обычно
`kubectl logs --namespace=kube-system -c kubedns <dns-pod-here>`

Denis
24.08.2016
19:37:17
kibana-logging-v1-dm716 0/1 Error 301 13d
kube-dns-v18-wz37g 2/3 CrashLoopBackOff 490 13d
kubernetes-dashboard-1775839595-h2ay1 0/1 CrashLoopBackOff 321 13d
упс
в "клубе" уютно :)

Maxim
24.08.2016
19:38:44
2/3 какбэ намекает
Один из контейнеров упал

Denis
24.08.2016
19:39:58
согласен

Denis
24.08.2016
19:40:17
сделал заново apply:
# kubectl apply —namespace=kube-system -f skydns.yml
service "kube-dns" configured
replicationcontroller "kube-dns-v18" configured
но ничего
а нет
2/3 Running
но пинг не заработал
а вот опять:
kube-dns-v18-wz37g 2/3 CrashLoopBackOff 492 13d
а как лог посмотреть?
kube describe rc или kube describe svc не работает

Google

Denis
24.08.2016
19:47:35
фак
опять namespace забыл указать

Alexander
24.08.2016
21:12:08
а объясните мне про pod'ы, плиз

Maxim
24.08.2016
21:12:22
?

Alexander
24.08.2016
21:12:24
как идёт масштабирование если вдруг нужно будет?
допустим, под из 3 сервисов

Maxim
24.08.2016
21:12:37
в рамках подов - никак

Alexander
24.08.2016
21:12:44
я могу только 1 из них масштабировать?

Denis
24.08.2016
21:13:03
ReplicaSet

Maxim
24.08.2016
21:13:07
под из трех сервисов - это яичница из трех бананов

Admin
ERROR: S client not available

Alexander
24.08.2016
21:13:14
Kubernetes не использую, но хочется теорию понять

Maxim
24.08.2016
21:13:20
под может быть только из трех контейнеров
а уж один это сервис, или десять - от контейнеров зависит

Alexander
24.08.2016
21:13:55
да, контейнеров, ну, 1 контейнер - СУБД, второй - код, третий - статика
и, допустим, мне надо больше контейнеров с кодом
я смогу так сделать?

Maxim
24.08.2016
21:14:25
нет
под неделим
делай три пода

Google

Alexander
24.08.2016
21:15:06
то есть даже если мне не нужно дублировать субд, допустим, мне всё равно придётся

Maxim
24.08.2016
21:15:14
ну да

Alexander
24.08.2016
21:15:24
или не делать её частью пода

Maxim
24.08.2016
21:15:25
потому что ты неправильно под сформировал

Alexander
24.08.2016
21:15:33
а как правильно?

Maxim
24.08.2016
21:15:44
под - неделимая сущность

Alexander
24.08.2016
21:16:02
но тогда каждый контейнер - отдельный под?

Maxim
24.08.2016
21:16:06
масштабироваться, создаваться, удаляться он будет весь целиком
всегда

Alexander
24.08.2016
21:16:08
тогда чем поды отличаются от контейнеров

Denis
24.08.2016
21:16:26
Service Discovery

Maxim
24.08.2016
21:16:44
чем апельсины отличаются от ящиков с апельсинами?
вот именно так же поды от контейнеров отличаются

Alexander
24.08.2016
21:17:12
то есть под - это группа одинаковых контейнеров?

Maxim
24.08.2016
21:17:25
не обязательно одинаковых
но все действия ты будешь проводить только над полной группой
исключение - чтение логов
там нужно будет указывать контейнер внутри пода

Alexander
24.08.2016
21:18:32
а можно пример, когда выгоднее объединять в под пачку неодинаковых контейнеров, чем просто пачка этих контейнеров как отдельных подов?

Maxim
24.08.2016
21:18:44
kube-dns
три контейнера в одном поде
масштабировать можно как угодно
все контейнеры в поде объединены общим локалхостом