Skip to content

csye7125-su24-team17/helm-webapp-cve-processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webapp CVE Processor Helm Chart

This helm chart is used to run a Kubernetes Job that processes cves and publishes them as messages to Kafka topic. This job creates a pod that uses a docker image built from here.

Kafka

Kafka broker is bootstrapped when the cluster is built using terraform with bitnami kafka helm chart which can be found here

Secrets

The container retrieves Kafka connection details and Image Pull Credentials from secrets that are set up using external-secrets operator.

PodDisruptionBudget

Set up PodDisruptionBudget which ensures that at least one pod with the label name: webapp remains available during voluntary disruptions, like node maintenance. It helps maintain application availability and stability during planned updates.

LimitRange

Created LimitRange that sets default resource limits and requests for containers in the cve-processor-namespace. This helps manage resource allocation and prevent overuse.

Using Helm Chart

  • To install a chart onto a k8s cluster:
# helm install [release-name] [directory-path]
helm install my-processor ../helm-webapp-cve-processor
  • To uninstall a chart, use:
# helm uninstall [release-name]
helm uninstall my-processor

Monitoring a Job Using kubectl Commands

  • To get jobs, use:
# kubectl get jobs -n [namespace]
kubectl get jobs -n cve-processor-namespace
  • To get pods, use:
# kubectl get pods -n [namespace]
kubectl get pods -n cve-processor-namespace
  • To get logs of a pod, use:
# kubectl logs -n [namespace] [pod-name]
kubectl logs -n cve-processor-namespace webapp-job-*