M
роллинг апдейт скриптами ансибла?
Dmitry
это накатывание изменений на несколько хостов?)
M
http://kubernetes.io/docs/user-guide/rolling-updates/
Dmitry
да, читаю уже)
Dmitry
странная херня с дешбордом # kubectl cluster-info kubernetes-dashboard is running at http://localhost:8080/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard а в # kubectl get pods —all-namespaces kubernetes-dashboard-v1.1.0-egdts 0/1 CrashLoopBackOff
Dmitry
# kubectl logs kubernetes-dashboard-v1.1.0-egdts —namespace=kube-system Starting HTTP server on port 9090 Creating API server client for https://10.254.0.1:443 Error while initializing connection to Kubernetes apiserver. This most likely means that the cluster is misconfigured (e.g., it has invalid apiserver certificates or service accounts configuration) or the —apiserver-host param points to a server that does not exist. Reason: Get https://10.254.0.1:443/version: dial tcp 10.254.0.1:443: i/o timeout
M
-v1.1.0 too old
M
1.4.0 ставь
Anonymous
там в энсибле 1.2.4 дефолт вроде
Dmitry
там в энсибле 1.2.4 дефолт вроде
не, реально в скриптах 1.1.0 стоит)
Dmitry
1.4.0 ставь
ща накачу
M
10.254.0.1:443 там есть что то?
M
curl
Dmitry
неконектится, походу нет
Anonymous
iptables смотри
Anonymous
в k8s нет ipv6?
Anonymous
серьезно?
Anonymous
в GCE нет ipv6?
M
и хорошо что нет и так все крайне запутанно)
Dmitry
в k8s нет ipv6?
в доке читал, что не поддерживает ipv6)
Anonymous
я только что issue открыл и там типа
Anonymous
ну aws и gce же не поддерживают ipv6, нафига нам это
Anonymous
вот говно)
Anonymous
хотя по факту нужно на балансировщике только ipv6
Anonymous
расскажите про kube-discovery, пожалуйста
Anonymous
я тут kubeadm init сделал и там есть под с kube-discovery, зачем он?
Dmitry
kubernetes-dashboard-v1.4.0-w6bxd 1/1 Running 0 1m
Dmitry
1.4.0 ставь
нормал, стартануло!)
Dmitry
но на 10.254.0.1:443 никто не отвечает
M
kubectl logs нового дашборда что говорит?
Dmitry
kube-system kubernetes-dashboard-v1.4.0-w6bxd 0/1 CrashLoopBackOff 2 3m
Dmitry
вот походу почему не отвечает
M
Там много вариантов почему нет)
Dmitry
root@cs49854:/var/log# journalctl -u kubernetes-dashboard — No entries — root@cs49854:/var/log# journalctl -u kubernetes-dashboard-v1.4.0 — No entries — root@cs49854:/var/log# journalctl -u kubernetes-dashboard-v1.4.0-w6bxd — No entries — root@cs49854:/var/log# journalctl -u dashboard — No entries —
M
Не так
M
kubectl logs имя пода --namespace kube-system
Dmitry
# kubectl logs kubernetes-dashboard-v1.4.0-w6bxd —namespace kube-system Starting HTTP server on port 9090 Creating API server client for https://10.254.0.1:443
Dmitry
странно
Dmitry
а, вот щас норм: # kubectl logs kubernetes-dashboard-v1.4.0-w6bxd —namespace kube-system Starting HTTP server on port 9090 Creating API server client for https://10.254.0.1:443 Error while initializing connection to Kubernetes apiserver. This most likely means that the cluster is misconfigured (e.g., it has invalid apiserver certificates or service accounts configuration) or the —apiserver-host param points to a server that does not exist. Reason: Get https://10.254.0.1:443/version: dial tcp 10.254.0.1:443: i/o timeout
M
Ну тоже самое по сути
M
Попробуй из другого пода, который running curl этот адрес
Dmitry
это как?
Dmitry
kube-system elasticsearch-logging-v1-1v0l6 1/1 Running 1 1h kube-system elasticsearch-logging-v1-jbukm 1/1 Running 1 1h kube-system fluentd-elasticsearch-95.213.236.162 1/1 Running 0 37m kube-system heapster-v1.0.2-3427619061-n54m2 0/4 Pending 0 1h kube-system kibana-logging-v1-bryii 0/1 CrashLoopBackOff 5 1h kube-system kube-dns-v11-5ag5d 3/4 CrashLoopBackOff 17 1h kube-system kubernetes-dashboard-v1.4.0-w6bxd 0/1 CrashLoopBackOff 5 9m kube-system monitoring-influxdb-grafana-v3-6nrjj 0/2 Pending 0 1h
Dmitry
там еластик только остался из тех, кто слушает
Dmitry
остальные тоже крашатся
M
kubectl exec -ti elasticsearch-logging-v1-jbukm /bin/sh —namespace kube-system
M
и оттуда curl
M
если нет то смотри сеть если курл пройдет то смотри сертификаты
Dmitry
# kubectl exec -ti elasticsearch-logging-v1-1v0l6 /bin/sh —namespace=kube-system # curl 10.254.0.1:443
Dmitry
вошел в контейнер
Dmitry
но курл не прошел
Dmitry
висит
M
значит смотри сеть
M
я на убунте не настраивал, не знаю кто там вместо flanneld
Dmitry
я на убунте не настраивал, не знаю кто там вместо flanneld
в процессах висит flanneld /usr/bin/flanneld —etcd-endpoints=http://95.213.236.248:2379 —etcd-prefix=/cluster.local/network
Dmitry
в ансибле можно выбрать между ними: flannel|opencontrail|contiv
M
а что говорит ip addr sh ?
Dmitry
https://gist.github.com/dkostenko/325b8b55d040feacd62c8a74e0afc98e
Dmitry
выполннил его на мастере
Dmitry
если честно, это для меня уже магия
M
помоему у docker0 должна быть другая подсеть после запуска flannel
M
inet 172.17.0.1/16
M
это похожа на дефолтную
M
если можешь ребутни сервак, может оно правильно поднимется после бута
Dmitry
посмотрел в ансибле - там этого не прописывается
Dmitry
сейчас сделаю ребут
Dmitry
а оно вообще само встанет с колен?)
Dmitry
ребутаю только мастер
Dmitry
ребутнул мастер та же ерунда: # kubectl get pods —all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-system elasticsearch-logging-v1-1ay1u 1/1 Running 1 8m kube-system elasticsearch-logging-v1-rvogl 1/1 Running 1 8m kube-system fluentd-elasticsearch-95.213.236.162 1/1 Running 0 54s kube-system heapster-v1.0.2-3427619061-n54m2 0/4 Pending 0 1h kube-system kibana-logging-v1-3aqfg 0/1 CrashLoopBackOff 3 8m kube-system kube-dns-v11-l6hrh 3/4 Running 5 8m kube-system kubernetes-dashboard-v1.4.0-xjz0x 0/1 CrashLoopBackOff 3 8m kube-system monitoring-influxdb-grafana-v3-6nrjj 0/2 Pending 0 1h
M
подсети те же на интерфейсах?
Dmitry
да
Dmitry
ip addr show без изменений
Dmitry
в ансибле можно подсеть настроить # Flannel internal network (optional). When flannel is used, it will assign IP # addresses from this range to individual pods. # This network must be unused in your network infrastructure! flannel_subnet: 172.16.0.0 # Flannel internal network total size (optional). This is the prefix of the # entire flannel overlay network. So the entirety of 172.16.0.0/12 must be # unused in your environment. flannel_prefix: 12 # Flannel internal network (optional). This is the size allocation that flannel # will give to each node on your network. With these defaults you should have # room for 4096 nodes with 254 pods per node. flannel_host_prefix: 24
Dmitry
но по докеру не вижу
M
может оно так и должно быть,
Dmitry
может оно так и должно быть,
)) сейчас ишью гляну в репе
M
давай лучше iptables-save
Dmitry
это как?
Dmitry
# iptables-save # Generated by iptables-save v1.6.0 on Sun Oct 16 00:57:00 2016 *nat :PREROUTING ACCEPT [63:8363] :INPUT ACCEPT [47:5163] :OUTPUT ACCEPT [720:110615] :POSTROUTING ACCEPT [720:110615] :DOCKER - [0:0] -A PREROUTING -m addrtype —dst-type LOCAL -j DOCKER -A OUTPUT ! -d 127.0.0.0/8 -m addrtype —dst-type LOCAL -j DOCKER -A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE -A DOCKER -i docker0 -j RETURN COMMIT # Completed on Sun Oct 16 00:57:00 2016 # Generated by iptables-save v1.6.0 on Sun Oct 16 00:57:00 2016 *filter :INPUT ACCEPT [31090:16369654] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [30704:17099080] :DOCKER - [0:0] :DOCKER-ISOLATION - [0:0] -A FORWARD -j DOCKER-ISOLATION -A FORWARD -o docker0 -j DOCKER -A FORWARD -o docker0 -m conntrack —ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -i docker0 ! -o docker0 -j ACCEPT -A FORWARD -i docker0 -o docker0 -j ACCEPT -A DOCKER-ISOLATION -j RETURN COMMIT # Completed on Sun Oct 16 00:57:00 2016
M
маловато всего, а kube-proxy запущены в юзерспейсе?