Stefan
в aws
Stefan
домен для кластера настоящий, а вот домен приложухи вымышленный
Даня
попробуй так: поставь прокси и настрой ингресс для выдуманного домена, потом пропиши себе в хостах этот домен со ссылкой на проксю, которая трафик раскидывает по подам
Даня
должно работать так
Даня
проверку, кажется можно выключать
Даня
движок икс тогда уж
Stefan
а то когда под swarm его разбирал, то была возможность через ключи описывать конфигурацию
Даня
apiVersion: extensions/v1beta1 kind: Ingress metadata: labels: k8s-app: traefik name: traefik-dashboard-secure namespace: internal-services annotations: kubernetes.io/ingress.class: traefik spec: rules: - host: traefik.domain.cc http: paths: - path: / backend: serviceName: traefik-dashboard servicePort: 80
Даня
ну вот у меня ингресс, больше ничего не понадобилось
Даня
я его направил на сервис с 80 портом
Даня
у меня кластер админ, потому что еще пилим рбак
Даня
много сервисов с разными доступами, пока что не заморачивались
Даня
попробуй дефолтные рбак пермишены использовать, которые в хельме или в репосе указаны
Stefan
попробуй дефолтные рбак пермишены использовать, которые в хельме или в репосе указаны
то есть ты хочешь сказать... если я для своего приложения в ingress опишу что ему нужно юзать траефик, то оно заведется?Оо
Даня
да, только подними его сперва
Даня
ну, траефик :)
Stefan
да, только подними его сперва
вот! я уже туплю немного подымать как сервис или че?
Stefan
да, только подними его сперва
--- kind: Service apiVersion: v1 metadata: name: traefik namespace: traefik annotations: {} # service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0 spec: selector: k8s-app: traefik-ingress ports: - protocol: TCP port: 80 name: http - protocol: TCP port: 443 name: https type: LoadBalancer вот так?
Vitaliy
Я тут задумался, почему у подов у меня Private IP а не как у сервисов. Кто на AWS инстанцию накатывал Kubernetes + amazon-vpc-cni-k8s Какая у Вас адресация?
Даня
роль ингресс, демонсет или деплоймент и сервис
Stefan
роль ингресс, демонсет или деплоймент и сервис
ага, спасиб, буду рыть, спасибо за совет
Даня
есть гайд
Даня
могу скинуть, если найду
Vitaliy
https://github.com/aws/amazon-vpc-cni-k8s/blob/master/README.md
Vitaliy
Этот плагин Вы юзаете?
Stefan
могу скинуть, если найду
буду оч признателен https://medium.com/@dusansusic/traefik-ingress-controller-for-k8s-c1137c9c05c4 я пока по этому делаю
Даня
буду оч признателен https://medium.com/@dusansusic/traefik-ingress-controller-for-k8s-c1137c9c05c4 я пока по этому делаю
https://github.com/pahud/amazon-eks-workshop/tree/master/03-creating-services/ingress/traefik-ingress я этот использовал, немного допилив
Vitaliy
Спасибо, значит все правильно. Что же у меня за косяк
Даня
а что в конфигмапе указано? для кор-днс
Даня
может мастер не тот указали?
John
Всем хай!
blkmrkt
Никто не знает, позавчера или вчера GCE не выкатывали изменений в дефолтном конфиге ноды? Или может автообновления куба? У меня были поды, которые иногда кидали сегфолты, ну это норм жить было можно. А теперь CrashLoopBackoff вроде как стал более агрессивным, либо сегфолты полезли чаще. Код не менялся, все имажи прицеплены по тегу версии.
Vlad
и речь идёт про gce или gke?
Vlad
и про gke ещё можно тут спросить: https://kubernetes.slack.com/
Rafael
Привет! Подскажите как сделать такую вещь: есть Dockerfile, deployment-manifest.yaml. как мне в манифесте указать на image из докерфайла?
Rainbow
envsubst
Rainbow
cat deployment.yaml | envsubst | kubectl apply -f -
Rainbow
image: $IMAGE
Rainbow
в env где то image объявить
Rafael
принял, буду делать, спасибо!
Stefan
а у кого-то была такая ошибка в момент добавления пода в траефик? level=warning msg="Endpoints not available for default/myapp-service" time="2018-12-19T18:43:19Z" level=info msg="Server configuration reloaded on :80" time="2018-12-19T18:43:19Z" level=info msg="Server configuration reloaded on :8080" при этом у самого сервиса на который он ругается, айпишник с портом получен в строке Endpoint(kubectl get svc myapp-service -n default)
blkmrkt
и речь идёт про gce или gke?
gke как часть gce) Я уже пулы с нодами пересоздал, протестил на двух чпу архитектурах тк слышал что дефолтная архитектура будет новая теперь. Обновил кластер до 1.11.5-gke.5. Подозреваю что что-то изменилось с CrashLoopBackOff.
blkmrkt
и про gke ещё можно тут спросить: https://kubernetes.slack.com/
спасибо, там сразу дали ссылку на коммиты крешхандлера
Vlad
Ок, круто. Из интересного, там бывают ещё gke sre
G72K
Сейчас почитаю про RBAC
Не надо rbac, у вас оно до аписерверов через kubernetes.default.svc.cluster.local достучаться не может. Даже до rbac не доходит. Проверьте что kube-proxy на той же ноде живой и счастливый (в логах), что NetworkPolicy для coredns разрешает походы в аписервера и что аписервера анонсируют себя как ожидается (kubectl -n default describe svc kubernetes)
Vitaliy
Привет, вот что вижу http://take.ms/c7uoC
Vitaliy
Есть Error http://take.ms/MKqeY
G72K
Привет, вот что вижу http://take.ms/c7uoC
Вот IP в endpoint доступный? С ноды с CoreDNS в него curl работает?
G72K
Есть Error http://take.ms/MKqeY
Это ерунда, выглядит норм
Vitaliy
curl 10.96.0.1:443 http://take.ms/3IGhr
G72K
(не шлите скриншоты плиз, pastebin или сюда)
Vitaliy
ok
Vitaliy
Говорит Forbriden для анонимуса
G72K
curl 10.96.0.1:443 http://take.ms/3IGhr
Порт и ИП не из endpoint как просил конечно, но сойдёт . Проверьте network policy
Vitaliy
Глупый вопрос, а где они задаются?
G72K
kubectl -n kube-system get networkpolicy -o wide
G72K
Потом надо найте те, которые применяются для coredns пода (смотреть по selector)
G72K
И проверить что в них есть правило для доступа к аписерверам
Vitaliy
root@ip-172-31-25-4:~# kubectl -n kube-system get networkpolicy No resources found.
G72K
https://github.com/aws/amazon-vpc-cni-k8s/blob/master/README.md
Если у вас эта штука , то ещё и security groups в консоли AWS проверить надо
G72K
Вердикт - AWS security groups
Vitaliy
Я там расшарил все, для другого инстанса. Так же столкнулся с проблемой что nginx на хосте не доступен пришлось в iptables открывать для него порт
G72K
Надо разрешить eni интерфейсам подов ходить в IP:6443 аписервера (endpoints из kubectl describe svc выше)
G72K
Поидее оно само как то должно рулить согласно NetworkPolicy (не застал AWS CNI , но было бы логично), но это уж вы сами найдите как
Vitaliy
Создаю NetworkPolicy для Name: kubernetes Namespace: default Labels: component=apiserver provider=kubernetes Annotations: <none> Selector: <none> Type: ClusterIP IP: 10.96.0.1 Port: https 443/TCP TargetPort: 6443/TCP Endpoints: 172.31.25.4:6443 Session Affinity: None Events: <none>
Vitaliy
Создал полиси apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: allow-all spec: podSelector: {} policyTypes: - Ingress - Egress засунул в оба наймспайсес
Vitaliy
Спасибо сейчас переделаю
G72K
Ну и прежде чем network policy создавать вы руками в security groups правило создали? Проблему решило?
Vitaliy
В SG все открыто для всех, или Вы не про AWS?