Provided by: @bonitoo.io
Ingress-nginx is an Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer. This InfluxDB template can be used to monitor your Nginx Controller setup inside your Kubernetes cluster.
In the InfluxDB UI, go to Settings->Templates and enter this URL: https://raw.githubusercontent.com/influxdata/community-templates/master/nginx-ingress-controller/nginx-ingress-controller.yml
If you have your InfluxDB credentials configured in the CLI, you can install this template with:
influx apply -u https://raw.githubusercontent.com/influxdata/community-templates/master/nginx-ingress-controller/nginx-ingress-controller.yml
- 2 Labels:
nginx-ingress
- 1 Telegraf Configuration:
nginx-ingress-controller
- 1 Dashboard:
Nginx Ingress Controller
- 4 Variables:
bucket
,controller_namespace
,controller_pod
,controller_class
General instructions on using InfluxDB Templates can be found in the use a template document.
Github: https://github.com/kubernetes/ingress-nginx
Helm chart sources: https://github.com/kubernetes/ingress-nginx/tree/main/charts/ingress-nginx
Flux queries rely on prometheus input plugin v2 metric version format. It is not compatible with v1 or with UI Scraper metric format.
If possible, use Telegraf Prometheus input plugin to scrape Prometheus metrics from Controller service endpoint. The Prometheus input plugin can be also configured to scrape Controller pod(s) directly via annotations.
Telegraf configuration requires the following environment variables
INFLUX_HOST
INFLUX_BUCKET
INFLUX_TOKEN
- The token with the permissions to read Telegraf configs and write data to thetelegraf
bucket. You can just use your operator token to get started.INFLUX_ORG
- The name of your OrganizationCONTROLLER_SVC_URLS
- URLs to Ingress Controller metrics endpoint service(s) e.g.http://ingress-nginx-controller-metrics.default.svc.cluster.local:10254/metrics
.
To reflect specific Kubernetes or Ingress Controller setup it may require additional Telegraf plugin configuration.
You MUST set these environment variables before running Telegraf using something similar to the following commands
- This can be found on the
Load Data
>Tokens
page in your browser:export INFLUX_TOKEN=TOKEN
- Your Organization name can be found on the Settings page in your browser:
export INFLUX_ORG=my_org
Author: Tomas Klapka, Bonitoo s.r.o.
Github: Bonitoo.io