Google Compute Engine vs Kubernetes: What are the differences?
What is Google Compute Engine? Run large-scale workloads on virtual machines hosted on Google's infrastructure. Google Compute Engine is a service that provides virtual machines that run on Google infrastructure. Google Compute Engine offers scale, performance, and value that allows you to easily launch large compute clusters on Google's infrastructure. There are no upfront investments and you can run up to thousands of virtual CPUs on a system that has been designed from the ground up to be fast, and to offer strong consistency of performance.
What is Kubernetes? Manage a cluster of Linux containers as a single system to accelerate Dev and simplify Ops. Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
Google Compute Engine belongs to "Cloud Hosting" category of the tech stack, while Kubernetes can be primarily classified under "Container Tools".
Some of the features offered by Google Compute Engine are:
- High-performance virtual machines- Compute Engine’s Linux VMs are consistently performant, scalable, highly secure and reliable. Supported distros include Debian and CentOS. You can choose from micro-VMs to large instances.
- Powered by Google’s global network- Create large compute clusters that benefit from strong and consistent cross-machine bandwidth. Connect to machines in other data centers and to other Google services using Google’s private global fiber network.
- (Really) Pay for what you use- Google bills in minute-level increments (with a 10-minute minimum charge), so you don’t pay for unused computing time.
On the other hand, Kubernetes provides the following key features:
- Lightweight, simple and accessible
- Built for a multi-cloud world, public, private or hybrid
- Highly modular, designed so that all of its components are easily swappable
"Backed by google", "Easy to scale" and "High-performance virtual machines" are the key factors why developers consider Google Compute Engine; whereas "Leading docker container management solution", "Simple and powerful" and "Open source" are the primary reasons why Kubernetes is favored.
Kubernetes is an open source tool with 55.1K GitHub stars and 19.1K GitHub forks. Here's a link to Kubernetes's open source repository on GitHub.
According to the StackShare community, Kubernetes has a broader approval, being mentioned in 1048 company stacks & 1099 developers stacks; compared to Google Compute Engine, which is listed in 594 company stacks and 429 developer stacks.
What is Google Compute Engine?
What is Kubernetes?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Google Compute Engine?
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
I use Google Compute Engine instances as flexible, reproducible infrastructure that scale with my data science tasks.
Between Google Cloud and Amazon Web Services, I chose Google Cloud for its intuitive UI. SSH within the browser is very convenient.
Related blog post with example usage: Running an IPython Notebook on Google Compute Engine from Chrome
It's a little bit complex to onboard, but once you grasp all the different concepts the platform is really powerful, and infrastructure stops being an issue.
Service discovery, auto-recovery, scaling and orchestration are just a few of the features you get.
- I use Google Compute Engine instances as flexible, reproducible infrastructure that scales with my data science tasks.
- Between Google Cloud and Amazon Web Services, I chose Google Cloud for its intuitive UI. SSH within the browser is very convenient.
- Related blog post with example usage: Running an IPython Notebook on Google Compute Engine from Chrome
Just tinkering with it for personal use at this stage based on positive experience using it at work. Plan to use it for high traffic distributed systems if not using a managed hosting service like Heroku, AWS Lambda, or Google Cloud Functions. Reasons for using instead of these alternatives would be cheaper cost at higher scale.
Good existential question. Kubernetes is painful in the extreme - especially when combined with Ansible. The layers of indirection are truly mind altering. But hey - containers are kewl!
Our developer experience system is on Kubernetes (Google Kubernetes Engine at the moment). We would like to expand our Kubernetes clusters over other Kubernetes engine.
Infrastructure for Google App Engine, Google Cloud Endpoints, Memcached, and Google Cloud SQL components, as well as Git repository and Jenkins CI server.
Kubernetes is used for managing microclusters within our AWS infrastructure. This allows us to deploy new infrastructure in seconds.
minor experience with kubernetes. helped a client setup a kubernetes infrastructure. love the elegance of the system.