Андрей
http
Andrey
наконец-то :)
Andrey
логи пода, в котором cert-manager крутится, смотрели? что там?
Andrey
может у вас авторизация не проходит
Andrey
выписываете сразу на prod, или пробуете на staging?
Андрей
пробовали и так, и сяк, везде одинаково
Андрей
логи смотрели, в основном ошибка в том, что нет secret нужного
Андрей
создаем - ругается что пусто
Андрей
а что туда писать, если он должен сам по идее закинуть?
Andrey
создаем - ругается что пусто
clusterissuer используете?
Андрей
Да
Ilya
read-only filesystem? попробуйте в /var/ что-нибудь записать
это же насколько я понимаю идет монтирование папок для секретов
Andrey
а на какой секрет жалуется? сертификата? или аккаунта?
Andrey
попробуйте удалить ресурс сертификата и пересоздать, у меня что-то похожее вроде было. Только начинайте со staging, на прод лимиты вроде какие-то
Andrey
как на staging получите fake сертификат - переключайте на прод
Андрей
пробовали пересоздавать, единственное что сейчас проверяем - возможно нужно пару дней, как в некоторых тикетах писали :)
Andrey
у меня быстро починилось. но я не уверен, что ошибка та была, было с неделю назад
Андрей
окей, значит может пройти само, без нас :D
Andrey
ошибка с секретом может быть наведённой, смотрите выше по логам ещё
Andrey
ну и скажите точный текст ошибки, я у себя посмотрю
Андрей
certificates controller: Re-queuing item "coffee/coffee-tls" due to error processing: http-01 self check failed for domain ""
Ilya
read-only filesystem? попробуйте в /var/ что-нибудь записать
если что это я под миникубом запускаю все, зашел в него через minikube ssh пользователь docker - просто в папке var ему запсь не дана
Андрей
ну и домен конечно указан
Андрей
Error preparing issuer for certificate coffee/coffee-tls: http-01 self check failed for domain ""
Andrey
проверка упала
Andrey
у вас ингресс контроллер какой?
Андрей
nginx
Andrey
секунду
Андрей
ссылка формата .well-known доступна
Андрей
падает после Calling GetChallenge
Andrey
а домен точно резолвится везде в ваш ip?
Андрей
да
Andrey
ну и попробуйте в ресурсе сертификата вот так сделать apiVersion: certmanager.k8s.io/v1alpha1 kind: Certificate metadata: name: expi-web-certificate namespace: default spec: secretName: expi-web-certificate-tls issuerRef: name: {{ .Values.letsencrypt.issuer }} kind: ClusterIssuer commonName: {{ .Values.ingress.name }} # w/a for rewrite-target from https://github.com/jetstack/cert-manager/issues/286#issuecomment-361033891 acme: config: - http01: { ingressClass: nginx } domains: [ {{ .Values.ingress.name }} ]
Andrey
я про { ingressClass: nginx }
Андрей
сейчас проверим
Андрей
@gorilych No existing HTTP01 challenge solver pod found for Certificate "coffee/coffee-tls". One will be created.
Андрей
это вначале
Andrey
это норм, там даже может пара ошибок вылазить при начальном выписывании
Андрей
в среднем сколько на выписывание времени уходит?
Andrey
недолго, в пределах минут
Андрей
вторая итерация - снова упал
Андрей
меня смущает Looking up Ingresses for selector certmanager.k8s.io/acme-http-domain=892143170,certmanager.k8s.io/acme-http-token=1177816782
Андрей
и почему-то в начале все равно Created order for domains: [{dns domain}]
Stanislav
Ктото юзает containerd в проде? Как оно?
Ilya
тем не менее проверить стоит
кстати запустил с такими же параметрами но с базовым образом busybox - и там такой ошибки нет. А вот интересующий меня образ собран на alpine
Andrey
и почему-то в начале все равно Created order for domains: [{dns domain}]
прям так и написано domain? или имя вашего домена?
Андрей
имя домена, конечно
Andrey
после created orders в логах cert-manager есть что-то ещё? Должно быть Calling HTTP01ChallengeResponse и Calling GetChallenge
Андрей
вот после GetChallenge и падает, т.е. других Call нет
Андрей
делает Looking up Ingresses for selector certmanager.k8s.io/acme-http-domain=892143170,certmanager.k8s.io/acme-http-token=1177816782 I0731 14:15:58.610921 1 helpers.go:188] Found status change for Certificate "coffee-tls" condition "Ready": "False" -> "False"; setting lastTransitionTime to 2018-07-31 14:15:58.610899663 +0000 UTC m=+6951.477279875 и все, потом пишет что failed
Andrey
с { ingressClass: nginx } cert-manager должен динамически создавать ingress правила и поды под них. Можете попытаться поймать их с помощью kubectl get po,ingress --all-namespaces
Andrey
ну и посмотреть yaml структуру
Андрей
окей, поищу, спасибо ближе к вечеру отпишусь =)
Lex
Здарова, хочу очень странного, нужно делать docker commit и docker push для контейнеров в подах в кубере по запросу. Из вариантов вижу daemonset который имеет доступ к сокету рантайма контейнерного и отрабатывает запросы. Вопрос тут скорее в том какой можно ли передачу такого рода запросов сделать на возможностях кубера и как, может сталкивался кто с похожим?
Sergey
😧
Lex
d-in-d реализует нужное Вам, но без кубика.
мне на кубике надо, именно в кубере будут запущены эти контейнера и в определенные моменты их надо будет коммитить и пушить, криво, да, но надо :(
Pavel
без registry по всем node?
Lex
хм, да, по всем нодам, где будут запущены соответствующие поды
Lex
регистри будет отдельно, ecr скорее всего для начала
Lex
Buildah в контейнере
А он сможет конейнера подов в кубере коммитить и пушить?
Vadim
А он сможет конейнера подов в кубере коммитить и пушить?
Сам под? Нет, но внутри него сможет. Нужно SYS_CAP_ADMIN ну или privileged
Vadim
Может crictl сможет
Lex
Может crictl сможет
Неа, надо дописывать
Lex
Но тут вопрос, как передавать инвенты, и если возможно, то средствами самого кубера
Andrey
Слушать кастомный CRD наверное самый надёжный вариант
Смертельно убитый труп мертвеца. Извините.
Andor
"кастомный CRD" отлично звучит :)
Gleb
Смешно тебе
Михаил
Смешно тебе
Ну я и тех и тех устриц ел
Stas
У тебя просто нет фантазии)
есть, просто идеи аля серверлесс ферма он деманд я решил не озвучивать