Skip to content

Commit

Permalink
Add additional advice in the README about DNS
Browse files Browse the repository at this point in the history
  • Loading branch information
Scott Reu committed Feb 5, 2021
1 parent 1fe3fda commit 518af6e
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ As with all Terraform on GCP, you'll need to create a service account (or use on

The outward-facing ACME TLS cert uses DNS validation (because this is all happening programmatically, it's easier than trying to do HTTP validation). You'll need to own whatever domain you provide in the module invocation's `vault_hostname` variable.

The way I do this is with a domain I own in [Google Domains](https://domains.google.com) (a separate service from GCP). I'd recommend running an initial `terraform apply` and seeing it error out due to the ACME cert resource not being able to find a record for the host specified at `vault_hostname`. Then pop into GCP -> Network Services -> Cloud DNS, grab the IP address from your newly created Zone (making sure to note the Nameservers that it's using!), and add those Nameservers as NS records for `vault.yourdomain.com` (or whatever parameter you stuck in the `vault_hostname` variable) with your DNS provider. Then simply wait a few minutes for the change to propagate and `terraform apply` again.

There are probably other ways to do this involving GCP more directly for domain name management, but this is how I handle it with a pre-existing domain that I already own in another platform.

### Caveat: ACME/LetsEncrypt Cert Stuff

The externally-facing TLS listener for this cluster is provisioned with a cert from ACME (LetsEncrypt). As a result, you will need to run a `terraform apply` at least once every 30 days in order to renew the cert.
Expand Down

0 comments on commit 518af6e

Please sign in to comment.