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.
-
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 usingkubectl
. -
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"
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.
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.
Deploy a containerized version of the Datadog Agent on your Kubernetes cluster.
You can deploy the Agent with a Helm chart or directly with a DaemonSet.
-
Install Helm.
-
Add the Datadog repository to your Helm repositories:
helm repo add datadog https://helm.datadoghq.com
helm repo update
- Deploy the Datadog Agent and Cluster Agent on Autopilot with the following command:
helm install <RELEASE_NAME> \
--set datadog.apiKey=<DATADOG_API_KEY> \
--set datadog.appKey=<DATADOG_APP_KEY> \
--set clusterAgent.enabled=true \
--set clusterAgent.metricsProvider.enabled=true \
--set providers.gke.autopilot=true \
datadog/datadog
Note: If you also wish to enable logs or traces, add lines to this command setting datadog.logs.enabled
(for logs) and datadog.apm.enabled
(for traces) to true
. For example:
helm install --name <RELEASE_NAME> \
--set datadog.apiKey=<DATADOG_API_KEY> \
--set datadog.appKey=<DATADOG_APP_KEY> \
--set clusterAgent.enabled=true \
--set clusterAgent.metricsProvider.enabled=true \
--set providers.gke.autopilot=true \
--set datadog.logs.enabled=true \
--set datadog.apm.enabled=true \
datadog/datadog
See the Datadog helm-charts repository for a full list of configurable values.