Artem
ах, ох уж эти абсолютные ссылки
Artem
но с 3XX согласен
Andrey
да я пока не жалуюсь) я пока выясняю)
Artem
мне видимо повезло с разрабами и это не проблема)
Artem
точнее я могу их заставить 😜
Anatoliy
народ, вылетает ошибка: "no service with name kube-system/default-http-backend found: services "default-http-backend" is forbidden: User "system:serviceaccount:kube-system:default" cannot get services in the namespace "kube-system"" Понятно что нет прав. Дефолтный пользователь не может в неймспейсах kube-system получить сервис. Делаем kind: Role apiVersion: rbac.authorization.k8s.io/v1beta1 metadata: name: kubernetes-ingress-minimal namespace: kube-system rules: # Allow IngressController to get services - apiGroups: [""] resources: ["services"] verbs: ["get"] --- apiVersion: rbac.authorization.k8s.io/v1beta1 kind: RoleBinding metadata: name: kubernetes-ingress-minimal namespace: kube-system roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: kubernetes-ingress-minimal subjects: - kind: User name: default namespace: kube-system теперь по идее должно работать. Но - не работает. Что я не так сделал?
Anatoliy
При этом сам ингресс-контроллер - это daemonset
Anatoliy
Есть у кого какие мысли?
Vitalii
Есть у кого какие мысли?
Создай ServiceAccount, укажи его в поде который делает запросы. И RoleBinding на новый ServiceAccount нужно переделать
Vitalii
User и ServiceAccount - разные сущности
Anatoliy
Хорошо, спсибо, щас попробую, только как его в поде указывать?
Vitalii
spec.ServiceAccountName
Vitalii
ну и дока в помощь:)
Vitalii
https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
Anatoliy
Да, этот кусок я уже нашел, спасибо)
G72K
https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging
Anatoliy
Большое спасибо за помощь) Там оказывается еще отдельно СlusterRole настраивать пришлось. Но - ура! Оно заработало :)
Artem
Здравствуйте. Я новенький в кубере. Только вот изучаю. Непонаслышки знаю что у кубера всегда есть какие-то приколы от версии к версии. Поэтому хочу научиться это все деагностировать. Но пока еще мало теоретических знаний. Ладно к сути вопроса: https://dev-ops-notes.ru/kubernetes/%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-%D0%BA%D0%BB%D0%B0%D1%81%D1%82%D0%B5%D1%80%D0%B0-kubernetes-1-7-%D0%BD%D0%B0-centos/ Установил все на ubuntu 16.04. Кубер 1.8.3. Дашборд не подымается. 2017/11/20 21:36:14 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.96.0.1:443/version: dial tcp 10.96.0.1:443: i/o timeout root@k8s1 ~ # kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE default busybox-56b5f5cd9d-2948n 1/1 Running 0 18h kube-system etcd-k8s1.shkrid.net 1/1 Running 0 20h kube-system kube-apiserver-k8s1.shkrid.net 1/1 Running 0 20h kube-system kube-controller-manager-k8s1.shkrid.net 1/1 Running 0 20h kube-system kube-dns-545bc4bfd4-srj6w 3/3 Running 0 20h kube-system kube-flannel-ds-5xjtw 1/1 Running 0 20h kube-system kube-flannel-ds-8dnbf 1/1 Running 1 19h kube-system kube-flannel-ds-dkvfd 1/1 Running 1 19h kube-system kube-proxy-mpsj5 1/1 Running 0 19h kube-system kube-proxy-w9pxf 1/1 Running 0 19h kube-system kube-proxy-wlr7n 1/1 Running 0 20h kube-system kube-scheduler-k8s1.shkrid.net 1/1 Running 0 20h kube-system kubernetes-dashboard-747c4f7cf-xdwlq 0/1 CrashLoopBackOff 211 18h root@k8s1 ~ # kubectl -n kube-system logs kubernetes-dashboard-747c4f7cf-xdwlq 2017/11/20 21:35:44 Starting overwatch 2017/11/20 21:35:44 Using in-cluster config to connect to apiserver 2017/11/20 21:35:44 Using service account token for csrf signing 2017/11/20 21:35:44 No request provided. Skipping authorization 2017/11/20 21:36:14 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.96.0.1:443/version: dial tcp 10.96.0.1:443: i/o timeout Refer to the troubleshooting guide for more information: https://github.com/kubernetes/dashboard/blob/master/docs/user-guide/troubleshooting.md root@k8s1 ~ # telnet 10.96.0.1 443 Trying 10.96.0.1... Connected to 10.96.0.1. Escape character is '^]'. ^CConnection closed by foreign host. root@k8s2 ~ # telnet 10.96.0.1 443 Trying 10.96.0.1... Connected to 10.96.0.1. Escape character is '^]'. ^CConnection closed by foreign host. root@k8s2 ~ # root@k8s1 ~ # kubectl exec -ti busybox-56b5f5cd9d-2948n sh / # telnet 10.96.0.1 443 ^C / # nslookup ya.ru Server: 10.96.0.10 Address 1: 10.96.0.10 ^C / # Тоесть я понимаю что проблема во заимодействии сети flannеla и 10.96.X.X Ну или очередной какой-то баг. Но мне интересно как дальше это дебажить и как решить этот вопрос. Варианты переустановить 100500 раз и заработает или взять другую сеть с которой все работает судя по коментариям - меня не устраивают. Вот нашел на гитхабе https://github.com/kubernetes/dashboard/issues/1578#issuecomment-338418619 Заранее спасибо за помощь.
Anatoliy
Лично я в итоге остановился на kubespray, там заливка идет сразу с кучей проверок и оно "просто работает". Но пока не пробовал это дело обновлять( Что тоже может быть тем еще удовольствием. Плюс - мне интересно как ты сделал кластер по своему адресу: kube-controller-manager-k8s1.shkrid.net - я пока этого сделать не смог, это вообще важно?
Artem
> "просто работает" Ну это конечно хорошо. Но если не понимать как оно просто работает то при любой проблеме реинстал с нуля? )
Anatoliy
Я просто со своей стороны хочу внутренности кластера полностью закрыть
Anatoliy
> "просто работает" Ну это конечно хорошо. Но если не понимать как оно просто работает то при любой проблеме реинстал с нуля? )
в начале - да, но разбираюсь потихоньку) надоедаю вот всем глупыми вопросами тут иногда) а так - после установки еще ни разу не переустанавливал. вот хочу попробовать добавить на днях еще один сервер и посмотреть как оно зальется, что придется для этого делать. Плюс в планах glusterfs или нечто подобное
Anatoliy
Я судя по всему где-то явно что-то не то настроил... Это вообще как: http://prntscr.com/hd2lzp ?
Sergei
Господа, есть ли возможность в StatefulSet'е сделать подам статические мак-адреса?
Sergei
(не спрашивайте зачем, самому идея противна)
Logan
Простите, но все же, пурхуа?
предположу, что где-то мак используется как идентификатор
Sergei
(долбоебы)
Sergei
Простите, но все же, пурхуа?
есть один софт (начинается на аэро, кончается на спайк), который идентификаторы нод калькулирует исходя из мака и порта, на котором слушает. поэтому когда поды стейтфулсета рескедулятся, этот софт (который начинается на аэро, а кончается на спайк) считает что это новые
Sergey
может проще в самом аэроспайке задавать индификаторы нод?
Sergey
ну если он могет так
Sergei
не могёт
Mikhail
плохо
Sergey
долбоебы
Sergei
можно патчить конечно
Sergei
(долбоебы)
Sergey
а сильная надобность сие поделие пускать в кубере?
Sergey
судя по симптоматике - там все сделанно что бы это было по максимому вырвижописто
Sergei
когда в руках молоток - всё кажется гвоздями
Sergey
беда печаль
Sergei
заводить отдельную контрол-плейн инфраструктуру просто для того чтобы запустить аэроспайк НЕ в кубернетесе - немного дороговато
Sergey
страдай
Sergei
я уже (:
Anton
коллеги, можете глянуть в логи kube-proxy, у вас тоже после его запуска вываливается: E1121 09:45:00.085278 1 proxier.go:699] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed
Maksim
мм
Maksim
нет
Maksim
У тебя ошибка в iptables на 7 строке)
Maksim
ищи куда оно сохранило файл таблицы,
Anton
ну хз. делаю iptables-save -t nat && iptables-restore - все круто
Anton
оно не сохраняет похоже никуда
Maksim
так то да
Maksim
только вот судя по всему прокси делает рестор из своего файла
Anton
причем такая беда на двух нодах
Anatoliy
посмотри https://medium.com/@olegsmetanin/kubernetes-recipe-kubernetes-kubespray-glusterfs-gluster-kubernetes-letsencrypt-kube-lego-595794665459
это уже посмотрел и решил проблему) теперь вот думаю как тот сервис что запущен как деплоймент запустить как стейтфул что бы оно при рестарте пода мне по новой конфигурацию не пробовало создавать
Anatoliy
заводить отдельную контрол-плейн инфраструктуру просто для того чтобы запустить аэроспайк НЕ в кубернетесе - немного дороговато
я попробовать запустить конкретно в докере и рулить через копию контейнера докера реально?
Sergei
ээ, что?
Anatoliy
мак будет меняться если запустить это приложение просто в докер контейнере а потом этот же контейнер рестартануть?
Sergei
ну или я не вижу.
Anatoliy
я про то что вроде докер умеет (очень давно читал) сохранять контейнеры "как есть", и соответственно разворачивать
Anatoliy
может отсюда можно будет что-то сотворить? ведь кубер вроде дает доступ к докеру?
Sergei
мак не является атрибутом образа. это атрибут запущенного контейнера.
Sergei
докер умеет сохранить контейнер в образ и стартовать из образа.
Sergei
может отсюда можно будет что-то сотворить? ведь кубер вроде дает доступ к докеру?
тоже спорный момент. кроме докера у него есть и другие рантаймы.
Anatoliy
хм... ладно, берем напильники - можно же вроде принудительно компу мак сменить?
Anatoliy
почему бы при старте контейнера не менят ьего на захардкоженный мак?
Anatoliy
и потом уже стартовать приложение?
Sergei
кажется это немного не тот уровень внедрения, который выдерживает фильтр здравого смысла
Anatoliy
ну может быть, но по идее мак сменить на компе можно достаточно спокойно, поэтому приложение должно заработать тоже нормально)
Anatoliy
ушел на обед)
Sergei
можно и ноги руками двигать и так ходить
Anatoliy
Я просто не понимаю почему бы не передавать мак как переменную в контейнер где он уже будет применяться и потом с ним работать
Салтыдык