[英]Cert-Manager provide own SSL Certificate for AKS
我想使用 cert-manager 在 AKS 上頒發我自己的 SSL 證書。
我已經有一個我想要使用的簽名證書 ( https://www.quovadisglobal.de/Zertifikate/SSLCertificates/BusinessSSLCertificates.aspx )。 在 cert-manager 的文檔中,我只找到了兩個相關的解決方案。 https://cert-manager.io/docs/configuration/
SelfSigned :這應該用於由 CSR 簽署證書。
CA :這應該用於簽署傳入的證書請求。
我嘗試了第二個。 這是我所做的:
安裝並驗證證書管理器:
$ kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v0.12.0/cert-manager.yaml
$ kubectl get pods --namespace cert-manager
NAME READY STATUS RESTARTS AGE
cert-manager-7c5748846c-b4nqb 1/1 Running 0 2d23h
cert-manager-cainjector-7b5965856-bgk4g 1/1 Running 1 2d23h
cert-manager-webhook-5759dd4547-mlgjs 1/1 Running 0 2d23h
從私鑰和證書創建 Secret:
$ sudo kubectl create secret tls ssl-secret-p --cert=mycert.crt --key=mykey.key --namespace=cert-manager
創建發行人:
apiVersion: cert-manager.io/v1alpha2
kind: ClusterIssuer
metadata:
name: ca-issuer
namespace: cert-manager
spec:
ca:
secretName: ssl-secret-p
錯誤:
$ sudo kubectl get clusterissuers ca-issuer -n cert-manager -o wide
NAME READY STATUS AGE
ca-issuer False Error getting keypair for CA issuer: certificate is not a CA 5m
我做錯了什么?
編輯:
sudo kubectl -n namespace get ing
NAME HOSTS ADDRESS PORTS AGE
nginx-ingress ***.com 51.105.205.128 80, 443 13m
Cert manager會進行acmechallenge驗證,嘗試將這個secret name傳遞給ingress規則中的tls,一旦acmechalleng出現有效,就會在ingress看到對應的entry
kubectl -n namespace get ing
會給你那個。
然后證書將獲得就緒狀態
我試過了,但我沒有使用任何預先創建的 tls 機密。 你可以參考這個stackoverflow帖子,我想它對你有點幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.