Deploy RELIANOID Load Balancer Community Edition on GCP with Terraform

View Categories

Deploy RELIANOID Load Balancer Community Edition on GCP with Terraform

3 min read

This guide walks you through deploying the RELIANOID Community Edition virtual machine on Google Cloud Platform (GCP) using the official Terraform module available on the Terraform Registry.

What This Module Provisions #

When deployed, the Terraform module automatically creates the following resources:

  • VPC Network
  • Subnet
  • Firewall Rule (allowing SSH 22 and Web GUI 444)
  • Static External IP
  • Network Interface
  • Compute Instance using the RELIANOID Community Edition image from the Google Cloud Marketplace

Prerequisites #

1. Install Terraform #

Download and install Terraform for your operating system, then verify the installation:

terraform -version

2. Install Google Cloud SDK #

Download and install the Google Cloud SDK.
Authenticate your account and set the active project:

gcloud auth login
gcloud config set project <YOUR_PROJECT_ID>

3. Generate an SSH Key Pair #

You’ll need an SSH key to access your VM.
If you don’t already have one, create it with:

ssh-keygen -t rsa -b 4096 -f id_rsa

This will generate:

  • id_rsa → Private key
  • id_rsa.pub → Public key
  • Keep both files in the same directory as your Terraform configuration files.

    Step 1: Locate the Terraform Module #

    Visit the Terraform Registry and search for:
    relianoid/relianoid-community/google

    Select the module to view usage details.

    Step 2: Create a Project Directory #

    mkdir relianoid-gcp
    cd relianoid-gcp

    Step 3: Create Terraform Configuration Files #

    Create the following files in your project directory:

    main.tf #

    module "relianoid-community" {
      source              = "relianoid/relianoid-community/google"
      version             = "1.0.0"
      project_id          = var.project_id
      region              = var.region
      zone                = var.zone
      public_ssh_key_path = "${path.module}/id_rsa.pub"
    }
    

    variables.tf #

    variable "project_id" {
      description = "GCP Project ID"
      type        = string
    }
    variable "region" {
      description = "GCP region for resources"
      type        = string
      default     = "us-central1"
    }
    variable "zone" {
      description = "GCP zone for VM deployment"
      type        = string
      default     = "us-central1-a"
    }
    

    terraform.tfvars #

      project_id  = "your-gcp-project-id"
      region      = "us-central1"
      zone       = "us-central1-a"
    

    outputs.tf #

    output "instance_id" {
      description = "The ID of the GCP VM instance"
      value       = module.relianoid-community.instance_id
    }
    
    output "instance_public_ip" {
      description = "The public IP of the RELIANOID VM"
      value       = module.relianoid-community.instance_public_ip
    }
    
    output "instance_private_ip" {
      description = "The private IP of the RELIANOID VM"
      value       = module.relianoid-community.instance_private_ip
    }
    

    Step 4: Initialize and Deploy #

    Run the following commands in order:

    terraform init
    terraform plan
    terraform apply
    

    Confirm with yes when prompted

    Step 5: Access the RELIANOID VM #

    Once deployment completes, Terraform will output the VM’s public IP address.

    SSH Access
    ssh -i id_rsa admin@<instance_public_ip>

    Default username: admin

    Web GUI Access
    Open your browser and navigate to:
    https://<instance_public_ip>:444

    Outputs #

    Output Name Description
    instance_id The ID of the GCP VM instance
    instance_public_ip The public IP address of the VM
    instance_private_ip The private IP address of the VM

    Destroy the Deployment #

    To remove all resources created by Terraform:

    terraform destroy

    Important Notes:

    • Ensure you’ve accepted the RELIANOID image terms in the Google Cloud Marketplace before deploying.
    • Keep your private SSH key (id_rsa) secure — do not share it publicly.
    • The module automatically provisions all networking, firewall, and compute resources required for deployment.

    📄 Download this document in PDF format #

      EMAIL: *

      SHARE ON:

    Powered by BetterDocs