Getty Images/iStockphoto
How to integrate and monitor Kubernetes with New Relic
New Relic might be best known as a DevOps monitoring tool, but it can also help improve observability into your Kubernetes clusters. Follow this tutorial to get started.
The cloud-based performance management tool New Relic is best known for its role in DevOps and security, but it can also perform full-stack monitoring for various workload types. These capabilities make New Relic ideal for organizations running Kubernetes, as it simplifies monitoring and helps IT teams identify issues in their container environments.
In this tutorial, learn how to integrate New Relic with Kubernetes to improve observability into your Kubernetes clusters.
New Relic Kubernetes integration
New Relic can be integrated with Kubernetes manually or through a guided install process. In this tutorial, we'll demonstrate the guided install, which tends to be faster and easier. It also eliminates the need to worry about deploying agents to each individual node, as is the case with some monitoring tools.
To integrate New Relic with Kubernetes, log into the New Relic console, then click the Add More Data button in the upper right. The next screen asks what data type you want to add. Those using New Relic for the first time are routed automatically to the Guided Install screen; otherwise, click on the Guided Install button.
On the Guided Install screen, select the environment where you're running Kubernetes: Linux, Windows, Docker or Kubernetes. After making your selection, the console displays a CLI command used to download the New Relic CLI from GitHub.
New Relic automatically performs several tasks after the CLI is installed: It discovers the system, installs the recommended infrastructure integrations, and installs and configures the New Relic logs. If you don't want to perform these tasks, skip them by clicking on Customize Your Installation and deselecting the appropriate checkboxes.
Next, copy the CLI command and paste it into your system. New Relic automatically detects any running Kubernetes-related services. Deselect any of the discovered items by selecting the item and pressing the spacebar, though it is usually advisable to install everything.
After running the CLI command, the following instructions come up:
Welcome to New Relic. Let's install some instrumentation.
Questions? Read more about our installation process at https://docs.newrelic.com/
The guided installation will begin by installing the New Relic Infrastructure agent, which is required for additional instrumentation.
? Please choose from the additional recommended instrumentation to be installed: [Use arrows to move, space to select, <right> to all, <left> to none, type to filter]
> [x] Logs integration
[x] JMX Open Source Integration
[x] MySQL Open Source Integration
[x] Redis Open Source Integration
The installer then installs the New Relic Infrastructure Agent and gives you the opportunity to integrate various log sources. At this point, the installer might ask you to provide credentials that give the installer permission to complete the installation process.
After installation is complete, navigate back to the Guided Install screen in New Relic and click on See Your Data to close out the guided install process and return to the screen displaying the data for your monitored systems.
Monitoring Kubernetes clusters with New Relic
After deploying the New Relic Infrastructure Agent, you can begin to monitor your Kubernetes environment.
From the New Relic console, select the On Host Integrations tab and click on Kubernetes Dashboard. This dashboard displays some basic information -- such as the number of containers, namespaces and pods being monitored -- as well as diagnostic information. For example, the dashboard can show the number of container restarts within the last hour and compare container CPU use with any set limits. Similar metrics are available for memory and volume consumption.
To see information beyond what is shown on the dashboard, navigate to New Relic's Kubernetes cluster explorer by selecting the Kubernetes tab at the top of the screen. This screen displays a circular chart, with individual nodes displayed on the outside of the circle.
Each node icon includes a color-coded indicator that reflects the node's CPU, memory and storage resource availability. The inner portion of the circular chart displays a hexagonal icon corresponding to each pod. Normally, these icons are blue; yellow indicates a warning, and red indicates that the pod is in a critical state. Click on a pod or node to access additional details about its status.