Last active
August 24, 2024 06:20
-
-
Save Tambunan26/9063521fdf406645aad4527ccd069149 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Task 1: Create a project jumphost instance | |
Navigation menu > Compute engine > VM Instance | |
Task 2: Create a Kubernetes service cluster | |
gcloud config set compute/zone us-east1-b | |
gcloud container clusters create nucleus-webserver1 | |
gcloud container clusters get-credentials nucleus-webserver1 | |
kubectl create deployment hello-app --image=gcr.io/google-samples/hello-app:2.0 | |
kubectl expose deployment hello-app --type=LoadBalancer --port 8080 | |
kubectl get service | |
Task 3: Setup an HTTP load balancer | |
cat << EOF > startup.sh | |
#! /bin/bash | |
apt-get update | |
apt-get install -y nginx | |
service nginx start | |
sed -i -- 's/nginx/Google Cloud Platform - '"\$HOSTNAME"'/' /var/www/html/index.nginx-debian.html | |
EOF | |
1 .Create an instance template : | |
gcloud compute instance-templates create nginx-template \ | |
--metadata-from-file startup-script=startup.sh | |
2 .Create a target pool : | |
gcloud compute target-pools create nginx-pool | |
3 .Create a managed instance group : | |
gcloud compute instance-groups managed create nginx-group \ | |
--base-instance-name nginx \ | |
--size 2 \ | |
--template nginx-template \ | |
--target-pool nginx-pool | |
gcloud compute instances list | |
4 .Create a firewall rule to allow traffic (80/tcp) : | |
gcloud compute firewall-rules create www-firewall --allow tcp:80 | |
gcloud compute forwarding-rules create nginx-lb \ | |
--region us-east1 \ | |
--ports=80 \ | |
--target-pool nginx-pool | |
gcloud compute forwarding-rules list | |
5 .Create a health check : | |
gcloud compute http-health-checks create http-basic-check | |
gcloud compute instance-groups managed \ | |
set-named-ports nginx-group \ | |
--named-ports http:80 | |
6 .Create a backend service and attach the manged instance group : | |
gcloud compute backend-services create nginx-backend \ | |
--protocol HTTP --http-health-checks http-basic-check --global | |
gcloud compute backend-services add-backend nginx-backend \ | |
--instance-group nginx-group \ | |
--instance-group-zone us-east1-b \ | |
--global | |
7 .Create a URL map and target HTTP proxy to route requests to your URL map : | |
gcloud compute url-maps create web-map \ | |
--default-service nginx-backend | |
gcloud compute target-http-proxies create http-lb-proxy \ | |
--url-map web-map | |
8 .Create a forwarding rule : | |
gcloud compute forwarding-rules create http-content-rule \ | |
--global \ | |
--target-http-proxy http-lb-proxy \ | |
--ports 80 | |
gcloud compute forwarding-rules list |
Crie o site por trás do balanceador de carga HTTP Verifique se os servidores da Web estão servindo no frontend do balanceador de carga HTTP(s) Estou recebendo este erro, por favor, alguém o resolveu
Siga este link
https://gist.github.com/Tambunan26/9063521fdf406645aad4527ccd069149#gistcomment-3915060Resolvi desta forma:
gcloud compute firewall-rules create grant-tcp-rule-408 --network=default --action=allow --direction=ingress --source-ranges=130.211.0.0/22,35.191.0.0/16 --rules=tcp:80
That did it! Thank you so much.
gcloud compute instance-groups managed set-named-ports YOUR_MANAGED_INSTANCE_GROUP_NAME --named-ports http:80 --zone=YOUR_ZONE
Thank you so much for this. This worked for me. Thanks a bunch!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I was getting the error "Please create the managed instance group with 2 nginx web server" after doing everything, and using the command
gcloud compute instance-groups managed set-named-ports YOUR_MANAGED_INSTANCE_GROUP_NAME --named-ports http:80 --zone=YOUR_ZONE
solved it for me and I could get the final check in the lab.