Kubernetes-证书管理器-创建使用Hashicorp Vault的颁发者时出错
我创建了一个vault集群,它使用模块生成的OpenSSL自签名证书 当我尝试在Kubernetes中创建使用此Vault群集的颁发者资源时,出现以下错误Kubernetes-证书管理器-创建使用Hashicorp Vault的颁发者时出错,kubernetes,hashicorp-vault,cert-manager,Kubernetes,Hashicorp Vault,Cert Manager,我创建了一个vault集群,它使用模块生成的OpenSSL自签名证书 当我尝试在Kubernetes中创建使用此Vault群集的颁发者资源时,出现以下错误 validation failure list: spec.vault.caBundle in body must be of type byte: "../certs/vault-cabundle.pem" 这是我的yaml文件 apiVersion: certmanager.k8s.io/v1alpha1 kind: ClusterIs
validation failure list:
spec.vault.caBundle in body must be of type byte: "../certs/vault-cabundle.pem"
这是我的yaml文件
apiVersion: certmanager.k8s.io/v1alpha1
kind: ClusterIssuer
metadata:
name: vault-clusterissuer
spec:
vault:
path: pki_int/sign/cert-manager
server: https://vault-cluster.example.com:8200
caBundle: /etc/ssl/certs/istio-ingress/vault-cabundle.pem
auth:
appRole:
path: approle
roleId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
secretRef:
name: cert-manager-vault-approle
key: secretId
我已使用此命令对base64加密caBundle文件-
openssl base64 -in cabundle.pem -out vault-cabundle.pem
非常感谢您在这方面提供的任何帮助。这似乎是由于属性caBundle的yaml文件中的预期格式。我找不到它的文档化模式。但是,我发现了一个例子。caBundle似乎只使用了一行字符串base64。我已经测试过了,它对我很有效
如果您将整个base64编码文件放在一行中,并将其放在caBundle上,它应该可以工作。请参阅发布的链接以获取示例。caBundle字段需要是pem文件中内容的base64值。证书管理器无法从文件系统读取文件