Maxim
юнит-файл от кьюблета на не-мастере
Denis
ExecStart=/opt/bin/kubelet \
--address=${COREOS_PRIVATE_IPV4} \
--port=10250 \
--hostname-override=${COREOS_PRIVATE_IPV4} \
--allow-privileged=true \
--logtostderr=true \
--cadvisor-port=4194 \
--healthz-bind-address=0.0.0.0 \
--cluster-dns=${K8S_DNS_IPV4} \
--cluster-domain="kube.local" \
--healthz-port=10248 \
--config=/etc/kubernetes/manifests
--kubeconfig=/etc/kubernetes/kubeconfig.yml
Maxim
так
Denis
сам kubeconfig в порядке
Maxim
тормози кьюблет на не-мастере
Maxim
sudo systemctl stop kube-kubelet
Maxim
или как он там называется
Denis
да
Maxim
теперь
Denis
но всё также тишина
Maxim
на мастере по-прежнему висит консоль с евентами
Maxim
на не-мастере запускай:
sudo /opt/bin/kubelet \
--address=${COREOS_PRIVATE_IPV4} \
--port=10250 \
--hostname-override=${COREOS_PRIVATE_IPV4} \
--allow-privileged=true \
--logtostderr=true \
--cadvisor-port=4194 \
--healthz-bind-address=0.0.0.0 \
--cluster-dns=${K8S_DNS_IPV4} \
--cluster-domain="kube.local" \
--healthz-port=10248 \
--config=/etc/kubernetes/manifests
--kubeconfig=/etc/kubernetes/kubeconfig.yml
Maxim
прямо вот так руками
Maxim
чтобы лог видно сразу
Maxim
если переменных COREOS_PRIVATE_IPV4 и K8S_DNS_IPV4 в текущем шеле нет, то просто скипни эти строчки
Maxim
запускай прям без них
Maxim
вообще говоря, нам тут вообще на все насрать
Maxim
можно просто запустить
sudo /opt/bin/kubelet --config=/etc/kubernetes/manifests --kubeconfig=/etc/kubernetes/kubeconfig.yml
Maxim
кстааааааааати
Maxim
а ты перевод строки проебал
Maxim
...
--healthz-port=10248 \
--config=/etc/kubernetes/manifests
--kubeconfig=/etc/kubernetes/kubeconfig.yml
Maxim
после .../manifests
Maxim
у тебя кьюблеты без конфига стартуют
Maxim
и не знают, где искать апи
Maxim
потому и не работает нихера
Maxim
кьюблет приходит к апи и регается там как нода
Denis
ааааааа!!!!
Denis
:))
Maxim
в kubectl get no начинает чота появляться
Denis
вот это глаз!)
Maxim
вот давай проверим
Maxim
на не-мастере запусти:
sudo /opt/bin/kubelet --config=/etc/kubernetes/manifests --kubeconfig=/etc/kubernetes/kubeconfig.yml
Maxim
вот прямо так, как я тут написал
Maxim
и на мастере сразу увидишь вагон евентов
Maxim
и в kubectl get no появится не-мастер
Denis
пока тишина + обновил перенос во всех конфигах
Maxim
а что в /etc/kubernetes/kubeconfig.yml на не-мастере?
Denis
сейчас пять сек, лог покажу
Denis
там вроде полный порядок:
apiVersion: v1
kind: Config
clusters:
- cluster:
certificate-authority: /etc/kubernetes/ssl/ca.pem
server: https://xx.xx.xx.197:6443
name: findx
users:
- name: kubelet
user:
client-certificate: /etc/kubernetes/ssl/kubelet.pem
client-key: /etc/kubernetes/ssl/kubelet-key.pem
contexts:
- context:
cluster: findx
user: kubelet
name: kubelet-context
current-context: kubelet-context
Maxim
похоже, да
Maxim
давай лог
Maxim
и перестань замазывать приватные адреса
Maxim
ты никакого секурити этим не повышаешь
Maxim
а время тратишь
Denis
http://jsbin.com/wiyefitale/edit?html
Denis
да чё то да
Denis
уже поднадоело)
Maxim
W0828 12:40:34.263844 30692 server.go:676] No api server defined - no events will be sent to API server.
Maxim
говно
Denis
ключи?
Maxim
неа
Denis
iptables?
Maxim
опять не угадал ;)
Denis
)))
Maxim
sudo /opt/bin/kubelet --config=/etc/kubernetes/manifests --kubeconfig=/etc/kubernetes/kubeconfig.yml --api_servers=https://xx.xx.xx.197:6443
Maxim
вот так запускай
Maxim
ну только иксы эти свои сраные поменяй на адрес
Denis
опа
Denis
события пошли
Maxim
... и нода появилась в kubectl get no
Denis
kubectl get no
NAME STATUS AGE
www2 Ready 42s
Denis
YEP!
Denis
но почему у тебя без этого параметра работает?
Maxim
а хуй его знает, товарищ маёр
Maxim
судя по доке - должно работать
Maxim
я эту инсталляцию обновляю с версии 1.2.2
Maxim
может закешировалось где-то
Maxim
ну короче:
ExecStart=/opt/bin/kubelet \
--api_servers=https://xx.xx.xx.197:6443 \
--config=/etc/kubernetes/manifests \
--kubeconfig=/etc/kubernetes/kubeconfig.yml \
--address=${COREOS_PRIVATE_IPV4} \
--port=10250 \
--hostname-override=${COREOS_PRIVATE_IPV4} \
--allow-privileged=true \
--logtostderr=true \
--cadvisor-port=4194 \
--healthz-bind-address=${COREOS_PRIVATE_IPV4} \
--cluster-dns=${K8S_DNS_IPV4} \
--cluster-domain="kube.local" \
--healthz-port=10248
Maxim
и перезапускай все кьюблеты
Maxim
абля
Maxim
и хелз поправь
Maxim
ща
Maxim
я поправил там выше
Denis
порт кастомный должен быть?
Maxim
нене
Maxim
он у тебя слушал 0.0.0.0
Maxim
я поменял на ${COREOS_PRIVATE_IPV4}
Denis
а, ты про healthz-bind :)) спасибо
Denis
поменял также
Denis
кублеты должны связываться по 8080?