Back to HomeKubernetes

Kubernetes Tool Ecosystem Complete Guide: Helm, Argo CD & Monitoring Tools Explained

12 min min read
#Kubernetes#Helm#Argo CD#Prometheus#Grafana#Istio#GitOps#Monitoring

Kubernetes Tool Ecosystem Complete Guide: Helm, Argo CD & Monitoring Tools Explained

Kubernetes Tool Ecosystem Complete Guide: Helm, Argo CD & Monitoring Tools Explained

Kubernetes itself is just the foundation. The real power comes from the surrounding tool ecosystem.

Helm, Argo CD, Prometheus... these tools transform Kubernetes from "usable" to "easy to use."

This article will introduce the most important tools in the Kubernetes ecosystem, helping you build a complete toolchain.

For a basic introduction to Kubernetes, see Kubernetes Complete Guide.


Tool Ecosystem Overview

The Kubernetes ecosystem can be divided into several categories:

CategoryPurposeRepresentative Tools
Package managementPackage and deploy appsHelm, Kustomize
CI/CDContinuous integration and deploymentArgo CD, Flux, Tekton
MonitoringMetrics and alertingPrometheus, Grafana
LoggingLog collection and analysisELK, Loki
Service meshService-to-service communicationIstio, Linkerd
SecuritySecurity scanning and policiesFalco, OPA

CNCF Landscape:

CNCF (Cloud Native Computing Foundation) maintains a complete cloud-native tool map with over 1,000 projects. You don't need to learn all of them—just pick the important ones.


Helm: Package Management

Helm is Kubernetes' "package management tool," like apt for Ubuntu or npm for Node.js.

Why Helm

Problem: Too many YAMLs

An application might need:

  • Deployment
  • Service
  • ConfigMap
  • Secret
  • Ingress
  • PVC
  • ...

Each environment (dev, staging, prod) has different settings too.

Helm's solution:

FeatureDescription
PackagingBundle multiple YAMLs into one Chart
ParameterizationManage settings with values.yaml
Version controlTrack each deployment version
RollbackOne-click return to previous version

Core Concepts

Chart: A Helm package containing all K8s resource definitions for an application

Release: An instance of a Chart installed to the cluster

Repository: Where Charts are stored

Structure:

my-chart/
├── Chart.yaml          # Chart metadata
├── values.yaml         # Default settings
├── templates/          # K8s resource templates
│   ├── deployment.yaml
│   ├── service.yaml
│   └── ingress.yaml
└── charts/             # Dependent Charts

Basic Operations

Install Helm:

# macOS
brew install helm

# Windows
choco install kubernetes-helm

Use existing Chart:

# Add repository
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

# Search Chart
helm search repo nginx

# Install Chart
helm install my-nginx bitnami/nginx

# View installed Releases
helm list

# Upgrade
helm upgrade my-nginx bitnami/nginx --set replicaCount=3

# Rollback
helm rollback my-nginx 1

# Uninstall
helm uninstall my-nginx

Create Your Own Chart

# Create new Chart
helm create my-app

Modify values.yaml:

# values.yaml
replicaCount: 3

image:
  repository: my-app
  tag: "1.0"
  pullPolicy: IfNotPresent

service:
  type: ClusterIP
  port: 80

ingress:
  enabled: true
  hosts:
    - host: my-app.example.com
      paths:
        - path: /
          pathType: Prefix

resources:
  limits:
    cpu: 500m
    memory: 256Mi
  requests:
    cpu: 250m
    memory: 128Mi

Use in templates:

# templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ .Release.Name }}
spec:
  replicas: {{ .Values.replicaCount }}
  template:
    spec:
      containers:
      - name: {{ .Chart.Name }}
        image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
        resources:
          {{- toYaml .Values.resources | nindent 12 }}

Install your own Chart:

# Install
helm install my-release ./my-app

# Install with different values
helm install my-release ./my-app -f production-values.yaml

# Or override with --set
helm install my-release ./my-app --set replicaCount=5

Helm vs Kustomize

ItemHelmKustomize
ApproachTemplatingOverlay modification
Learning curveMediumLower
EcosystemMany ready-made ChartsFewer
Best forComplex apps, multi-environmentSimple modifications

Recommendation: Use both together. Use Helm for external applications, Kustomize for environment differentiation.


CI/CD Tools

Turning code into running applications requires CI/CD pipelines.

GitOps Concept

GitOps is a deployment approach:

  • Git is the single source of truth
  • All changes go through Git
  • Auto-sync to cluster

Traditional CI/CD vs GitOps:

ItemTraditional CI/CDGitOps
TriggerCI pushes to clusterCluster pulls from Git
SecurityCI needs cluster accessCluster only needs Git access
AuditScatteredComplete Git history
RollbackRe-run pipelinegit revert

Argo CD

Argo CD is the most popular GitOps tool.

Core features:

