You support the backend of a mobile phone game that runs on a Google Kubernetes Engine (GKE) cluster. The application is serving HTTP requests from users. You need to implement a solution that will reduce the network cost. What should you do?
A.
Configure the VPC as a Shared VPC Host project.
B.
Configure your network services on the Standard Tier.
C.
Configure your Kubernetes cluster as a Private Cluster.
D.
Configure a Google Cloud HTTP Load Balancer as Ingress.
Ans is D
A: No, Doest make sense
B: Who says that we are using a premium tier?
C: This does not help with the network cost?
D: Ok :)
Costs associated with a load balancer are charged to the project containing the load balancer components.
Because of these benefits, container-native load balancing is the recommended solution for load balancing through Ingress. When NEGs are used with GKE Ingress, the Ingress controller facilitates the creation of all aspects of the L7 load balancer. This includes creating the virtual IP address, forwarding rules, health checks, firewall rules, and more.
https://cloud.google.com/architecture/best-practices-for-running-cost-effective-kubernetes-applications-on-gke
Who says that we aren't use the load balancer?
I think it's B anyway, because you have to choose standard tier when "Cost is your main consideration, and you’re willing to trade-off some network performance"
https://cloud.google.com/network-tiers
The doc didn't says that Container-native load balancing will decrees the spend in network costs. It's only refers to performance. Switching to Standard tier will be the most cost-specific answer
It is B because premium tier is by default everywhere. Standard tier is cheaper.
Why not D? This is single HTTP application. You don't know how many HTTP endpoints this app expose to Internet. If it is a single endpoint it does not matter if you create Service type Loadbalancer or Cluster IP-> Ingress. You still have one CLB in GCP, so cost is the same
I'll go with D. AS HTTP LB will help to reduce the costs. In question it is not mentioned that premium tier is used, so we can't assume that premium tier is used (eventhough it is default network tier) and go with B. So D is the correct answer.
I go for B, as "Premium" is the default tier.
D could be nice, but totally relies on the architecture of the application.
If the application needs to be global or re-route lots of requests, a LB makes no miracles.
I am confused between B and D. Default network is Premium which is costly, so changing to Standard also make sense. D is also correct when you'll have multiple endpoints and Google also suggested to LB. But, I'll go with (B) as it'll reduce some cost.
To reduce network costs for the mobile phone game running on a Google Kubernetes Engine (GKE) cluster, the recommended approach is to use a Google Cloud HTTP Load Balancer as Ingress. This option is the best as it provides several advantages such as scalability, cost-effectiveness, and security.
A Google Cloud HTTP Load Balancer can help reduce network costs by efficiently routing traffic to the backend services running on the GKE cluster. By configuring the load balancer as ingress, it will receive all incoming traffic and then route it to the appropriate backend service. This eliminates the need for each service to have its own external IP address, which can be costly in terms of network usage.
Option A, Configure the VPC as a Shared VPC Host project, is not relevant to reducing network costs for a mobile phone game running on a GKE cluster.
Option B, Configure your network services on the Standard Tier, is also not relevant to reducing network costs. The Standard Tier is a premium network service that offers better performance but is more expensive than the other tiers.
Option C, Configure your Kubernetes cluster as a Private Cluster, is not directly relevant to reducing network costs. A private cluster restricts access to the Kubernetes API server to a private IP address range, which can improve security but does not necessarily reduce network costs.
Option C would only be applicable if the Kubernetes cluster had not yet been created, and the private cluster feature was enabled at cluster creation time.
Also the application is serving HTTP requests from users and it could be bad if stop it.
The option D on the other hand, configuring a Google Cloud HTTP Load Balancer as Ingress, would not have a direct impact on reducing network costs. It would instead provide a more efficient way of managing and distributing incoming traffic to the Kubernetes cluster, which may indirectly help reduce costs, but not as much as the option C.
A voting comment increases the vote count for the chosen answer by one.
Upvoting a comment with a selected answer will also increase the vote count towards that answer by one.
So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.
francisco_guerra
Highly Voted 3 years, 5 months agosyslog
3 years, 5 months agoAzureDP900
2 years, 1 month agoMeyucho
1 year, 5 months agolxs
2 years, 5 months agoCharun
Highly Voted 3 years, 5 months agomouthwash
Most Recent 2 months ago6a8c7ad
3 months, 1 week agoquismorioej
3 months, 3 weeks agodija123
6 months, 3 weeks agojinaldesailive
8 months, 3 weeks agovladik820
11 months, 2 weeks agovladik820
11 months, 2 weeks agotheseawillclaim
11 months, 2 weeks agojomonkp
11 months, 4 weeks agobhunias
12 months agoCassim
1 year, 5 months agoMeyucho
1 year, 5 months agogertenbol
1 year, 8 months agoboras
1 year, 10 months agoJonathanSJ
1 year, 10 months ago