我正在尝试使用 cert-manager、istio ingress 和 LetsEncrypt 在 kubernetes 中配置 SSL 证书。我已经用 helm、cert-manager 安装了 istio,创建了 ClusterIssuer,然后我正在尝试创建一个证书。无法验证 acme 挑战,我正在尝试使用 http01 进行验证,但无法弄清楚如何为此使用 istio ingress。Istio 使用以下选项进行部署:
helm install --name istio install/kubernetes/helm/istio `
--namespace istio-system `
--set global.controlPlaneSecurityEnabled=true `
--set grafana.enabled=true`
--set tracing.enabled=true
--set kiali.enabled=true `
--set ingress.enabled=true
证书配置:
apiVersion: certmanager.k8s.io/v1alpha1
kind: Certificate
metadata:
name: example.com
namespace: istio-system
spec:
secretName: example.com
issuerRef:
name: letsencrypt-staging
kind: ClusterIssuer
commonName: 'example.com'
dnsNames:
- example.com
acme:
config:
- http01:
ingress: istio-ingress
domains:
- example.com
尝试这种方式时,由于某种原因,找不到 istio-ingress,但是当尝试指定 ingressClass: some-name,而不是 ingress: istio-ingress 时,我得到 404,因为 example.com/.well-known/无法达到 acme-challenge/token。如何解决?谢谢!