Welcome to ExamTopics
ExamTopics Logo
- Expert Verified, Online, Free.
Location Chicago IL, USA

Exam Professional Cloud Architect topic 1 question 106 discussion

Actual exam question from Google's Professional Cloud Architect
Question #: 106
Topic #: 1
[All Professional Cloud Architect Questions]

A development team at your company has created a dockerized HTTPS web application. You need to deploy the application on Google Kubernetes Engine (GKE) and make sure that the application scales automatically.
How should you deploy to GKE?

  • A. Use the Horizontal Pod Autoscaler and enable cluster autoscaling. Use an Ingress resource to load-balance the HTTPS traffic.
  • B. Use the Horizontal Pod Autoscaler and enable cluster autoscaling on the Kubernetes cluster. Use a Service resource of type LoadBalancer to load-balance the HTTPS traffic.
  • C. Enable autoscaling on the Compute Engine instance group. Use an Ingress resource to load balance the HTTPS traffic.
  • D. Enable autoscaling on the Compute Engine instance group. Use a Service resource of type LoadBalancer to load-balance the HTTPS traffic.
Show Suggested Answer Hide Answer

Suggested Answer: B
Reference -
https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-autoscaler

Comments

crypt0
1 year, 1 month ago
Why not using Ingress? (A)
upvoted 7 times
Smart
9 months ago
"Ingress is a Kubernetes resource that encapsulates a collection of rules and configuration for routing external HTTP(S) traffic to internal services. On GKE, Ingress is implemented using Cloud Load Balancing. When you create an Ingress in your cluster, GKE creates an HTTP(S) load balancer and configures it to route traffic to your application." Are you exposing multiple services through single IP address? Hence, do you need routing your traffic? Correct answer is B.
upvoted 10 times
Smart
9 months ago
My bad, as stated by other, Service doesn't support L7 load balancing. Hence, need to setup ingress resource. Correct answer is A.
upvoted 9 times
tartar
3 months, 2 weeks ago
B is ok. https://cloud.google.com/kubernetes-engine/docs/tutorials/hello-app
upvoted 3 times
GopiSivanathan
1 month, 1 week ago
service resource does a NLB using IP address, however, Ingress does HTTP(S) Load balancer. A should be an answer.
upvoted 1 times
...
...
...
...
...
jcmoranp
1 year ago
Name is service resource, it's B: https://cloud.google.com/kubernetes-engine/docs/concepts/service?hl=es-419
upvoted 11 times
...
Shyeom
10 months, 2 weeks ago
Service not support https lb(L7)
upvoted 4 times
...
priyas
10 months, 1 week ago
the answer should be A, Service type "LoadBalancer" supports only L4 LoadBalancer not L7(HTTPS) https://serverfault.com/questions/978545/is-it-possible-to-provision-an-ssl-proxy-for-a-kubernetes-service-of-type-loadb
upvoted 3 times
natpilot
10 months ago
I agree, service with loadbalancer type support L4; usually , for L7 and SSL mgmt you could use nginx or traefik ingress controller and declare the web host with ingress definition; with these solution the l7 is managed by ingress-controller
upvoted 3 times
...
...
kvokka
10 months ago
no mention about DNS, so ingress is redundant, it's B
upvoted 3 times
...
KNG
9 months, 1 week ago
Should be A https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer/
upvoted 6 times
...
PalSri
8 months, 3 weeks ago
Answer should be A HTTPS load is not supported on loadbalancer
upvoted 2 times
...
skywalker
6 months, 2 weeks ago
Should be "A" https://cloud.google.com/kubernetes-engine/docs/concepts/ingressSShoul
upvoted 2 times
...
Jack_in_Large
6 months, 1 week ago
It's B.
upvoted 2 times
...
GunjGupta
6 months, 1 week ago
The answer should be A because 1> Service Type: LoadBalancer creates L4 type(TCP/UDP/SSL) balancer(external/internal). Buy Type: Ingress instructs GKE to create an external HTTPS Load Balancer.
upvoted 1 times
...
markkanday
6 months, 1 week ago
Ans. should be B .https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer When you specify type:Ingress in the resource manifest, you instruct GKE to create an Ingress resource. By including annotations and supporting workloads and Services, you can create a custom Ingress controller. Otherwise, GKE makes appropriate Google Cloud API calls to create an external HTTP(S) load balancer.
upvoted 1 times
...
AD2AD4
5 months, 4 weeks ago
Final Decision to go with Option A. https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer/
upvoted 3 times
...
asure
5 months, 2 weeks ago
https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer Confusing Question: Read this, Answer tend to be A Ingress is a Kubernetes resource that encapsulates a collection of rules and configuration for routing external HTTP(S) traffic to internal services. On GKE, Ingress is implemented using Cloud Load Balancing. When you create an Ingress in your cluster, GKE creates an HTTP(S) load balancer and configures it to route traffic to your application. While the Kubernetes Ingress is a beta resource, meaning how you describe the Ingress object is subject to change, the Cloud Load Balancers that GKE provisions to implement the Ingress are production-ready. The following config file defines an Ingress resource that directs traffic to your web Service: apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata: name: basic-ingress spec: backend: serviceName: web servicePort: 8080
upvoted 2 times
BeppeIta
5 months, 2 weeks ago
Agree. In K8s the LoadBalancer Service (option B) is NOT for HTTP but only TCP, UDP, and SCTP.Moreover, the documentation here https://cloud.google.com/kubernetes-engine/docs/concepts/horizontalpodautoscaler is related to K8s mechanism and not any particular action in GKS. So for me is B is wrong in any case cause of here the attention have to be paid between Load-balancer service( NOT for HTTP protocol) and Ingress ( http "native" )
upvoted 1 times
...
...
pbrat
5 months, 1 week ago
Answer A ; https://cloud.google.com/kubernetes-engine/docs/concepts/network-overview#ext-lb
upvoted 1 times
...
beehive
4 months, 3 weeks ago
correct ans. is A.. check: https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer
upvoted 1 times
...
theWildOne
4 months, 2 weeks ago
ingress doesnt LB https, ingress balances L7... B is correct, LoadBalanced in the manifest indicates the L4 LB , on port 443 in this case... all good
upvoted 1 times
...
saurabh1805
4 months, 1 week ago
Correct Answer is B as service type load balancer (its actually at level L3/L4) can load balance http traffics.
upvoted 1 times
...
Kamarudin
3 months, 3 weeks ago
Looks Like A. https://cloud.google.com/kubernetes-engine/docs/concepts/ingress
upvoted 2 times
...
Sreekey
3 months, 2 weeks ago
The answer is A . You can refer link https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer
upvoted 1 times
...
wiqi
3 months ago
B is correct.
upvoted 2 times
...
mbiy
3 months ago
I would go with A, as Ingress resource in GKE abstracts HTTP(s) Load Balancer creation and configure route traffic to application that requires to be exposed. Even though it is beta solution I think we can still consider this option.
upvoted 1 times
...
gcpgang
2 months ago
The question has two options that are both technically correct A and B, however in the referenced link that most respondents are using to justify A, https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer/ There is an explicit statement, "If you are exposing an HTTP(S) service hosted on GKE, HTTP(S) load balancing is the recommended method for load balancing." Ingress service is appropriate, however it conflicts with the above statement. For this reason I believe B is the more appropriate answer.
upvoted 1 times
gcpgang
2 months ago
Actually, now that I read more into ingress, A covers B and looks to be more correct.
upvoted 1 times
...
...
f0x
1 month, 2 weeks ago
https://cloud.google.com/kubernetes-engine/docs/how-to/container-native-load-balancing App is dockerzied which points to a container. Container load balancing is ingress natively, going with A.
upvoted 1 times
...
awadheshk
1 month, 2 weeks ago
Correct answer is B.
upvoted 1 times
...
gcparchitect007
3 weeks, 2 days ago
A is the correct answer since we need ingress of resource for the load balancer in Kubernetes
upvoted 1 times
...
vibhavchavan
3 weeks, 1 day ago
Answer is A. The link provides the details of both load balancer. The service resource will also do the load balancing but at level 3 and 4. Not suitable for HTTP. So use ingress which will create the HTTP load balancer.
upvoted 1 times
...
krakoziabl
1 day, 5 hours ago
In Kubernetes, an Ingress is an object that allows access to your Kubernetes services from outside the Kubernetes cluster. - ingress is for access, nor for LB.
upvoted 2 times
...
OSNG
12 hours, 45 minutes ago
I think A is the correct answer according to the following link: https://cloud.google.com/solutions/best-practices-for-running-cost-effective-kubernetes-applications-on-gke#use_container-native_load_balancing_through_ingress
upvoted 1 times
...

SaveCancel