Monitoring Made Easy
Let’s focus specifically on Grafana Cloud, rather than the LGTM OSS distribution. Grafana Cloud offers much more than just the LGTM stack.
For recap:
Loki is Grafana Labs open-source log aggregator.
Grafana is one of the widely known tool for visualisation.
Tempo is for tracing and allow you to put your tracing data in to Grafana.
Mimir is long term storage for time series and essentially it is prometheus for long term storage and multi-tenant by design.
Those tools are open-source and most probably you have worked some of them. To be honest deploying and configuring monitoring tool for a better observability is not easy and require lots of effort and time.I have many times deployed and configured LGTM stack OSS(open-source software) version, so I know how it challenging could be to configure them in right way to address to REAL business problems.
This time I start to explore Grafana Cloud and beside LGTM stack it comes with K6, Pyroscope, Graphite, Incident Management, Alerting and many other out of the box integrations.
For your Golden rules of monitoring you are ready to go. All tools all integrated configured way getting started.
I have been configuring monitoring stacks for cloud-native environments for a long time, for diverse business requirements and various application scales. If you have also worked in the field of observability, you understand how complex things can get, especially as the environment continues to grow larger and larger. Monitoring distributed systems presents its own set of challenges and requirements. Numerous parameters play a crucial role in setting an effective monitoring. Grafana Cloud eliminates the complexities of configuration and scalability issues for your monitoring stack, bringing all necessary tools and features into a unified platform within Grafana.
I am using the free account of Grafana Cloud, and to be honest, it definitely sufficient for your home lab and may one man small business needs too😊. Once you created the an account it look as follow:
From there, I will launch the Grafana instance and configure monitoring for my Kubernetes cluster and the applications within it. I will show you how ridiculously easy it is to configure monitoring with Grafana Cloud for your K8s cluster.
After launching the Grafana instance, go to the menu -> Infrastructure -> Kubernetes, and from there, go to Cluster Configuration.
Give your cluster a name. Since I am running a local kind cluster, set the namespace where the Grafana Cloud agent will be deployed to ship metrics, logs, tracing, etc., to Grafana Cloud. You will be asked to generate a token for authentication, and Grafana Cloud will provide you with the complete deployment script, either with Helm or Terraform, depending on your preference.
Now, copy the apply command while you’re in the correct cluster context. The generated command essentially adds the Grafana Helm chart repository to your local repository. After that, Helm will consume the generated values based on the configuration options you selected. If you’re managing your workflow with GitOps, embed the generated values into the corresponding K8s object; for example, with Flux CD, this would be the HelmRelease.
For this demo, I’ll continue from my local machine.
In step 4, you will generate a token to access Grafana Cloud from your cluster. In step 5, deploy the monitoring resources on the cluster by copying the generated config and pasting it into the terminal as shown below:
This will deploy the Grafana Agent, the open-source telemetry collector. The agent will collect your metrics, logs, traces, and cluster events, then send them to your Grafana Cloud instance.
After a few moments, the Helm release will be deployed, and you will see:
Now go to your Grafana Cloud instance and steps 7 as below:
go to “see cluster status”:
See the running components and their status, whether online or offline. The Windows Exporter is offline since we are running on Linux machines. That’s it! Now go and explore the preconfigured dashboards, create new ones, and explore telemetry signals.
Navigate to Home → Infrastructure → Kubernetes → Clusters to get a holistic overview of all clusters and detailed views for each cluster. For the freshly configured cluster, you can view the overview for ‘my-kind-cluster.’
There is both static and dynamic data that provide a summary of the cluster. From there, you can dive as deep as you want. :)
From tabs you can see Network, Energy for power consumption of cluster, logs and live events!
Here’s the sentence with the grammatical issues fixed:
This was an intro on how to start your company’s observability journey. In the future, I will dive deeper into different parts of the platform and share my experiences.