Topic: Google Architect topic 1 question 31

A development manager is building a new application. He asks you to review his requirements and identify what cloud technologies he can use to meet them. The application must:
1. Be based on open-source technology for cloud portability
2. Dynamically scale compute capacity based on demand
3. Support continuous software delivery
4. Run multiple segregated copies of the same application stack
5. Deploy application bundles using dynamic templates
6. Route network traffic to specific services based on URL
Which combination of technologies will meet all of his requirements?

A.
Google Kubernetes Engine, Jenkins, and Helm
B.
Google Kubernetes Engine and Cloud Load Balancing
C.
Google Kubernetes Engine and Cloud Deployment Manager
D.
Google Kubernetes Engine, Jenkins, and Cloud Load Balancing

Re: Google Architect topic 1 question 31

it should be A .. helm is needed for "Deploy application bundles using dynamic templates"

Load Balancing should be part of GKE Already

Re: Google Architect topic 1 question 31

Kubernetes Engine offers integrated support for two types of Cloud Load Balancing (Ingress and External Network Load Balancing) , hence Option A
Reference : https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer

Re: Google Architect topic 1 question 31

A should be fine

Re: Google Architect topic 1 question 31

Load balancing is not a part of GKE untill it's created explicitly

Re: Google Architect topic 1 question 31

Not for "based on URL", that is the difference.

Re: Google Architect topic 1 question 31

https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer#optional_serving_multiple_applications_on_a_load_balancer

As per the above document and given example of "fanout-ingress.yaml"  in above document and also in GKE  sample repository below
https://github.com/GoogleCloudPlatform/kubernetes-engine-samples/tree/master/load-balancing

it's clear that GKE LB can handle "6. Route network traffic to specific services based on URL"
So NO need for Cloud Load balancing.

Helm satisfy "5. Deploy application bundles using dynamic templates"
and no other option satisfies this point #5.

So correct answer should be:
A

Re: Google Architect topic 1 question 31

D. Google Kubernetes Engine, Jenkins, and Cloud Load Balancing

Re: Google Architect topic 1 question 31

D is correct

Re: Google Architect topic 1 question 31

Option A (GKE, Jenkins, Helm) meets most requirements except for explicit URL-based routing, though Kubernetes Ingress (which can be managed through Helm charts) implicitly covers this.

Option D (GKE, Jenkins, Cloud Load Balancing) directly meets every requirement, including URL-based routing without needing to infer capabilities or integrate additional tools beyond the scope of what's listed. Jenkins supports continuous delivery, GKE supports dynamic scaling, segregated application stacks, and cloud portability. Cloud Load Balancing directly addresses the URL-based routing requirement.

Re: Google Architect topic 1 question 31

D is OK

Re: Google Architect topic 1 question 31

1. Be based on open-source technology for cloud portability: GKE
2. Dynamically scale compute capacity based on demand: GKE
3. Support continuous software delivery: Jenkins
4. Run multiple segregated copies of the same application stack: GKE
5. Deploy application bundles using dynamic templates -> Jenkins
6. Route network traffic to specific services based on URL -> Only HTTPs load balancer can meet this requirement: Next best is Cloud balancing (that can be either Network or HTTPs),
So D makes sense to me.

Re: Google Architect topic 1 question 31

D - Correct

Re: Google Architect topic 1 question 31

I thought that answer A was correct but after researching HELM  I think now the option D is correct.
Helm is not a cloud service on its own, and it is not built into Google Kubernetes Engine (GKE). Helm is an open-source package manager for Kubernetes that simplifies the deployment and management of applications on Kubernetes clusters.

Here's a brief overview:

Helm:

Helm allows you to define, install, and upgrade even the most complex Kubernetes applications using packages called charts. A Helm chart includes pre-configured Kubernetes resources that define the structure of an application. Helm provides a convenient way to package, version, and deploy applications on Kubernetes.

Re: Google Architect topic 1 question 31

Kubernetes natively supports routing to different services based on URLs via the ingress gateway regardless of wether a LB is used...

Re: Google Architect topic 1 question 31

can you share full questions please [email protected]

Re: Google Architect topic 1 question 31

The correct answer is A, you can route network traffic to specific services based on URL using Google Kubernetes Engine (GKE) using Ingress

Re: Google Architect topic 1 question 31

Correct should be D, Focus on this part of the question "what cloud technologies he can use to meet them", And Now coming to options ,B,C are self explanatory now coming to  A  Because Helm is not a Cloud Technology first, its just a package Manager for Kubernetes, and Even if you say Loadbalncing is part of GKE , actually whatever ingress you create for path based , It does create a load Balancer , and ultimately LOad Balancer is Definitely important, now coming to Templating I Feel there can be many tools we can use ex: Kustomize can be one of them but that is completly something User can decide and even create some customised way to templatize the deployment using YAML or shell or any other language .

Re: Google Architect topic 1 question 31

Correct answer is D - Don't get confused with this option "Deploy application bundles using dynamic templates". In this option, they have mentioned as "Deploy applications". In GKE app deployment, can be configured using YAML files. Helm is not a highly preferred tool and that won't be a recommedation from Google. Answer is D

Re: Google Architect topic 1 question 31

Dynamic bundling - GKE
CI/ CD - Jenkins
Routing based on URL - Cloud B

Re: Google Architect topic 1 question 31

K8s, Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software. and LB for traffic forwarding.

Re: Google Architect topic 1 question 31

Continuous Delivery ---->  ci-cd pipelines --->Jenkins

Re: Google Architect topic 1 question 31

A is correct

Re: Google Architect topic 1 question 31

A is the right answer