Hi,
I am trying to deploy Vault HA cluster on AWS EKS using Helm. There is already a Consul cluster that is deployed on same EKS cluster using Helm which is supposed to act as backend storage for Vault.
My Helm values file for Vault is below:
server:
extraVolumes:
- type: secret
name: consul-consul-ca-cert
- type: secret
name: consul-consul-ca-key
- type: secret
name: consul-consul-server-cert
ha:
enabled: true
replicas: 3
config: |
ui = true
listener "tcp" {
tls_disable = 1
address = "[::]:8200"
cluster_address = "[::]:8201"
}
storage "consul" {
address = "HOST_IP:8501"
path = "vault"
scheme = "https"
tls_min_version = "tls12"
tls_skip_verify = "false"
tls_ca_file = "/vault/userconfig/consul-consul-ca-cert/tls.crt"
tls_cert_file = "/vault/userconfig/consul-consul-server-cert/tls.crt"
tls_key_file = "/vault/userconfig/consul-consul-server-cert/tls.key"
}
seal "awskms" {
region = "eu-west-1"
kms_key_id = "AWS_KEY_HERE"
}
service:
type: NodePort
# Ingress allows ingress services to be created to allow external access
# from Kubernetes to access Vault pods.
ingress:
enabled: true
labels:
name: vault-public
annotations: |
external-dns.alpha.kubernetes.io/hostname: sandbox-vault.test.com
alb.ingress.kubernetes.io/backend-protocol: HTTP
alb.ingress.kubernetes.io/listen-ports: '[{"HTTPS":443}]'
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/tags: ServiceOwner=Systems,Environment=sandbox,Name=vault-public
alb.ingress.kubernetes.io/target-type: instance
external-dns.alpha.kubernetes.io/ttl: "30"
kubernetes.io/ingress.class: alb
hosts:
- host: sandbox-vault.test.com
paths:
- "/*"
ui:
# True if you want to create a Service entry for the Vault UI.
#
# serviceType can be used to control the type of service created. For
# example, setting this to "LoadBalancer" will create an external load
# balancer (for supported K8S installations) to access the UI.
enabled: true
serviceType: "NodePort"
externalPort: 80
When the vault pods come up they give following error in the logs:
storage migration check error: error="Get https://10.110.1.45:8501/v1/kv/vault/core/migration: x509: certificate signed by unknown authority"
The certificates used by Consul are self-signed.
I have tried a lot of options but nothing seems to be working. Can someone please point me in the right direction?
Thanks