Set Up Network and HTTP Load Balancers

 Set Up Network and HTTP Load Balancers


TECH_ED



TASK 5 : Create an HTTP load balancer [50 / 50]


Get direct 50 points just by copy pasting the below code : 


gcloud compute instance-templates create lb-backend-template \

   --region=us-central1 \

   --network=default \

   --subnet=default \

   --tags=allow-health-check \

   --image-family=debian-9 \

   --image-project=debian-cloud \

   --metadata=startup-script='#! /bin/bash

     apt-get update

     apt-get install apache2 -y

     a2ensite default-ssl

     a2enmod ssl

     vm_hostname="$(curl -H "Metadata-Flavor:Google" \

     http://169.254.169.254/computeMetadata/v1/instance/name)"

     echo "Page served from: $vm_hostname" | \

     tee /var/www/html/index.html

     systemctl restart apache2'

gcloud compute instance-groups managed create lb-backend-group \

   --template=lb-backend-template --size=2 --zone=us-central1-a

gcloud compute firewall-rules create fw-allow-health-check \

    --network=default \

    --action=allow \

    --direction=ingress \

    --source-ranges=130.211.0.0/22,35.191.0.0/16 \

    --target-tags=allow-health-check \

    --rules=tcp:80

gcloud compute addresses create lb-ipv4-1 \

    --ip-version=IPV4 \

    --global

gcloud compute addresses describe lb-ipv4-1 \

    --format="get(address)" \

    --global

    gcloud compute health-checks create http http-basic-check \

        --port 80

    gcloud compute backend-services create web-backend-service \

        --protocol=HTTP \

        --port-name=http \

        --health-checks=http-basic-check \

        --global

    gcloud compute backend-services add-backend web-backend-service \

        --instance-group=lb-backend-group \

        --instance-group-zone=us-central1-a \

        --global

    gcloud compute url-maps create web-map-http \

        --default-service web-backend-service

    gcloud compute target-http-proxies create http-lb-proxy \

        --url-map web-map-http

    gcloud compute forwarding-rules create http-content-rule \

        --address=lb-ipv4-1\

        --global \

        --target-http-proxy=http-lb-proxy \

        --ports=80