You will need an internet domain and access to the registrar to change the name servers to Google Cloud DNS.
Create a managed zone named istio
in Cloud DNS (replace example.com
with your domain):
gcloud dns managed-zones create \
--dns-name="example.com." \
--description="Istio zone" "istio"
Look up your zone's name servers:
gcloud dns managed-zones describe istio
Update your registrar's name server records with the records returned by the above command.
Wait for the name servers to change (replace example.com
with your domain):
watch dig +short NS example.com
Create a static IP address named istio-gateway-ip
in the same region as your GKE cluster:
gcloud compute addresses create istio-gateway-ip --region europe-west3
Find the static IP address:
gcloud compute addresses describe istio-gateway-ip --region europe-west3
Create the following DNS records (replace example.com
with your domain and set your Istio Gateway IP):
DOMAIN="example.com"
GATEWAYIP="35.198.98.90"
gcloud dns record-sets transaction start --zone=istio
gcloud dns record-sets transaction add --zone=istio \
--name="${DOMAIN}" --ttl=300 --type=A ${GATEWAYIP}
gcloud dns record-sets transaction add --zone=istio \
--name="www.${DOMAIN}" --ttl=300 --type=A ${GATEWAYIP}
gcloud dns record-sets transaction add --zone=istio \
--name="*.${DOMAIN}" --ttl=300 --type=A ${GATEWAYIP}
gcloud dns record-sets transaction execute --zone istio
Verify that the wildcard DNS is working (replace example.com
with your domain):
watch host test.example.com
Next: Install Istio with Helm