Maxim
--address=0.0.0.0 и вот тут лучше внутренний интерфейс подставлять
зачем тебе светить наружу кьюблетом?
Denis
Denis
ещё знаешь, что заметил
Maxim
Maxim
но оно реально нестабильно работает
Denis
мануал и организация K8s-сетапа изменилась прилично за последние 4 месяца
Maxim
тут ничего не скажу, я меньше времени им занимаюсь
Denis
это хорошо) меньше каши
Denis
они активно меняют всё я смотрю
Denis
но становится лучше - это точно
Denis
я где-то с версии 1.2.1 начал
Denis
Maxim
--tls-cert-file=/etc/kubernetes/ssl/kubelet.pem \
--tls-private-key-file=/etc/kubernetes/ssl/kubelet-key.pem \
вот это выкини
Maxim
оно в kubeconfig.yaml'е
Maxim
нахрена дублировать одно и то же
Denis
:) выкидываю
Denis
apiVersion: v1
kind: Config
clusters:
- cluster:
certificate-authority: /etc/kubernetes/ssl/ca.pem
server: https://10.83.8.197:8443
name: bots
users:
- name: kubelet
user:
client-certificate: /etc/kubernetes/ssl/node.pem
client-key: /etc/kubernetes/ssl/node-key.pem
contexts:
- context:
cluster: bots
user: kubelet
name: kubelet-context
current-context: kubelet-context
Denis
197 - тут apiserver?
Maxim
ага
Denis
а можно их два поднимать?
Maxim
хехе
Maxim
можно
Denis
для fail-over
Maxim
но кьюблет умеет только к одному ходить
Denis
)))
Maxim
обещали в 1.5 поправить
Denis
это ж где-то к рождеству - не раньше
Maxim
угу
Denis
cluster: bots - а вот эта штука где-то потом сказывается?
Maxim
а, там где у меня "bots" - пиши чего угодно
это просто имя кластера
Denis
или это просто для управления?
Denis
на DNS не влияет?
Maxim
ненене
Denis
гудгуд
Maxim
просто изначально я кластер поднимал для ботов
Maxim
слак, телеграм, фсбук, etc
Maxim
поэтому он так и называется
Maxim
если ты заметил, кстати, kubeconfig.yaml практически целиком повторяет твой локальный ~/.kube/config
Maxim
устроен он совершенно идентично
Denis
да, я сейчас как раз об этом подумал
Denis
мысль возникла первая - нужен ли на сервере kubectl? :)
Maxim
ну да, как бесплатный бонус сможешь делать так:
$ kubectl --kubeconfig /etc/kubernetes/kubeconfig.yaml get ...
Maxim
;)
Maxim
на серверах прям
Maxim
--api-servers=${MASTER_PRIVATE_IPV4}:8080 \
тоже можно выкидывать в пользу server: ... в kubeconfig.yaml
Denis
:))
Maxim
DRY - это прекрасный принцип
Maxim
не вижу смысла ему не следовать
Denis
абсолютно разделяю, cloud-init вычистил
Denis
оставил только kubelet
Maxim
не забывай, что /etc/kubernetes/manifests/proxy.yaml должен быть на каждой ноде
Maxim
иначе service interoperability поломается
Denis
как и все манифесты?
Maxim
нененене
Maxim
нахрена тебе аписервер и шедулер на каждой ноде-то? :D
Maxim
на каждой worker-ноде должны быть два компонента: кьюблет (чтобы с контейнер-рантаймом общаться) и прокси (чтобы iptables настраивать)
Maxim
все остальное - только на мастере
Maxim
ахахаха
Maxim
бля
Maxim
пидорасы
Maxim
https://dl.dropboxusercontent.com/s/y7kmzozl02pyhs2/Airmail_2016-08-26_22-15-29.png?dl=0
Maxim
вечер пятницы
Maxim
adventure^W deployment time
Denis
:))))))
Denis
Maxim
дада
Maxim
кстати еще один охуительный бонус от деплоя манифестами
Maxim
ты просто обновляешь версию имаджа, типа так:
sed -i 's/1.3.5/1.3.6/g' /etc/kubernetes/manifests/*.yaml
Maxim
и дальше kubelet все сделает за тебя
Maxim
ну правда сам kubelet придется руками обновлять
Maxim
но обновить один бинарь проще, чем обновить kubelet + apiserver + proxy + ....
Maxim
интересно, кстати, что коммит с обновленным днсом в этот релиз не вошел
Maxim
https://github.com/kubernetes/kubernetes/commit/1e7120f02cc39798eb3d2ac0a4e7e8c0e80792ca
Maxim
только в мастере вон светится
Denis
Видимо он ещё нестабилен
Denis
Denis
В идеале было бы подтягивать с гит-репы
Denis
Или иметь хотя бы такую возможность
Maxim
ну у меня шеф почти так и делает