Difficulty: Beginner
Estimated Time: 10 minutes

Creating a Kubernetes Cluster

In this workshop, we'll create a kubernetes cluster, and add Datadog to grab metrics and logs from the applications within.

We'll spin up a two node cluster. It may take a minute or two for your cluster to initialize.

Adding Observability with Golang and Distributed Tracing

As we've seen, distributed tracing is just one of many tools to help increase your visibility into the complex systems you deploy and manage every day.

It's one facet of a many faceted approach, to being able to reliable diagnose production systems and problems before your customers notice.

I hope this lesson gives you some ideas for how you can add custom traces to your company's systems, and start building observability systems that fit your particular business and legacy software problems.

It's an exciting time to be in software development. Let's build systems we can all be proud of.

Golang Kubernetes Part 2

Step 1 of 6

Step 1

Deploying Our Legacy Applications to Kubernetes

The workshop already has an application ready to be deployed to kubernetes included.

It's a Python and Node microservices application. Today, we'll be focusing on replacing one of the pieces with a Golang service.

So let's get the Kubernetes cluster up and running, along with Datadog as a DaemonSet.

First, ensure your kubernetes cluster has been initialized, and both nodes have been added. You can do this by running kubectl get nodes in host1.

On host1, change into the YAML file directory with a cd k8s-yaml-files. You should be able to ls and see the YAML files for every service we plan on running in our cluster.

First, add your Datadog API key to the secrets. You can do this with a:

$ kubectl create secret generic datadog-api --from-literal=token=<YOUR_DATADOG_API_KEY>

Once that's done, we'll next need to create a secret username and password for our PostgreSQL database.

$ kubectl create secret generic postgres-user --from-literal=token=postgres
$ kubectl create secret generic postgres-password --from-literal=token=<YOUR_PASSWORD>

Finally, spin up the Datadog Agent container, so we can see our Nodes in the Datadog app:

$ cd k8s-yaml-files/
$ kubectl apply -f datadog-agent.yaml

You should now be able to see your cluster inside of Datadog. Verify this before continuing on to the next step.