FeatureDescription
Git syncAuto-sync Git state to cluster
VisualizationBeautiful Web UI
Multi-clusterManage multiple K8s clusters
RollbackOne-click return to any version

Install Argo CD:

# Create namespace
kubectl create namespace argocd

# Install
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

# Get initial password
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

# Access UI
kubectl port-forward svc/argocd-server -n argocd 8080:443

Create Application:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: my-app
  namespace: argocd
spec:
  project: default
  source:
    repoURL: https://github.com/myorg/my-app.git
    targetRevision: HEAD
    path: k8s
  destination:
    server: https://kubernetes.default.svc
    namespace: production
  syncPolicy:
    automated:
      prune: true
      selfHeal: true

Flux

Flux is another GitOps tool, maintained by CNCF.

Comparison with Argo CD:

ItemArgo CDFlux
UIBuilt-in, full-featuredNeeds separate installation
Multi-clusterSimplerNeeds extra config
Helm supportGoodNative support
CommunityLargerSmaller but active

Selection advice: Beginners or UI needed—Argo CD. Deep Helm integration—Flux.

Tekton

Tekton is a Kubernetes-native CI/CD framework.

Features:

  • Runs completely on K8s
  • Define Pipelines with CRDs
  • Highly extensible

Best for: Scenarios needing entire CI/CD pipeline within K8s.


Need CI/CD architecture design?

Correct CI/CD pipelines can significantly improve development efficiency. Let experts help you plan.

Book architecture consultation


Monitoring Tools

Systems without monitoring are flying blind. Kubernetes needs complete observability.

Prometheus

Prometheus is the standard choice for Kubernetes monitoring.

Features:

FeatureDescription
Pull modelActively scrapes metrics
Time-series databaseBuilt-in storage
PromQLPowerful query language
AlertingBuilt-in Alertmanager

Install (with Helm):

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install prometheus prometheus-community/kube-prometheus-stack

This installs the complete monitoring stack:

  • Prometheus Server
  • Alertmanager
  • Grafana
  • Node Exporter
  • Various default Dashboards

PromQL examples:

# CPU usage rate
rate(container_cpu_usage_seconds_total{container!=""}[5m])

# Memory usage
container_memory_usage_bytes{container!=""}

# Pod restart count
kube_pod_container_status_restarts_total

Grafana

Grafana is a visualization tool that turns Prometheus data into beautiful charts.

Features:

FeatureDescription
DashboardCustom monitoring panels
AlertingSet alert rules
Multi-datasourceIntegrate various data sources

Recommended Dashboards:

IDNamePurpose
315Kubernetes Cluster MonitoringCluster overview
6417Kubernetes PodsPod details
1860Node Exporter FullNode details

Import method: Grafana UI → Dashboards → Import → Enter ID

Log Collection

Solution comparison:

SolutionComponentsFeatures
ELKElasticsearch + Logstash + KibanaMost complete, high resource needs
EFKElasticsearch + Fluentd + KibanaLighter ELK
PLGPromtail + Loki + GrafanaLightest, integrates well with Prometheus

Loki installation (recommended):

helm repo add grafana https://grafana.github.io/helm-charts
helm install loki grafana/loki-stack --set grafana.enabled=true

Loki advantages:

  • Doesn't index log content, low cost
  • Good Grafana integration
  • PromQL-like query language

Service Mesh

When microservices multiply, service-to-service communication becomes complex. Service mesh solves this.

What is Service Mesh

Service Mesh is an infrastructure layer handling service-to-service communication.

Problems solved:

ProblemService Mesh Solution
Service discoveryAuto-discovery and routing
Load balancingIntelligent traffic distribution
Failure handlingRetry, circuit breaking, timeout
Secure communicationAutomatic mTLS
ObservabilityAuto-tracing and metrics

Istio

Istio is the most well-known service mesh.

Architecture:

                    ┌─────────────┐
                    │   istiod    │  ← Control Plane
                    └─────────────┘
                           │
         ┌─────────────────┼─────────────────┐
         ▼                 ▼                 ▼
    ┌─────────┐       ┌─────────┐       ┌─────────┐
    │ Envoy   │       │ Envoy   │       │ Envoy   │
    │ Sidecar │       │ Sidecar │       │ Sidecar │
    ├─────────┤       ├─────────┤       ├─────────┤
    │ App A   │ ←───→ │ App B   │ ←───→ │ App C   │
    └─────────┘       └─────────┘       └─────────┘

Each Pod has an Envoy Sidecar handling all incoming and outgoing traffic.

Install Istio:

# Download istioctl
curl -L https://istio.io/downloadIstio | sh -
cd istio-*
export PATH=$PWD/bin:$PATH

# Install
istioctl install --set profile=demo

# Enable auto-injection
kubectl label namespace default istio-injection=enabled

Traffic management example:

