Andrey
Ога
Incognito
благодарю. сейчас попробую
Andrey
Ну, разумеется, тебе и создать копию ресурса certificate для сертманагера надо
Andrey
TLS ты же всяко юзаешь
Incognito
копию в том же namespace имеется в виду и обязательно с другим именем же получается ?
Andrey
неа
Andrey
смотри
Andrey
У него аннотация с issuer, он не создаёт сам сертификат
Andrey
у тебя два сервиса в разных неймспейсах. соответственно, тебе нужно по ингрессу в каждом. они юзают сикреты для сертов, которые тоже неймспейснуты, но у тебя серт-манагер, поэтому ты можешь просто применить certificate в другом неймспейсе и сертманагер просто копирнет серт
Andrey
Ну то есть ему не надо заморачиваться
Andrey
фишка в том, что nginx-ingress сольет несколько ресурсов в разных неймспейсах в один конфиг в итоге
Andrey
Ну то есть ему не надо заморачиваться
ну прост такие же аннотации прописать и должно прокатить
Andrey
Да
Incognito
) поговорили молодцы а теперь для меня
Incognito
кроме ingress, что еще сделать то
Andrey
Просто делай инг в одном namespace с сервисом
Andrey
Всё
Incognito
спасибо
Incognito
пробую
Andrey
схема рабочая, сам так делаю
Andrey
У меня кажется через него сделано
Дык контроллер из эндпоинтов сервиса апстримы берет, а у externalName их нет - это просто cname запись в днс кластера
Andrey
Ну так сервис резолвтся
Andrey
Это точно рабочая схема у меня так работает
Andrey
С nginx
Andrey
nginx-ingress не проксирует на clusterip
Andrey
Если интересно минут через десять напишу как
Andrey
Давай
Incognito
Issuer resource "letsencrypt-staging-issuer" not found
Andrey
ну дык issuer тож неймспейснутый
Incognito
ага. спасибо. получилось
Incognito
исходный ingress в default namespace надо было удалить
Incognito
тогда все завелось
Andrey
чет странное ты творишь
Dmytro
Incognito
чет странное ты творишь
пока не удалил, ничего не завелось
Incognito
точнее отвечал ингресс и дефолтного namespace с ошибкой 503
Andrey
пока не удалил, ничего не завелось
я же правильно понимаю, что тебе разные префиксы урлов на разные сервисы в разных неймспейсах на одном домене направить надо?
Incognito
у меня будет несколько сервисов по разным днсам отвечать
Incognito
в разных namespace
Andrey
Одно доменное имя - один неймспейс?
Incognito
да
Andrey
А в чем тогда проблема была?
Incognito
думаю, что я просто сделал два полностью одинаковых ингресса только в разных namespace
Incognito
даже с одинаковыми доменными именами, уверен проблема именно в этом
Andrey
Ебануться у вас формулировки, Николай
Andrey
вот так у меня работает --- apiVersion: extensions/v1beta1 kind: Ingress metadata: annotations: certmanager.k8s.io/cluster-issuer: letsencrypt kubernetes.io/ingress.class: nginx name: app namespace: default spec: rules: - host: api.example.com http: paths: - backend: serviceName: app-istiogw servicePort: 80 tls: - hosts: - api.example.com secretName: app-tls --- apiVersion: v1 kind: Service metadata: name: app-istiogw namespace: default spec: externalName: istio-ingressgateway.istio-system.svc.cluster.local sessionAffinity: None type: ExternalName
Incognito
Ебануться у вас формулировки, Николай
ну простите ) я могу упростить
Incognito
короче, два ingress отличие в описание только в том, в каком namespace они
Incognito
вообщем сработал руками, а не головой
Andrey
Так у них и домены разные, не?
Incognito
нет 🙂
Andrey
ingress в default ns, и два svc, один тоже в default, чтоб на него мог ингрес указывать, а сам он через externalname указывает на второй в другом ns
Andrey
Как так-то
Andrey
Одно доменное имя - один неймспейс?
Andrey
да
Incognito
да оно так будет дальше деплоиться. каждое доменно еимя в свой namespace
Andrey
Ну так получается, таки разные
Andrey
Так у них и домены разные, не?
Andrey
нет 🙂
Andrey
А какая версия ингресс-контроллера?
чарт nginx-ingress-1.3.1, версия образа 0.22.0. Но у меня так давно работает, и инструкции я сам подчерпнул из какой-то старой issue в гитхабе кубера
Andrey
это я так прикручивал cert-manager через nginx-ingress к istio
Andrey
Хм, попробую
Andrey
Прост помню, с версией 0.17 не канало
Andrey
проблемы возникают, если неполное имя указывать, без cluster.local
Incognito
я лучше покажу, как оно было сделано, что не работает. я даже понимаю почему это не правильно apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress-nginx namespace: test annotations: kubernetes.io/ingress.class: "nginx" certmanager.k8s.io/issuer: "letsencrypt-staging-issuer" certmanager.k8s.io/acme-challenge-type: http01 spec: tls: - hosts: - echo1.example.com secretName: letsencrypt-staging-secret rules: - host: echo1.example.com http: paths: - backend: serviceName: api-test servicePort: http path: /path ---- apiVersion: extensions/v1beta1 kind: Ingress metadata: name: ingress-nginx-test namespace: test annotations: kubernetes.io/ingress.class: "nginx" certmanager.k8s.io/issuer: "letsencrypt-staging-issuer-test" certmanager.k8s.io/acme-challenge-type: http01 spec: tls: - hosts: - echo1.example.com secretName: letsencrypt-staging-secret-test rules: - host: echo1.example.com http: paths: - backend: serviceName: api-test servicePort: http path: /path
Incognito
вот если так делать, то отвечает первый созданный в default namespace
Incognito
да
Incognito
и я это тоже понял, когда подумал
Andrey
Ладно, все, я окончательно запутался
Incognito
все, забей. главное, что ты мне помог
Incognito
ты мне точно помог
Andrey
https://github.com/tektoncd/pipeline гугол тут вознамерился всем CI переписать
почему гугло? Там вроде всего три контрибутора оттудава.
Vadim
почему гугло? Там вроде всего три контрибутора оттудава.
думаешь само зародилось и на него сбежались гугловцы?