This article instructs on how to create a DaemonSet in order to install and run one sample of Cloudaware Breeze agent on every node of a cloud-managed Kubernetes cluster (Amazon EKS, Azure AKS, Google GKE). Linux only.
Description
DaemonSet starts the container with Breeze agent installer. The container has two bind mounts:
host:/opt > container:/opt
used for the Breeze agent installation from container to the host file systemhost:/ > container:/var/root
used for launching the agent in the chroot environment
The container runs two commands:
Install the Breeze agent to the
/opt
directory.Run the simple daemon which runs the Breeze agent every 15 minutes.
Step-by-step guide
1. Open Cloudaware GitHub repo with Kubernetes files. Clone the repo to your Github using the following command:
git clone https://github.com/cloudaware/breeze-tools.git
2. Log in to Cloudaware account. Select Admin under your username in the upper right corner.
3. Locate Breeze in the list of DevOps Integrations. Click 1 Configured.
4. Select Linux* Agent version to download the Breeze agent.
*This integration is for Linux only.
5. Untar the Breeze installer and copy the extracted files (./breeze-agent folder) into kubernetes/daemonset folder of the cloned repo:
cd breeze-tools/kubernetes/daemonset && tar xzvf <DOWNLOADS_PATH>/breeze-agent.example.version.0.x86_64.linux.tgz
WHERE
breeze-agent.example.version.0.x86_64.linux.tgz
should be replaced by the name of the dowloaded installer file (e.g. breeze-agent.1x11xx1xxxx11x11111x1x1x.11111111.0.x86_64.linux.tgz).
docker build -t ca-breeze-ds .
6. Create a repository in your private container registry (e.g. AWS ECR, Azure ACR, Google GCR, etc.) named ca-breeze-ds. Upload the result image to your private container registry.
docker tag ca-breeze-ds:latest <CONTAINER_REGISTRY_HOSTNAME>/ca-breeze-ds:latest
docker push <CONTAINER_REGISTRY_HOSTNAME>/ca-breeze-ds:latest
WHERE
<CONTAINER_REGISTRY_HOSTNAME>
is a placeholder that needs to be replaced by your private container registry URI (e.g. 111111111111.dkr.ecr.us-east-1.amazonaws.com/breeze-agent).
7. Edit the DaemonSet configuration file ds-breeze-agent.yaml
replacing the placeholders with valid values. Ensure that image pull secret is added to Kubernetes Secrets.
8. Create the DaemonSet using the following command:
kubectl create -f ds-breeze-agent.yaml
9. To verify that the DaemonSet has been created, you may run the following command:
kubectl get ds