# Canary deployment: 90% to v1, 10% to v2
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: my-app
spec:
  hosts:
  - my-app
  http:
  - route:
    - destination:
        host: my-app
        subset: v1
      weight: 90
    - destination:
        host: my-app
        subset: v2
      weight: 10

Linkerd

Linkerd is a lighter choice than Istio.

Comparison:

ItemIstioLinkerd
FeaturesMost completeSufficient
Resource usageHigherLower
Learning curveSteepGentler
PerformanceGoodBetter

Selection advice:

  • Need complete features: Istio
  • Want simple and lightweight: Linkerd
  • Using Cilium as CNI: Consider Cilium Service Mesh

Microservices architecture planning?

Service mesh isn't mandatory, but correct usage can greatly simplify operations. Let us help you evaluate.

Book a free consultation


Security Tools

Kubernetes security needs multi-layer protection.

Image Scanning

Tool choices:

ToolFeatures
TrivyOpen source, fast, simple
SnykCommercial, good integration
ClairOpen source, self-hostable

Trivy usage:

# Install
brew install aquasecurity/trivy/trivy

# Scan image
trivy image nginx:1.25

# Scan K8s cluster
trivy k8s --report summary

Runtime Security

Falco is a runtime threat detection tool.

Features:

FeatureDescription
System call monitoringDetect abnormal behavior
Rule engineCustom detection rules
Alert integrationIntegrate various alert channels

Install:

helm repo add falcosecurity https://falcosecurity.github.io/charts
helm install falco falcosecurity/falco

Rule example:

# Detect shell execution in container
- rule: Terminal shell in container
  desc: A shell was spawned in a container
  condition: >
    spawned_process and container and shell_procs
  output: >
    Shell spawned in container (user=%user.name container=%container.name)
  priority: WARNING

Policy Management

OPA (Open Policy Agent) is a general-purpose policy engine.

Gatekeeper is the Kubernetes version of OPA.

Use cases:

PolicyDescription
Prohibit latest tagImages must specify version
Resource limitsMust set requests/limits
Security settingsProhibit privileged containers

Example: Prohibit latest tag

apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sDisallowedTags
metadata:
  name: no-latest-tag
spec:
  match:
    kinds:
    - apiGroups: [""]
      kinds: ["Pod"]
  parameters:
    tags: ["latest"]

Tool Selection Advice

Too many tools—how to choose?

Beginner Recommendations

Just starting with Kubernetes, master these first:

CategoryToolPriority
Package managementHelm⭐⭐⭐
MonitoringPrometheus + Grafana⭐⭐⭐
LoggingLoki⭐⭐
CI/CDArgo CD⭐⭐

Advanced Recommendations

After stable operation, consider adding:

CategoryToolWhen to Use
Service meshIstio/LinkerdMany microservices, need traffic management
SecurityFalco + TrivyProduction environment essential
PolicyOPA GatekeeperMulti-team, need governance
CostKubecostNeed cost visibility

Avoid Over-Engineering

Common mistakes:

MistakeAdvice
Service mesh from day oneStart with basic Service
Must use every toolAdd tools when solving real problems
Self-host everythingConsider cloud managed solutions

Principle: Start simple, add tools when you encounter problems.


FAQ: Common Questions

Q1: Helm 2 or Helm 3?

Helm 3.

Helm 2 is no longer maintained. Helm 3 removed Tiller, making it safer and simpler.

Q2: Can Argo CD and Jenkins work together?

Yes.

Common combination:

  • Jenkins for CI (build, test, package)
  • Argo CD for CD (deploy to K8s)

Q3: How long should Prometheus data be retained?

Depends on needs and cost.

Recommendations:

  • Detailed data: 15-30 days
  • Long-term trends: Use Thanos or Cortex for remote storage

Q4: Must I use service mesh?

Not necessarily.

When to use:

  • Many microservices (>10)
  • Need advanced traffic management
  • Need mTLS

When not needed:

  • Monolith or few services
  • Limited resources
  • Team unfamiliar

Q5: Do I need to learn all these tools?

Don't learn everything at once.

Priority order:

  1. kubectl (must)
  2. Helm (very common)
  3. Monitoring (production essential)
  4. CI/CD (team collaboration essential)
  5. Others (as needed)

Next Steps

After understanding the tool ecosystem, you can:

GoalAction
Deep dive networkingRead Kubernetes Network Architecture Guide
Hands-on practiceRead Kubernetes Getting Started Tutorial
Choose cloudRead Kubernetes Cloud Services Comparison
Prepare certificationRead Kubernetes Certification Guide

Need Kubernetes toolchain planning?

Correct tool selection can significantly improve team efficiency. CloudInsight provides complete technical consulting.

Book a consultation now


Further Reading


References

Need Professional Cloud Advice?

Whether you're evaluating cloud platforms, optimizing existing architecture, or looking for cost-saving solutions, we can help

Book Free Consultation

Related Articles