{"id":2445,"date":"2017-01-06T11:00:32","date_gmt":"2017-01-06T11:00:31","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2445"},"modified":"2023-06-21T06:03:43","modified_gmt":"2023-06-21T13:03:43","slug":"kubernetes-monitoring-heapster-influxdb-grafana","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/","title":{"rendered":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana"},"content":{"rendered":"<p>Kubernetes provides detailed insights about resource usage in the cluster.\u00a0This is\u00a0enabled by using <a href=\"https:\/\/github.com\/kubernetes\/heapster\">Heapster<\/a>, <a href=\"https:\/\/github.com\/google\/cadvisor\">cAdvisor<\/a>, <a href=\"https:\/\/github.com\/influxdata\/influxdb\">InfluxDB<\/a> and <a href=\"https:\/\/grafana.org\/\">Grafana<\/a>.<\/p>\n<p>Heapster is installed as a\u00a0cluster-wide pod.\u00a0It gathers monitoring and events data for all pods on each node by\u00a0talking to the Kubelet. Kubelet itself fetches this data from cAdvisor. This data is persisted in InfluxDB and then visualized<br \/>\nusing Grafana.<\/p>\n<p><a href=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-logging-1024x407.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14457\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-logging-1024x407.png\" alt=\"kubernetes-logging\" width=\"604\" height=\"240\" \/><\/a><\/p>\n<p><a href=\"https:\/\/kubernetes.io\/docs\/user-guide\/monitoring\/\">Resource Usage Monitoring<\/a>\u00a0provide more details about\u00a0monitoring resources in Kubernetes. Heapster, InfluxDB and Grafana\u00a0are <a href=\"https:\/\/kubernetes.io\/docs\/admin\/addons\/\">Kubernetes addons<\/a>.\u00a0They<br \/>\nare enabled by default if you are running the cluster on Amazon Web Services or Google Cloud. But need to be explicitly enabled if the cluster is started using <a href=\"https:\/\/www.couchbase.com\/blog\/minikube-rapid-dev--testing-kubernetes\/\">minikube<\/a>\u00a0or<br \/>\n<a href=\"https:\/\/www.couchbase.com\/blog\/multimaster-kubernetes-cluster-amazon-kops\/\">kops<\/a> <a href=\"https:\/\/github.com\/kubernetes\/kops\/blob\/master\/docs\/addons.md\">addons<\/a>.<\/p>\n<p>Start a Kubernetes cluster on Amazon Web Services as:<br \/>\n<code>KUBERNETES_PROVIDER=aws; kube-up.sh<\/code><\/p>\n<p>More details about starting a Kubernetes cluster are available at <a href=\"https:\/\/www.couchbase.com\/blog\/kubernetes-1.4-spring-boot-couchbase\/\">Getting Started with Kubernetes 1.4<\/a>. By default, it creates a 4-node Kubernetes cluster in\u00a0<code>us-west-2a<\/code> region.\u00a0More details about the cluster can be seen using the command\u00a0<code>kubectl cluster-info<\/code> and it shows the results as:<\/p>\n<pre class=\"lang:default decode:true\">Kubernetes master is running at https:\/\/35.165.6.91\r\nElasticsearch is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/elasticsearch-logging\r\nHeapster is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/heapster\r\nKibana is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/kibana-logging\r\nKubeDNS is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/kube-dns\r\nkubernetes-dashboard is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/kubernetes-dashboard\r\nGrafana is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/monitoring-grafana\r\nInfluxDB is running at https:\/\/35.165.6.91\/api\/v1\/proxy\/namespaces\/kube-system\/services\/monitoring-influxdb\r\n\r\nTo further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.<\/pre>\n<p>Note the\u00a0URL for the Grafana service. Open this URL in a browser window. You&#8217;ll be prompted for an\u00a0invalid certificate warning but this can be safely ignored at this time. In production system, appropriate certificates should\u00a0be installed.<br \/>\nThen you&#8217;ll be prompted for credentials. These can be obtained using\u00a0<code>kubectl config view<\/code> command. It will show the output as:<\/p>\n<pre class=\"lang:default decode:true\">- name: aws_kubernetes-basic-auth\r\n  user:\r\n    password: ZeH4JpQzAtGDEBdb\r\n    username: admin<\/pre>\n<p>Use\u00a0the value from\u00a0<code>username<\/code> and <code>password<\/code> fields. This shows the default dashboard:<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14459\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-empty-dashboard-1024x449.png\" alt=\"kubernetes-grafana-empty-dashboard\" width=\"604\" height=\"265\" \/><\/p>\n<p>It consists of two dashboards &#8211; one for cluster and another for pods.<\/p>\n<p><a href=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-dashboards-1024x375.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14458\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-dashboards-1024x375.png\" alt=\"kubernetes-grafana-dashboards\" width=\"604\" height=\"221\" \/><\/a><\/p>\n<p>For this blog, a\u00a04-node Couchbase cluster was created following the steps outlined in\u00a0<a href=\"https:\/\/blog.kubernetes.io\/2016\/08\/create-couchbase-cluster-using-kubernetes.html\">Create a Couchbase Cluster using Kubernetes.<\/a> A cluster-wide<br \/>\ndashboard shows CPU, Memory, Filesystem and Network usage across all\u00a0the hosts and looks like:<\/p>\n<p><a href=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-cluster-1024x503.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14451\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-cluster-1024x503.png\" alt=\"kubernetes-grafana-cluster\" width=\"604\" height=\"297\" \/><\/a><\/p>\n<p>CPU, memory, filesystem and network usage for all\u00a0nodes may be seen:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2621\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502.png\" alt=\"\" width=\"1024\" height=\"502\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502.png 1024w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502-300x147.png 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502-768x377.png 768w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502-20x10.png 20w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Details for each node may be seen by selecting the node:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14452\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-cluster-nodelist.png\" alt=\"kubernetes-grafana-cluster-nodelist\" width=\"604\" height=\"413\" \/><\/p>\n<p>CPU, memory, filesystem and network usage for each node\u00a0is\u00a0displayed:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14453\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-cluster-one-node-1024x409.png\" alt=\"kubernetes-grafana-cluster-one-node\" width=\"604\" height=\"241\" \/><\/p>\n<p>Pods dashboard shows CPU, memory, filesystem and network usage for each pod:<\/p>\n<p><a href=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-pods-1024x592.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14455\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-pods-1024x592.png\" alt=\"kubernetes-grafana-pods\" width=\"604\" height=\"349\" \/><\/a><\/p>\n<p>A different pod may be chosen:<\/p>\n<p><a href=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-pods-list-1024x608.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-14456\" src=\"\/wp-content\/original-assets\/december-2016\/kubernetes-monitoring-with-heapster-influxdb-and-grafana\/kubernetes-grafana-pods-list-1024x608.png\" alt=\"kubernetes-grafana-pods-list\" width=\"604\" height=\"359\" \/><\/a><\/p>\n<p>A complete list of all services running in the Kubernetes can be seen using <code>kubectl get services --all-namespaces<\/code> command. It shows the output as:<\/p>\n<pre class=\"lang:default decode:true\">kubectl.sh get svc --all-namespaces\r\nNAMESPACE     NAME                       CLUSTER-IP     EXTERNAL-IP        PORT(S)             AGE\r\ndefault       couchbase-master-service   10.0.70.206    aef06961eb8f3...   8091\/TCP            1h\r\ndefault       kubernetes                 10.0.0.1                    443\/TCP             1h\r\nkube-system   elasticsearch-logging      10.0.54.112                 9200\/TCP            1h\r\nkube-system   heapster                   10.0.146.18                 80\/TCP              1h\r\nkube-system   kibana-logging             10.0.123.37                 5601\/TCP            1h\r\nkube-system   kube-dns                   10.0.0.10                   53\/UDP,53\/TCP       1h\r\nkube-system   kubernetes-dashboard       10.0.146.179                80\/TCP              1h\r\nkube-system   monitoring-grafana         10.0.33.81                  80\/TCP              1h\r\nkube-system   monitoring-influxdb        10.0.26.251                 8083\/TCP,8086\/TCP   1h<\/pre>\n<p>A complete list of all the pods running in the Kubernetes cluster can be seen using\u00a0<code>kubectl get pods --all-namespaces<\/code>.<\/p>\n<p>Some references:<\/p>\n<ul>\n<li><a href=\"https:\/\/kubernetes.io\/docs\/user-guide\/monitoring\/\">Kubernetes Resource Monitoring<\/a><\/li>\n<li><a href=\"https:\/\/www.couchbase.com\/containers\/\">Couchbase Cluster using\u00a0Kubernetes, Docker Swarm, DC\/OS and Amazon ECS<\/a><\/li>\n<li>Follow us <a href=\"https:\/\/twitter.com\/couchbasedev\">@couchbasedev<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Kubernetes provides detailed insights about resource usage in the cluster.\u00a0This is\u00a0enabled by using Heapster, cAdvisor, InfluxDB and Grafana. Heapster is installed as a\u00a0cluster-wide pod.\u00a0It gathers monitoring and events data for all pods on each node by\u00a0talking to the Kubelet. Kubelet [&hellip;]<\/p>\n","protected":false},"author":58,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[],"ppma_author":[8933],"class_list":["post-2445","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kubernetes Monitoring with Heapster, InfluxDB and Grafana - The Couchbase Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes Monitoring with Heapster, InfluxDB and Grafana\" \/>\n<meta property=\"og:description\" content=\"Kubernetes provides detailed insights about resource usage in the cluster.\u00a0This is\u00a0enabled by using Heapster, cAdvisor, InfluxDB and Grafana. Heapster is installed as a\u00a0cluster-wide pod.\u00a0It gathers monitoring and events data for all pods on each node by\u00a0talking to the Kubelet. Kubelet [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-01-06T11:00:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-21T13:03:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502.png\" \/>\n<meta name=\"author\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@arungupta\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\"},\"author\":{\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f\"},\"headline\":\"Kubernetes Monitoring with Heapster, InfluxDB and Grafana\",\"datePublished\":\"2017-01-06T11:00:31+00:00\",\"dateModified\":\"2023-06-21T13:03:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\"},\"wordCount\":398,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\",\"name\":\"Kubernetes Monitoring with Heapster, InfluxDB and Grafana - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2017-01-06T11:00:31+00:00\",\"dateModified\":\"2023-06-21T13:03:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes Monitoring with Heapster, InfluxDB and Grafana\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f\",\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"caption\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\"},\"description\":\"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.\",\"sameAs\":[\"https:\/\/x.com\/arungupta\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/author\/arun-gupta\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana - The Couchbase Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/","og_locale":"en_US","og_type":"article","og_title":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana","og_description":"Kubernetes provides detailed insights about resource usage in the cluster.\u00a0This is\u00a0enabled by using Heapster, cAdvisor, InfluxDB and Grafana. Heapster is installed as a\u00a0cluster-wide pod.\u00a0It gathers monitoring and events data for all pods on each node by\u00a0talking to the Kubelet. Kubelet [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/","og_site_name":"The Couchbase Blog","article_published_time":"2017-01-06T11:00:31+00:00","article_modified_time":"2023-06-21T13:03:43+00:00","og_image":[{"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/01\/kubernetes-grafana-cluster-per-node-1024x502.png","type":"","width":"","height":""}],"author":"Arun Gupta, VP, Developer Advocacy, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@arungupta","twitter_misc":{"Written by":"Arun Gupta, VP, Developer Advocacy, Couchbase","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/"},"author":{"name":"Arun Gupta, VP, Developer Advocacy, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f"},"headline":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana","datePublished":"2017-01-06T11:00:31+00:00","dateModified":"2023-06-21T13:03:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/"},"wordCount":398,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":["Couchbase Server"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/","url":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/","name":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2017-01-06T11:00:31+00:00","dateModified":"2023-06-21T13:03:43+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/kubernetes-monitoring-heapster-influxdb-grafana\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Kubernetes Monitoring with Heapster, InfluxDB and Grafana"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"The Couchbase Blog","description":"Couchbase, the NoSQL Database","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"The Couchbase Blog","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f","name":"Arun Gupta, VP, Developer Advocacy, Couchbase","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337","url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","caption":"Arun Gupta, VP, Developer Advocacy, Couchbase"},"description":"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.","sameAs":["https:\/\/x.com\/arungupta"],"url":"https:\/\/www.couchbase.com\/blog\/author\/arun-gupta\/"}]}},"authors":[{"term_id":8933,"user_id":58,"is_guest":0,"slug":"arun-gupta","display_name":"Arun Gupta, VP, Developer Advocacy, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","author_category":"","last_name":"Gupta","first_name":"Arun","job_title":"","user_url":"","description":"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team.\r\n\r\nGupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2445","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/users\/58"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/comments?post=2445"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/posts\/2445\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/media?parent=2445"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/categories?post=2445"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/tags?post=2445"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=2445"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}