我正在努力使用 GoDaddy 证书设置 kubernetes key ,以便将其与 Kubernetes 集群中的 Ingress Nginx Controller 一起使用。
我知道 GoDaddy 不是解决此问题的首选地点,但这不在我的掌控范围内...
这是我尝试过的(主要基于这个 github post ):
我收到一封来自 GoDaddy 的邮件,其中包含两个文件:generate-csr.txt
和 generated-private-key.txt
。
然后我在 GoDaddy 的网站上下载了证书包(我选择了“Apache”服务器类型,因为这是 Nginx 的推荐类型)。该存档包含三个文件(带有生成的名称):xxxx.crt
和 xxxx.pem
(这两个文件的内容相同,它们代表域证书)和 gd_bundle -g2-g1.crt
(这是中间证书)。
然后,我继续连接域证书和中间证书(让我们将其命名为 chain.crt),并尝试使用以下命令使用这些文件创建 secret :
kubectl create secret tls organization-tls --key generated-private-key.txt --cert chain.crt
我的斗争从这里开始,因为它抛出了这个错误:
error: tls: failed to find any PEM data in key input
我该如何解决这个问题,或者我缺少什么?
很抱歉打扰这样的琐碎事情,但是已经过去两天了,我真的很难找到适用于 Ingress Nginx 用例的正确文档或示例......
非常欢迎任何帮助或提示,非常感谢您!
最佳答案
这是一个社区 Wiki 答案,发布是为了提高可见性,因此请随意编辑它并添加您认为重要的任何其他详细信息。
正如OP在评论中提到的,通过在文件开头添加新行解决了问题。
"The key wasn't format correctly as it was lacking a newline in the beginning of the file. So this particular problem is now resolved."
this answer 中也解决了类似的问题.
关于kubernetes - 如何使用 GoDaddy 证书为 Nginx Ingress Controller 设置 Kubernetes key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68994754/