k8s-pulse/helm-chart/INSTALL.md

1.9 KiB

K8sMonitor Helm Chart

This Helm chart provides a standardized way to deploy the K8sMonitor python web application on a Kubernetes cluster.

Prerequisites

  • A running Kubernetes cluster.
  • Helm installed on your local machine or CI/CD runner.
  • Access to a container registry where the python-web-app image is stored (if using a custom image).

Getting Started

1. Prepare the Configuration

The default configuration can be found in values.yaml. You can override any value here before installing or pass them via --set or -f <file>.

Example of modifying ingress annotations:

ingress:
  annotations:
    cert-manager.io/cluster-issuer: "letsencrypt-prod"

2. Install the Chart

To install the chart using the default values:

helm install k8smonitor ./helm-chart

To install with a custom values file:

helm install k8smonitor ./helm-chart -f custom-values.yaml

3. Upgrade the Chart

To update your installation with newer configuration or version:

helm upgrade k8smonitor ./helm-chart

Configuration Options

Value Description Default
replicaCount Number of desired pods 2
image.repository The Docker image to pull python-web-app
service.port The port the service listens on 80
ingress.enabled Enable or disable Ingress true
persistence.size Size of the PersistentVolumeClaim 1Gi

Verification

Once installed, you can check the status of your deployment:

# List all pods for the app
kubectl get pods -l app=k8smonitor

# Check the service
kubectl get svc k8smonitor

# Check the ingress
kubectl get ingress k8smonitor

Troubleshooting

If the pod is not running, check the logs:

kubectl logs -l app=k8smonitor

Check for events in the namespace:

kubectl get events --sort-by=.metadata.creationTimestamp