使用Kubernetes 1.12.6-gke.7或更高版本,可以创建一个ManagedCertificate,然后从向Internet公开服务的侵入资源中引用它。
运行kubectl首先描述managedcertificate,表示证书处于供应状态,但最终转到FailedNotVisible。
尽管使用静态IP和DNS可以很好地解析到所述服务的http版本,但ManagedCertificate的所有管理证书最终都处于"Status: FailedNotVisible“状态。
我所做工作的概要:
过了一会儿
kubectl描述托管证书子域-域-证书
结果为“状态: FailedNotVisible”。
Name: subdomain-domain-certificate
Namespace: default
Labels: <none>
Annotations: <none>
API Version: networking.gke.io/v1beta1
Kind: ManagedCertificate
Metadata:
Creation Timestamp: 2019-04-15T17:35:22Z
Generation: 1
Resource Version: 52637
Self Link: /apis/networking.gke.io/v1beta1/namespaces/default/managedcertificates/subdomain-domain-certificate
UID: d8e5a0a4-5fa4-11e9-984e-42010a84001c
Spec:
Domains:
subdomain.domain.com
Status:
Certificate Name: mcrt-ac63730e-c271-4826-9154-c198d654f9f8
Certificate Status: Provisioning
Domain Status:
Domain: subdomain.domain.com
Status: FailedNotVisible
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Create 56m managed-certificate-controller Create SslCertificate mcrt-ac63730e-c271-4826-9154-c198d654f9f8据我所知,如果负载均衡器配置正确(在ManagedCertificate资源的掩蔽项下完成)和DNS (它可以很好地解析到非https端点),那么证书应该进入状态:活动状态吗?
发布于 2019-04-16 13:41:17
我的问题背后的问题是DNSSEC配置错误。在通过https://dnssec-analyzer.verisignlabs.com/运行DNS之后,我能够识别并修复这个问题。
发布于 2020-01-24 16:59:17
DNSSEC确实没有为我的域启用,但是在配置它之后,ManagedCertificate配置仍然没有通过,我不知道发生了什么。删除和重新应用ManagedCertificate和Ingress清单并没有起什么作用。但是,发出命令gcloud beta compute ssl-certificates list时,显示了几个未使用的托管证书,并使用cloud compute ssl-certificates delete NAME ...删除了它们,然后重新启动配置过程在我的例子中起了作用。
发布于 2019-05-21 17:21:32
您需要确保域名解析为您的GKE入侵的IP地址,准确地遵循"使用托管证书创建一个侵入“的说明。
有关更多细节,请参见Google负载平衡文档。来自https://cloud.google.com/load-balancing/docs/ssl-certificates#domain-status
状态FAILED_NOT_VISIBLE表示,由于DNS或负载平衡配置出现问题,域的证书配置失败。请确保DNS已配置,以便证书域解析为负载均衡器的IP地址。
https://stackoverflow.com/questions/55695379
复制相似问题