Maxim
а оно там ждет строку
Denis
я черзе какой-то онлайн сервиса валидировал
Denis
ща поправлю
Maxim
ну ямл-то может и валидный
Maxim
а тип данных на выходе - нет
Denis
надо наверное - добавить каждой строке
Maxim
value должно быть строкой
Maxim
ты туда пихаешь массив
Maxim
это никогда не заработает
Maxim
на уроки по типам данных ты тоже не ходил, походу...
Denis
по YAML да - с ним относительно недавно начал работать
Maxim
да ямл-то не при чем
Maxim
ты описываешь переменную окружения
Denis
https://gist.github.com/Bregor/6a8cf10f610922b5898dcffef957ff26#file-apiserver-yaml-L11
Maxim
и?
Denis
она просто длинная строка
Maxim
нет
Denis
для читабельности думал её сделать многострочной
Maxim
там массив
Denis
не не, я про тот value
Maxim
command ждет именно массива
Denis
как Dockerfile да
Maxim
а тот value относится к переменной окружения $KUBECTL
Maxim
там должна быть строка
Denis
http://stackoverflow.com/questions/3790454/in-yaml-how-do-i-break-a-string-over-multiple-lines
Denis
вот нашёл
Maxim
ну у тебя все-равно не так
Maxim
а если ты не будешь списывать с конспекта, а просто подумаешь, то станет понятно, что вместо всей этой портянки можно просто kubeconfig подсунуть
Maxim
там описываются только сертификаты, имя кластера и сервер
Maxim
то есть это можно заменить на
value: "/usr/local/bin/kubectl —kubeconfig=/etc/kubernetes/kubeconfig.yml"
Denis
блин
Denis
да
Denis
причём —kubeconfig
Maxim
вот видишь, уже не просто списываешь, а смотришь, чего пишешь
Maxim
Denis
))
Denis
это больше было похоже на тест на внимательность
Denis
а ты используешь SkyDNS?
Denis
типа такого конфига https://gist.github.com/DenisIzmaylov/da6881fdfbf53d32fd35535cf15978cd
Maxim
ты запустил аддон-манагер?
Denis
я старался
Denis
но чё-то
Maxim
?
Denis
пять сек, видимо вышел без сохранения
Denis
он же должен подхватиться автоматом из /etc/kubernetes/manifests
Maxim
да
Denis
а
Denis
провалил второй тест на внимательность
Denis
/usr/local/bin/kubectl
Denis
у меня он не там
Maxim
а в контейнере - там
Denis
а вообще ошибки смотреть как по поводу манифестов?
Denis
apiserver?
Maxim
какого плана ошибки?
Maxim
и /usr/local/bin/kubectl верни на место
Denis
я не менял :) не успел
Denis
вот у меня сейчас проблема с манифестом
Denis
но это больше похоже на чёрный ящик
Denis
вроде как-то должно быть место, где можно увидеть сообщение вида: Люк, у тебя в файле глюк
Maxim
какого плана глюк-то?
Maxim
если ямл не валидный, то kubectl apply тебе про это скажет
Maxim
а если ты написал валидной херни, то только логи
Denis
apiVersion: v1
kind: Pod
metadata:
name: kube-addon-manager
namespace: kube-system
spec:
hostNetwork: true
containers:
- name: kube-addon-manager
image: gcr.io/google-containers/kube-addon-manager-amd64:v5.1
env:
- name: KUBECTL
value: '/usr/local/bin/kubectl --kubeconfig=/etc/kubernetes/kubeconfig.yml'
- name: ADDON_CHECK_INTERVAL_SEC
value: 10
resources:
requests:
cpu: 5m
memory: 50Mi
volumeMounts:
- name: addons
mountPath: /etc/kubernetes/
readOnly: true
- name: ssl-certs-kubernetes
mountPath: /etc/kubernetes/ssl
readOnly: true
volumes:
- name: addons
hostPath:
path: /etc/kubernetes
- name: ssl-certs-kubernetes
hostPath:
path: /etc/kubernetes/ssl
Denis
вот сейчас вроде верный файл, всё валидно
Maxim
похоже, да
Maxim
запустился?
Denis
но как под он не признается
Denis
Maxim
kubectl apply -f /etc/kubernetes/manifests/addon-manager.yml
Denis
верно)
Maxim
что верно?
Denis
можно же вручную :)
unable to decode "/etc/kubernetes/manifests/addon-manager.yml": [pos 269]: json: expect char '"' but got char '1'
Maxim
если в нем нет ошибок, то kubelet сам бы его запустил
Maxim
ага, ну вот
Maxim
меняй все ' на "
Denis
надо 10 на строку)
Maxim
?
Denis
Maxim
так
Denis
Было:
env:
- name: KUBECTL
value: '/usr/local/bin/kubectl -—kubeconfig=/etc/kubernetes/kubeconfig.yml'
- name: ADDON_CHECK_INTERVAL_SEC
value: 10
Стало:
env:
- name: KUBECTL
value: '/usr/local/bin/kubectl -—kubeconfig=/etc/kubernetes/kubeconfig.yml'
- name: ADDON_CHECK_INTERVAL_SEC
value: '10'