TrustRadius: an HG Insights company

Google Kubernetes Engine

Score8.2 out of 10

68 Reviews and Ratings

What is Google Kubernetes Engine?

Google Kubernetes Engine supplies containerized application management powered by Kubernetes which includes Google Cloud services including load balancing, automatic scaling and upgrade, and other Google Cloud services.

Categories & Use Cases

Top Performing Features

  • Container Orchestration

    The product’s ability to automate networking, deployment, scaling, and other container management functions.

    Category average: 8.3

  • Cluster Management

    Product’s ability to centralize the management of multiple container or node clusters.

    Category average: 8.1

  • Update Rollouts and Rollbacks

    Product provides tools or functionality to deliver updates to containerized applications in ways that minimize the impact of errors, and revert updates that cause problems.

    Category average: 7.7

Areas for Improvement

  • Analytics, Monitoring, and Logging

    Product provides tools to manage performance, health, and other data related to containers or clusters. This could include analytics tools, logging tools, live dashboards, etc.

    Category average: 7.9

  • Security and Isolation

    Product provides effective tools to isolate containers, nodes, and clusters and protect them from threats.

    Category average: 8.5

  • Discovery Tools

    Product provides methods (such as URIs or sortable lists) to easily find and access jobs, nodes, containers, or clusters.

    Category average: 8.1

GKE: Powering Kubernetes Workloads at Scale.

Use Cases and Deployment Scope

We have an application for creating Internal reports from Billing Data for customers. We have deployed that application to Google Kubernetes Engine through Gitlab. Also, we provide an automatic secured Kubernetes offering to our customers in Germany.

Pros

  • Autoscaling Application to mitigate the increase in traffic.
  • Automatically roll out upgrades to applications.
  • As it is available through all major Cloud providers, your applications can run anywhere.
  • Configuration management. Automate the deployment of the application.

Cons

  • Sometimes, it's not the logical offering if your application is not complex. Managed offerings like App Engine are better in some cases. So, it could have a lightweight offering with free tiers.
  • For Machine Learning, there are free resources like labs to test. Doing that on Kubernetes is a very tedious task.
  • It has already improved to be a managed service. But still, developers cannot deploy on Kubernetes without hassle.

Return on Investment

  • It has given us flexibility and reduced deployment timelines by half.
  • With the help of Git, it's really good that we can maintain the state of our application. And update or rollback features, which was very difficult earlier.
  • Our application is for internal use right now, but we have used GKE as we will open it to the world. And their autoscaling will be a necessity.

Usability

Alternatives Considered

Helm, HashiCorp Terraform and GitLab

Other Software Used

Helm, HashiCorp Terraform, Prometheus, GitLab

Google Kubernetes Engine: Kubernetes clusters offer an easy-to-start experience and good integration with other Google Cloud services

Use Cases and Deployment Scope

Two products I work on are using Google Kubernetes Engine clusters. For the most part, the development efforts mostly go as far as "put service in container," so stuff such as scalability is left to 3rd party components that we use. The Google Kubernetes Engine can use a specific Google-provided ingress controller that is very beneficial when it comes to integrating with other services/products such as Cloud Armor, but it's also vendor-specific, so it has its own quirks and learning curve. Thus, we use the Google Kubernetes Engine just like a regular managed Kubernetes cloud service. The products we have in the Google Kubernetes Engine cluster deal with data piping, collection, and even some machine learning. The major problem that the Google Kubernetes Engine solves for us is a completely managed cloud Kubernetes service - we have an easier time managing our clusters (updates, scaling, and uptime SLA), doing physical and virtual migrations (moving nodes geographically, data in volumes, etc.).

Pros

  • Engine upgrade rollout strategy - well documented and configurable
  • Integration with other Google Cloud services like the Compute Engine, SaaS databases, and some cloud networking like Cloud Armor
  • Graphical interface for a lot of operations - either for a quick peek/overview or actual work done by administrators and/or developers (via the Google Cloud Console, for example)

Cons

  • It cannot reach true zero scale - they have a competing(?) product for that - Cloud Run Kubernetes clusters. It seems like the Google Kubernetes Engine may not be as flexible as some people need - in terms of costs and infrastructure.
  • Some networking for the Google Kubernetes Engine is way too "hidden" from other similar services from Google Cloud - like network whitelisting (for the control plane), external IPs(s) are not a part of the VPC network overview, data storage.
  • We had to make a hack for node-specific changes (max open file descriptors) because we put Elastic in our Google Kubernetes Engine clusters. These changes were made as hacks because there is still no official API/command approach to have such a form of control over the cluster's infrastructure.

Most Important Features

  • Ease of use and being newbie-friendly - several teams had to start using Google Kubernetes Engine without any prior K8s knowledge, so they managed to learn and apply on the fly.
  • Integration with other Google Cloud services - SaaS database, networking, etc.
  • Ability to use multiple geographical locations - migrations across locations or cross-zone/region clusters.

Return on Investment

  • Positive: Allowed us to start and produce working software regardless of our experience level.
  • Positive: Integration with other Google Cloud services that we wanted to use anyway.
  • Negative: It's kinda clunky, and some scenarios seem Google Kubernetes Engine-specific instead of being more integrated with other Google Cloud services or the web UI.

Alternatives Considered

SUSE Rancher

Other Software Used

Google Cloud SQL, Kubernetes, Apache Kafka

Best-in-market managed Kubernetes solution

Use Cases and Deployment Scope

We use GKE to deploy our in-hours custom-made applications along with popular public applications like prometheus/grafana. The applications that we deploy and need to support are both stateful and stateless.

Pros

  • Deployment of a new GKE cluster is really fast in comparison to other cloud providers.
  • GCP is ahead other vendors and always provide the most up to date Kubernetes version.
  • GKE automation for master upgrade and the worker nodes pool works really well.

Cons

  • Support of IPv6.
  • Better GitOps.
  • A "serverless" Kubernetes so we can install Google config connector will be really awesome.
  • Container-native load balancers do not support internal TCP/UDP load balancers or network load balancers.

Return on Investment

  • Easy to use Kubernetes cluster.
  • Feature rich (istio/monitoring/logging).
  • Easy to upgrade and keep it up to date.

Usability

Good decision with GKE

Pros

  • Deployment method (single, zonal, regional).
  • Lifecycle management (stable, regular, rapid).
  • Integrated GCE services (loadbalancers).

Cons

  • Multi-regional deployment (better reliability).
  • GPU node availability.
  • Integrated market place.

Return on Investment

  • Compared to other big K8s providers it has the best price/performance factors.
  • Upgrade process from stable to regular versions
  • Old stable releases: 1.15/1.16 should be in a stable branch.

Alternatives Considered

Azure Kubernetes Service (AKS)

Other Software Used

Kubernetes, Azure Kubernetes Service (AKS), Amazon Fargate, IBM Cloud Continuous Delivery

Goggle Kubernetes delivered from who knows Google Kubernetes

Pros

  • Automated orchestration, deployment, and scaling of containers
  • Integrated Logging

Cons

  • Persistent storage configuration and options.
  • Routes and external DNS integration

Return on Investment

  • It's not necessary to buy licenses like other Kubernetes based products.
  • It's not required to buy blades, hosts, and virtualization.

Alternatives Considered

Amazon Elastic Container Service (Amazon ECS)

Other Software Used

OpenShift