№ 10443 В разделе "Sysadmin"
от December 14th, 2019,
В подшивках: cert-manager, Helm, Kubernetes
In ingress resource you created new domain to perform HTTP01 challenge and obtain new LE certificate but something goes wrong in log file:
E1214 14:35:06.644315 1 sync.go:183] cert-manager/controller/challenges "msg"="propagation check failed" "error"="failed to perform self check GET request 'http://test.k8s.blindage.org/.well-known/acme-challenge/nmxxZh0K7iXuOnqGRm52PqymHj8YFVpN2MryLfRdVoU': Get http://test.k8s.blindage.org/.well-known/acme-challenge/nmxxZh0K7iXuOnqGRm52PqymHj8YFVpN2MryLfRdVoU: dial tcp: lookup test.k8s.blindage.org on 10.245.0.10:53: no such host" "dnsName"="test.k8s.blindage.org" "resource_kind"="Challenge" "resource_name"="tls-test-k8s-blindage-org-749846670-0" "resource_namespace"="testing" "type"="http-01"
… and this error repeats multiple times without any progress. Its managed Kubernetes in DigitalOcean.
To solve this problem just uncomment these lines in Helm chart of cert-manager to provide your own nameservers:
podDnsPolicy: "None" podDnsConfig: nameservers: - "1.1.1.1" - "8.8.8.8"
Voila! You got new certificate.
№ 10436 В разделе "Sysadmin"
от December 13th, 2019,
В подшивках: cert-manager, Kubernetes
Предыстория такая, была в DNS A запись code.semantiqo.ru и указывала она на IP балансера kubernetes. Захотел сделать нормально и создать на серверах digitalocean зону code.semantiqo.ru целиком и уже оттуда ей управлять. Захотел – сделал! Добавил в ingress ресурс выдачу сертификата от letsencrypt и затем добавил в панельке хостингера 3 NS записи указывающие на сервера digitalocean и стал ждать когда все само подтащится и заработает.
Время шло и в логах я продолжал видеть обращение к родительскому домену с целью создать челендж записи.
I1212 19:07:55.716799 1 controller.go:129] cert-manager/controller/challenges "level"=0 "msg"="syncing item" "key"="production/tls-code-semantiqo-ru-2352965144-0"
I1212 19:07:55.717716 1 dns.go:104] cert-manager/controller/challenges/Present "level"=0 "msg"="presenting DNS01 challenge for domain" "dnsName"="code.semantiqo.ru" "domain"="code.semantiqo.ru" "resource_kind"="Challenge" "resource_name"="tls-code-semantiqo-ru-2352965144-0" "resource_namespace"="production" "type"="dns-01"
E1212 19:07:56.164072 1 controller.go:131] cert-manager/controller/challenges "msg"="re-queuing item due to error processing" "error"="POST https://api.digitalocean.com/v2/domains/semantiqo.ru/records: 404 The resource you were accessing could not be found." "key"="production/tls-code-semantiqo-ru-2352965144-0
Проверил все ресурсы, даже полностью удалял все секреты и ресурсы и т.д., ничего не помогало, будто cert-manager просто не видит новую зону. И тут меня осенило просто прибить нахер этот гнусный под с гнусным днс кешем. И таки что бы вы могли подумать? Оно заработало! cert manager наконец правильно увидел зону и получил сертификат.
Чтобы окончательно решить эту проблему можно сходить по ссылке и настроиться.
№ 10106 В разделе "Sysadmin"
от July 1st, 2019,
В подшивках: cert-manager, Helm, Kubernetes
{{- if .Values.ingress.tls }} {{- range .Values.ingress.tls }} {{- $secretName := .secretName -}} {{- range .hosts }} --- apiVersion: certmanager.k8s.io/v1alpha1 kind: Certificate metadata: name: {{ $fullName }} spec: acme: config: - dns01: provider: route53 domains: - {{ . }} commonName: "" dnsNames: - {{ . }} issuerRef: kind: ClusterIssuer name: letsencrypt secretName: {{ $secretName }} {{- end }} {{- end }} {{- end }}
Fortune cookie: QOTD: She began coming, making noises like a small animal in pain. Ouch! Ow! My paw! Ouch!!