Google Container Engine provides a managed environment for deploying, managing, and scaling your containerized applications using Google infrastructure. The environment Container Engine provides consists of multiple machines (specifically, Google Compute Engine instances) grouped together to form a container cluster.
Container Engine and Kubernetes
Container Engine clusters are powered by the Kubernetes open source cluster management system. Kubernetes provides the mechanisms through which you interact with your container cluster. You use Kubernetes commands and resources to deploy and manage your applications, perform administration tasks and set policies, and monitor the health of your deployed workloads.
Kubernetes draws on the same design principles that run popular Google services and provides the same benefits: automatic management, monitoring and liveness probes for application containers, automatic scaling, rolling updates, and more. When you run your applications on a container cluster, you're using technology based on Google's 10+ years of experience running production workloads in containers.
Kubernetes on Google Cloud Platform
When you run your Kubernetes-powered container cluster on Google Cloud Platform using Container Engine, you also gain the benefit of advanced cluster management features. These include:
- Google Cloud Platform's load-balancing for Compute Engine instances
- Node Pools to designate subsets of nodes within a cluster for additional flexibility
- Automatic scaling of your cluster's node instance count
- Automatic upgrades for your cluster's node software
- Node auto-repair to maintain node health and availability
- Logging and Monitoring with Stackdriver for visibility into your cluster
Container Engine Workloads
Container Engine works with containerized applications: applications packaged into hardware independent, isolated user-space instances, for example by using Docker. In Container Engine and Kubernetes, these containers, whether for applications or batch jobs, are collectively called workloads. Before you deploy a workload on a Container Engine cluster, you must first package the workload into a container.
Google Cloud Platform provides continuous integration and continuous delivery tools to help you build and serve application containers. You can use Google Container Builder to build container images (such as Docker) from a variety of source code repositories, and Google Container Registry to store and serve your container images.