I’m trying to get an on-prem worker KMS to talk to my boundary cluster. I’ve installed boundary on the worker and given it the ALB address of the controller cluster. When I start it up instead of getting a message to say it can’t connect to the address of the ALB I get an unexpected:
Nope. It’s the same everywhere. Not sure what they meant to do by adding that https://hashicorp.com/boundary/ prefix, maybe they are planning to allow other types of workers in the future…? My logs show the same thing.
Can you post your workers’ and controllers’ configuration files (with sensitive data redacted)?
As for your issue, KMS workers cannot talk to HCP Boundary clusters at this time, only PKI workers are supported…apologies! We do want to eventually enable this.
To be clear: please do include configuration information so we can help with the PKI worker. I was simply answering about the KMS one prior to getting more detail
It seems like you’ll use AWS for your production deployment, so let’s stick to the AWS KMS worker auth for now, shall we?
It could be that the ALB you mentioned in your initial post is messing up with the KMS-based authentication of the worker. You probably need to replace it with an NLB with TLS pass-through or to make the cluster interface of the upstreams public and add them to the initial_upstreams list in the worker config.
If I put the DNS name of the ALB in the initial upstream then I get the following error:
{"id":"FO49E2otxX","source":"https://hashicorp.com/boundary/........./worker","specversion":"1.0","type":"error","data":{"error":"unable to write connection nonce: x509: certificate is valid for ***************, not lzQilF2utrYRRQJgfhG9","error_fields":{},"id":"e_kzi1VKRkWK","version":"v0.1","op":"worker.(Worker).upstreamDialerFunc"},"datacontentype":"application/cloudevents","time":"2023-04-04T09:36:57.295962831Z"}
here
In the reference architecture for AWS in the documentation shows the controller behind an ALB here.
We are using the following terraform module which sets this up for us: Terraform Registry
How are you to handle SSL and autoscaling in AWS if you don’t use the ALB? If a worker dies how is the config kept upto date without a fixed point i.e. the ALB
You can use a load balancer for the cluster port (9201) just can’t do TLS offloading.
If you read the documentation I shared about the KMS auth, you’ll see that the TLS handshake is handled by the controller and the worker directly.