
Ivan
16.08.2017
09:34:49
Примерно так должно быть

bebebe
16.08.2017
09:37:15

Ivan
16.08.2017
09:37:52
скорее всего, т.к. он отрезает от него куски, насколько я понял
Т.е. для кубера создается pv, а для сервисов(подов) нарезаются pvc

Google

bebebe
16.08.2017
09:39:12
понял идею, спасибо
и последний вопрос. а как происходит авторизация? только по volume id? или куда-то пропихивается access и secret keys?

Igor
16.08.2017
09:40:01
не отрезает ?
биндинг PV <-> PVC one to one
это динамический провижионинг отрезает

Роман
16.08.2017
09:43:28
Если у меня не gce, и я буду использовать nginx-ingress-controller gce-0.9.6 (который помечен, как релиз), всё будет работать на baremetal?

Сергей
16.08.2017
09:44:07
кубер и все будет работать - сомневаюсь)

Igor
16.08.2017
09:44:12
только он не 0.9.6 ?
0.9.0-beta.11 последний для nginx
0.9.6 - это GLB как раз

bebebe
16.08.2017
09:46:05

Igor
16.08.2017
09:46:51

Google

Igor
16.08.2017
09:47:13
в динамике, когда есть работающий StorageClass

Artem
16.08.2017
09:48:28
посмотрите тут как сделано
https://github.com/kubernetes-incubator/external-storage
у меня работает

bebebe
16.08.2017
09:48:37
я не до конца понимаю каким образом мой storageclass узнает об моем аккаунте на amazone
определен он стандартно по документации, я только зону поменял
https://hastebin.com/ozuximixoc.lua

Artem
16.08.2017
09:48:52
просто по дефолту сторадж класс из dynamic provisioning
pvc оттуда нарезает куски автоматом

bebebe
16.08.2017
09:49:17
@takama я правильно понимаю, что при правильном подходе, динамический провижининг будет сам ходить в aws и делать там нужного размера volumы?

Artem
16.08.2017
09:49:38
да должен ходить и нарезать

Igor
16.08.2017
09:49:49
У каждого StorageClass свои настройки, у нас Ceph, там прописываются все адреса, пароли явки

bebebe
16.08.2017
09:50:27
ага, я читаю документацию, и в описании storageclass указывается только AZ для aws
никаких ключей и токенов не вижу
поэтому и фрустрирую

Artem
16.08.2017
09:50:48

Igor
16.08.2017
09:52:08
в AWS точно не скажу, скорее всего при установке k8s есть специфика, поддерживающая провижионинг для AWS

Роман
16.08.2017
09:52:16
Ребята. Сталкивался ли кто-нибудь с таким?
Обычно под вечер (но бывало и с утра) переставал работать nginx-ingress-controller. При попытке войти на сайты с https, происходила очень долгая попытка загрузки, которая ничем не заканчивалась. Просто белый экран и никаких ошибок ни в логах контроллера, ни в логах куба. Вход на http давал ответ 301. Есть предположение, что, поскольку 443 порт слушает не nginx, а контроллер (и дальше направляет трафик на 442 порт nginx'а), то проблема именно в этом месте.
Помогите советом, что глянуть.

Magistr
16.08.2017
09:53:21

bebebe
16.08.2017
10:17:57
у меня такое впечатлиение что я первую половину дня вбиваю в гугл не те запросы

Google

bebebe
16.08.2017
10:21:35
сейчас у меня картина такая:
в амазон консоли я должен навесить на свои инстансы IAM роли, для того что бы когда создаю storageclass с provision: aws-ebd запросы от этих инстансов в amazon были валидны
немного дичь выходит

Ivan
16.08.2017
10:22:38
а где об этом можно почитать
я сетапил через kube-aws, там для kube-apiserver идет флаг —cloud-provider=aws. Там своя магия, пока не разбирался. Почитать думаю можно тут:
https://kubernetes.io/docs/getting-started-guides/scratch/

bebebe
16.08.2017
10:23:34
передеплоивать чтоле...


Igor
16.08.2017
10:34:23
Ребята. Сталкивался ли кто-нибудь с таким?
Обычно под вечер (но бывало и с утра) переставал работать nginx-ingress-controller. При попытке войти на сайты с https, происходила очень долгая попытка загрузки, которая ничем не заканчивалась. Просто белый экран и никаких ошибок ни в логах контроллера, ни в логах куба. Вход на http давал ответ 301. Есть предположение, что, поскольку 443 порт слушает не nginx, а контроллер (и дальше направляет трафик на 442 порт nginx'а), то проблема именно в этом месте.
Помогите советом, что глянуть.
nginx-ingress-controller обычно запускают на нодах, которые не мастер, там 443 свободен обычно

Роман
16.08.2017
10:35:10

Igor
16.08.2017
10:35:54
он и слушает 443 и направляет на сервис согласно ingess rules
также слушает на 80
еще default-http-backend отдаёт 404 если сервиса нет

Роман
16.08.2017
10:38:28

Igor
16.08.2017
10:39:12
ну да, контроллер

Igor
16.08.2017
10:39:43
у нас стоит последняя бета, проблем не замечено

Роман
16.08.2017
10:39:58
Или не знаю, кто там слушает 443, но в nginx.go есть такой код:
n := &NGINXController{
binary: ngx,
configmap: &api_v1.ConfigMap{},
isIPV6Enabled: isIPv6Enabled(),
resolver: h,
proxy: &proxy{
Default: &server{
Hostname: "localhost",
IP: "127.0.0.1",
Port: 442,
ProxyProtocol: true,
},
},
},

Alexander
16.08.2017
10:40:14
кстати про этот 442
для whitelist-source-range нужен use-proxy-protocol чтоб адрес не локалхоста был, но в таком случае из-за фигни в proxy procotol не работает http. кто-то решал эту проблему?

Igor
16.08.2017
10:41:40
есть такая проблема, прищлось временно отключить use-proxy-protocol

Alexander
16.08.2017
10:41:53
а как тогда фильтровать по айпи
из гугла с наскоку никто так и не починил

Igor
16.08.2017
10:42:07
ну или лишится 80 порта

Google

Igor
16.08.2017
10:42:27
мы не фильтруем по IP
если ест внешний балансер, можно обойтись без 80 порта
внешний балансер форвардит http -> https например

Alexander
16.08.2017
10:44:05
у меня нету балансера, все контроллер рулит
так бы да, работало

Igor
16.08.2017
10:44:31
т.е. k8s торчит наружу?

Alexander
16.08.2017
10:44:42
да

Igor
16.08.2017
10:44:48
в паблик сеть

Admin
ERROR: S client not available

Alexander
16.08.2017
10:45:07
ну да, ингресс это точка входа в сеть

Igor
16.08.2017
10:45:37
ой, мы пока не решаемся на такое, на приватке всё идёт через HAProxy в GCE через их балансеры

Alexander
16.08.2017
10:46:11
мы пока разбираемся с интеграцией k8s+aws

Igor
16.08.2017
10:46:30
ну там ELB можно подружить вероятно

Alexander
16.08.2017
10:47:40
ну пока не подружили, надо чтоб нжинкс нормально работал)) а болт походу

