Stefan
Stefan
в aws
Stefan
домен для кластера настоящий, а вот домен приложухи вымышленный
Даня
попробуй так:
поставь прокси и настрой ингресс для выдуманного домена, потом пропиши себе в хостах этот домен со ссылкой на проксю, которая трафик раскидывает по подам
Даня
должно работать так
Даня
проверку, кажется можно выключать
Stefan
Andor
Даня
движок икс тогда уж
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
Andor
Даня
у меня кластер админ, потому что еще пилим рбак
Даня
много сервисов с разными доступами, пока что не заморачивались
Даня
попробуй дефолтные рбак пермишены использовать, которые в хельме или в репосе указаны
Даня
да, только подними его сперва
Даня
ну, траефик :)
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
я пока по этому делаю
Даня
Даня
Vitaliy
Спасибо, значит все правильно. Что же у меня за косяк
Stefan
Даня
а что в конфигмапе указано? для кор-днс
Даня
может мастер не тот указали?
John
Всем хай!
blkmrkt
Никто не знает, позавчера или вчера GCE не выкатывали изменений в дефолтном конфиге ноды? Или может автообновления куба? У меня были поды, которые иногда кидали сегфолты, ну это норм жить было можно. А теперь CrashLoopBackoff вроде как стал более агрессивным, либо сегфолты полезли чаще. Код не менялся, все имажи прицеплены по тегу версии.
Vlad
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
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
Vitaliy
curl 10.96.0.1:443 http://take.ms/3IGhr
G72K
(не шлите скриншоты плиз, pastebin или сюда)
Vitaliy
ok
Vitaliy
Говорит Forbriden для анонимуса
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
Вердикт - 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 засунул в оба наймспайсес
G72K
Vitaliy
Спасибо сейчас переделаю
G72K
Ну и прежде чем network policy создавать вы руками в security groups правило создали? Проблему решило?
Vitaliy
В SG все открыто для всех, или Вы не про AWS?