Sergei
микростатика - js, css - куски релизного контейнера с приложением. зашита внутрь. большая статика - в S3-like сторадже.
kay
статику в configmap не комильфо ни разу. т.к. для этого используется etcd. и kubelet считывает обновленную статику каждую минуту приблизительно и перемонтирует volume с обновленной статикой
kay
configmap на то и имеет составляющее config, что оно хорошо только для configгов
Anonymous
ну у меня rest api к которому я через ingress хочу прикрутить папку "/doc" так как хостится это все в гугле то я хз как бакет подсоединить - кто-то делал?
Anonymous
ага, уже понял что дурак )
kay
Тут была ссылка на вариант развертывания k8s кластера внутри docker
yolkov
внутри одного контейнера?
kay
нескольких.
yolkov
если я на нодах для кубелета не прописываю --tls-cert-file --tls-private-key-file, то я не могу kubectl exec or logs на поды находящихся на этих нодах
yolkov
аутенцификация настроена через токены, не очень как то хочется всем нодам выписывать сертификаты(как я понимаю серверные)
yolkov
хотя курлом с curl -k https://node02:10250/containerLogs/demos/tarantool-1882853530-sxvnq/tarantool все отдается
kay
@yolkov https://github.com/kayrus/kubelet-exploit
yolkov
я видел и читал твои заметки на хабре, но вопрос не в открытости 10250, а в том что не работает kubectl exec, logs
yolkov
если не генерить сертификаты на нодах
yolkov
у меня аутентификация на токенах, и не хочется для каждой ноды генерить сертификаты
kay
версия k8s какая?
yolkov
1.4.0
yolkov
kubectl options | grep insecure --insecure-skip-tls-verify=false: If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure с этой опцие тоже не работает
kay
потому что kubcetl напрямую не обращается к kubelet порту
kay
к нему обращается apiserver
kay
т.е. получается, что при аутентификации на токенах самоподписанные сертификаты kubelet игнорятся?
kay
а если нет, то всё ок?
kay
как именно настроена аутентификация на токенах?
yolkov
не уверен что через аписервер kubectl --insecure-skip-tls-verify=true logs tarantool-1882853530-sxvnq Error from server: Get https://node02:10250/containerLogs/demos/tarantool-1882853530-sxvnq/tarantool: x509: certificate signed by unknown authorit
kay
эту ошибку выплевывает apiserver
kay
который коннектится к https://node02:10250
yolkov
--authorization-mode=ABAC --authorization-policy-file=/etc/kubernetes/tokens/authorization-policy.jsonl
kay
щас исходники посмотрю
yolkov
все остальное по идее работает, ну или я не заметил. На тех нодах где есть сертификаты, exec logs работают
Anonymous
можно попутный вопрос? У меня поды c weave не могут авторизоваться в API Failed to list *api.Namespace: the server has asked for the client to provide credentials (get namespaces) от weave-npc, например. у сервисаккаунта токен есть, в поде подмонтирован
Anonymous
надо разобраться куда в сорцы смотреть
yolkov
а политики разрешают для пользователя веаве доступ к неймспесам?
Anonymous
я пользователя не определял, он по default идёт
Anonymous
default создался автоматически, думаю, всё должно быть ок (не уверен)
yolkov
а поппробуй определить и дать все права
yolkov
я просто weave в глаза не видел
Anonymous
я думал попробовать руками в API сходить с токеном
kay
@yolkov вот тут нужно искать по kubeletclient
kay
https://github.com/kubernetes/kubernetes/blob/master/pkg/master/master.go
kay
и здесь тоже самое https://github.com/kubernetes/kubernetes/blob/master/cmd/kube-apiserver/app/server.go
kay
apiserver подключается к kubelet и если всё ок - предоставляет туннель для kubectl
kay
т.е. нужно смотреть какие TLSconfig настройки используются и как задаются для инициализации соединения к kubelt
yolkov
просто к нродам на которых сертификаты есть, все работает
yolkov
сейчас попробую выписать сертификат для ноды
yolkov
проверю, заработает ли
kay
если б было время - навернео смог бы найти кусок кода, который за это овтечает. но у меня сейчас другой deadline
yolkov
ок, спасибо, поразбираюсь
Anonymous
а поппробуй определить и дать все права
у меня —authorization-mode= не был никакой прописан, сделал alwaysAllow - заработало
Anonymous
спасибо
Anonymous
сделаю ABAC на досуге
kay
rbac удобнее
Anonymous
написано экспериментал
Anonymous
работает?
kay
давно. с версии 1.3
Anonymous
значит надо брать)
kay
два
yolkov
с сертификатом заработало, причем именно серверным сертификатом, в котором еще надо правильно прописать Subject Alternative Name
Anonymous
что значит "серверным"?
Anonymous
а у меня заработал weave
yolkov
с включенной опцией X509v3 Extended Key Usage: TLS Web Server Authentication
Anonymous
а, ну да
yolkov
у всех на нодах сертификаты сгенерированы для kubelet? или я включил какуюто опцию
kay
у меня автогенерация идет
Anonymous
а как ты подписываешь сертификаты?
kay
kubelet по дефолту не проверяет сертификаты
kay
но мой фикс, который я пытался пропихнуть в k8s проверяет
kay
не знаю, может они что-то похожее успели в 1.4 впихнуть
Anonymous
я немного запутался, кто и как авторизуется
Anonymous
kubectl авторизуется видимо или токеном или сертификатом
Anonymous
все системные поды в API тоже сертификатами идут?
Anonymous
хотя у меня все идут в локальный апи на 8080
Anonymous
остальные поды могут сходить сервисаккаунтом
yolkov
ну у тебя вообще похоже не секурный порт используется
yolkov
вот тут чтото объясняется, правда могло уже чтото устареть https://github.com/kubernetes/kubernetes/issues/11000
Anonymous
спасибо
Anonymous
как dns засетапить без этих солтов есть инструкция?
Anonymous
вижу только левую статью
Anonymous
от 2015 года по установке пода со skydns
yolkov
https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns