Skip to main content

Kubernetes

Setup

The Kubernetes helm chart installs a catalog scraper and a topology for a kubernetes

helm repo add flanksource https://flanksource.github.io/charts
helm repo update
helm install mission-control-kubernetes flanksource/mission-control-kubernetes

After running helm install you should get a success message:

NAME: mission-control-kubernetes
LAST DEPLOYED: Thu Feb 14 19:00:32 2024
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Kubernetes topology and scraper added

When you go to the dashboard now, you can now see a cluster topology:

Cluster on dashboard

On clicking the topology, you can access nodes, namespaces and pods

Nodes Topology Namespace Topology

And we also have added a catalog scraper which populated our catalog Kuberenetes Catalog

Values

This document provides an overview of configurable values for deploying the Kubernetes Scraper component using Helm.

Configuration

The following table lists the configurable parameters and their default values:

ParameterDescriptionDefault
nameOverrideOverrides the name of the chart.""
fullnameOverrideOverrides the full name of the chart.""
labelsAdditional labels to apply to resources.{}

Topology

ParameterDescriptionDefault
topology.nameTopology name."cluster"
topology.scheduleTopology schedule."@every 5m"

Scraper

ParameterDescriptionDefault
scraper.nameScraper name."kubernetes"
scraper.clusterNameCluster name for scraping."kubernetes"
scraper.defaultScrapeExclusionsDefault scrape exclusions.["APIService", "PodMetrics", "NodeMetrics", "endpoints.discovery.k8s.io", "endpointslices.discovery.k8s.io", "leases.coordination.k8s.io", "podmetrics.metrics.k8s.io", "nodemetrics.metrics.k8s.io", "controllerrevision", "certificaterequest", "orders.acme.cert-manager.io"]
scraper.scrapeExclusionsAdditional scrape exclusions.["Secret", "customresourcedefinition"]
scraper.eventExclusionsEvent exclusions.["SuccessfulCreate", "Created", "DNSConfigForming"]
scraper.transform.changes.excludeTransformation changes exclusions.["details.source.component == \"canary-checker\" && details.reason == \"Failed\"", "details.source.component == \"canary-checker\" && details.reason == \"Succeeded\""]
scraper.severityKeywords.errorKeywords indicating error severity.["failed", "error"]
scraper.severityKeywords.warnKeywords indicating warning severity.["backoff", "nodeoutofmemory"]
scraper.retention.changesRetention changes.[{"name": "ReconciliationSucceeded", "count": 10}]
scraper.relationshipsKubernetes relationships to create via name, namespace and kind. Reference Docs[{"name": {"label": "helm.toolkit.fluxcd.io/name"}, {"name": {"label": "helm.toolkit.fluxcd.io/namespace"}, {"kind": {"value": "HelmRelease"}]

Feel free to customize this template according to your specific needs.