bebebe
16.08.2017
11:04:38
так, стало немного яснее, на инстансы где я хочу PVC с AWS-EBD нужно навесить такие AIM роли
ec2:AttachVolume
ec2:DetachVolume
ec2:DescribeInstances
ec2:DescribeVolumes
https://github.com/kubernetes/examples/blob/master/staging/volumes/aws_ebs/README.md
да, и у меня не установлен volume plugin для aws_ebd
find /var/lib/kubelet/plugins/ -type f | wc -l
0
@takama а вы не могли бы проверить команду выше? ^^^^

Igor
16.08.2017
11:25:19
у меня не AWS
ну и плагинов тоже нет

bebebe
16.08.2017
11:29:23

Google

Igor
16.08.2017
11:29:43
да

Роман
16.08.2017
11:50:07

Alexander
16.08.2017
11:50:32
собирался это сделать, и ничего не поломалось?)
интересно зачем изначально она там была, в таком случае
хотя судя по гиту официального ингресса и его форков - git workflow темплейта и контроллера мягко говоря не оч организован

Роман
16.08.2017
11:53:32
Ну, как сказать... Запросы на http отрабатывают нормально. Но уже третий день наблюдаются тормоза https - просто колом встаёт и ни один сайт не работает. Через некоторое время gataway timeout, однако ни в одном логе ничего не сказано про это. Вряд ли это с этим связано, конечно, но она там есть во всех версиях.

Alexander
16.08.2017
11:56:18
listen 80{{ if $cfg.UseProxyProtocol }} proxy_protocol {{ end }}
у меня так не работает, empty response.
в логах
broken header: "
*тут весь оригинальный запрос*
" while reading PROXY protocol

Роман
16.08.2017
11:56:41
Не представляю, в чём дело, но подозреваю, что если было бы просто:
...
listen 80;
...
listen 443 ssl proxy_protocol;
...
То всё было бы нормально. Но на деле там listen 442 ssl proxy_protocol; для SNI. И не понятно, если выпилю - будет ли работать несколько сайтов по https на одном айпи. Без кубера такая схема работала с обычным nginx.

Alexander
16.08.2017
11:56:47
щас уберу посмотрю

Роман
16.08.2017
11:57:07

Alexander
16.08.2017
12:05:29
убрал proxyprotocol с http, стало работать норм
все равно непонятно зачем его всунули в темплейт, если оно заранее нерабочее
может не тестировали в кейсе когда нет x-forwarded-for...

Maksim
16.08.2017
12:07:32

Fike
16.08.2017
13:26:04
ху из sni серевер Оо
server name indication, самая забавная штука в TLS, нивелирующая половину самого смысла TLS

Denis
16.08.2017
17:42:52
https://thenewstack.io/github-goes-kubernetes-tells/

Paul
16.08.2017
17:45:24
отличная новость!
коллеги, а порейтингуйте книг по кубернетесу?
от себя: крайне НЕ рекомендую kubernetes microservices in docker, автор Deepak Vohra. в принципе имя уже подсказывает, что будет дальше. Книга во-первых очень старая (куб 1.01), во-вторых ужасно написана (я не преувеличиваю)

Alisa
16.08.2017
17:52:21
читаю
kubernetes in action
издательство manning