Google Kubernetes Engine, Agent
Overview
Google Kubernetes Engine (GKE), a service on the Google Cloud Platform (GCP), is a hosted platform for running and orchestrating containerized applications. Similar to Amazon’s Elastic Container Service (ECS), GKE manages Docker containers deployed on a cluster of machines. However, unlike ECS, GKE uses Kubernetes.
Setup
Prerequisites
Ensure that your role in your GCP project has the proper permissions to use GKE.
Enable the Google Container Engine API for your project.
Install the Google Cloud SDK and the kubectl
command line tool on your local machine. Once you pair the Cloud SDK with your GCP account, you can control your clusters directly from your local machine using kubectl
.
Create a small GKE cluster named doglib
with the ability to access the Cloud Datastore by running the following command:
$ gcloud container clusters create doglib --num-nodes 3 --zone "us-central1-b" --scopes "cloud-platform"
Set up the GCE integration
Install the Google Cloud Platform integration.
You can then access an out-of-the-box Google Compute Engine dashboard that displays metrics like disk I/O, CPU utilization, and network traffic.
Set up the GKE integration
Choose a mode of operation. A mode of operation refers to the level of flexibility, responsibility, and control that you have over your cluster. GKE offers two modes of operation:
Standard: You manage the cluster’s underlying infrastructure, giving you node configuration flexibility.
Autopilot: Google provisions and manages the entire cluster’s underlying infrastructure, including nodes and node pools, giving you an optimized cluster with a hands-off experience.
Autopilot
Follow the instructions in the GKE Autopilot section of the Kubernetes distributions page.
Admission Controller
To use Admission Controller with Autopilot, set the configMode
of the Admission Controller to either service
or hostip
.
Because Autopilot does not allow socket
mode, Datadog recommends using service
(with hostip
as a fallback) to provide a more robust layer of abstraction for the controller.
Further Reading