This page contains detailed instructions for bootstrapping a Google GKE Cluster (K8S) via Terraform.
We use Terraform and the offical Gruntwork Terraform GKE Module Please visit the pages for a more detail on the setup.
Set Up and Initialize your Terraform Workspace
Clone the Gruntwork GKE module Repository:
Switch into the repository directory:
Configure Terraform GKE Cluster
For educational reasons, we will not use the Helm resource in this step. Please uncomment the following lines in main.tf:
Fill in the required variables in variables.tf based on your needs as example:
Authenticate to GCP
gcloud auth application-default manages your active Application Default Credentials which provide a method to get credentials used in calling Google APIs.
Visit Google Cloud SDK documentation to learn more.
Initialize your Terraform workspace, which will download and configure the providers.
Plan Terraform Run
check your Terraform plan before applying it with
if all is correct you will get a rendered execution plan
Run Terraform to Create a GKE Cluster
At the end of the
terraform apply, you should now have a working GKE cluster and kubectl context configured. So let's verify that in the next step!
Deploying NGINX Ingress Controller
We use NGINX Ingress Controller and need to deploy it via helm.
run the following commands:
after some minutes you should see the Public LoadBalancer IP of the Ingress via:
Example output shows a service with an external IP address that can be used to access the cluster.
as next step Setup Rasa X via Helm chart
- Setup Rasa X via Helm chart on the fresh created GKE Cluster.