Kubespot (Helm)

May 21, 2026 · View on GitHub

  • cert-manager
  • datadog
  • keda
  • nginx
  • prometheus
  • grafana
  • grafana loki
  • kubecost

Configuration

cert-manager

To use cert-manager add the following annotation to your Ingress

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    # add an annotation indicating the issuer to use.
    cert-manager.io/cluster-issuer: letsencrypt
  name: myIngress
  namespace: myIngress
spec:
  tls:
    - hosts:
        - https-example.foo.com
      secretName: testsecret-tls
  rules:
    - host: https-example.foo.com
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: service1
                port:
                  number: 80

Grafana

Grafana is installed on a ClusterIP use the following to open it locally.

kubectl port-forward -n grafana service/grafana 6891:80
open https://localhost:6891

Username: opszero
Password: opszero

Deployment

terraform init
terraform plan
terraform apply -auto-approve

Teardown

terraform destroy -auto-approve

Providers

NameVersion
helmn/a
nulln/a
randomn/a

Inputs

NameDescriptionTypeDefaultRequired
cert_manager_emailYour email address to use for cert manageranynullno
cert_manager_enableEnable or disable cert-manager installationbooltrueno
cert_manager_leader_election_namespaceThe namespace used for the leader election lease. Change to cert-manager for GKE Autopilotstring"cert-manager"no
cert_manager_resourcesn/a
map(object({
cpu = string
memory = string
}))
nullno
cert_manager_versionThe version of the Cert-Manager Helm chart to be deployed, used for automating the issuance and renewal of TLS certificates.string"1.16.3"no
datadog_api_keyThe API key for datadogstring""no
datadog_valuesValues for datadog helm chartstring""no
datadog_values_extraPath to extra values YAML file for Datadog Helm chartstringnullno
datadog_versionThe version of the Datadog Helm chart to be deployed, used for monitoring, security, and observability in Kubernetes environments.string"3.88.3"no
grafana_admin_passwordThe Password of Grafana for login Dashboardstring""no
grafana_admin_userThe User name of Grafana for login Dashboardstring"opszero"no
grafana_datasourcesn/a
list(object({
name = string
type = string
url = string
access = string
isDefault = bool
}))
[]no
grafana_efs_enableEnable EFS storage for Grafanaboolfalseno
grafana_efs_storage_class_nameIf EFS is needed pass EFS storage class, but make sure efs and efs driver deployedstring"gp2"no
grafana_enabledEnable grafanaboolfalseno
grafana_extra_ymlGrafana Datasources as Yamlanynullno
grafana_google_auth_client_idAdd Google Auth client idstring""no
grafana_google_auth_client_secretAdd Google Auth client secretstring""no
grafana_ingress_class_nameIngress class name for Grafanastring"nginx"no
grafana_ingress_enabledEnable grafana ingressboolfalseno
grafana_ingress_hostsAdd grafana ingress hostslist[]no
grafana_loki_bucket_nameName for the S3 bucketstring""no
grafana_loki_enabledEnable grafana lokiboolfalseno
grafana_loki_yml_filen/aanynullno
grafana_persistence_storageEnable persistence storage for Grafanabooltrueno
grafana_versionThe version of the Grafana Helm chart to be deployed, used for data visualization and monitoring dashboards.string"8.8.5"no
ingress_nginx_enableEnable or disable the installation of the ingress-nginx Helm chartstring"true"no
ingress_nginx_versionThe version of the Ingress-NGINX Helm chart to be deployed, used for managing ingress traffic in Kubernetes.string"4.12.1"no
keda_versionThe version of the KEDA Helm chart to be deployed, used for Kubernetes-based Event-Driven Autoscaling.string"2.16.1"no
kubecost_enabledA boolean to enable or disable the deployment of Kubecost, a tool for monitoring and managing Kubernetes cost and resource usage.boolfalseno
kubecost_versionThe version of the Kubecost Helm chart to be deployed, used for Kubernetes cost management and optimization.string"2.5.3"no
loki_allowed_appsAllowed Kubernetes apps for Loki log collectionlist(string)[]no
loki_versionThe version of the Loki Helm chart to be deployed, used for log aggregation and analysis.string"6.25.0"no
loki_yml_filePath to custom Loki YAML filestringnullno
nginx_max_replicasMaximum number of Nginx Replicasnumber11no
nginx_min_replicasMinimum number of Nginx Replicasnumber2no
nginx_nameRelease name for the installed helm chartstring"nginx"no
nginx_yml_filen/aanynullno
opentelemetry_collector_versionThe version of the OpenTelemetry Collector Helm chart to be deployed, used for collecting telemetry data (logs, metrics, and traces) from various sources.string"0.115.0"no
otel_yml_filen/aanynullno
prometheus_additional_scrape_configsAdd additional scrape for configuration for prometheus if needed
list(object({
job_name = string
targets = list(string)
scrape_interval = string
metrics_path = string
}))
[]no
prometheus_enabledEnable prometheusbooltrueno
prometheus_persistence_storageEnable persistence storage for Prometheusboolfalseno
prometheus_versionThe version of the Prometheus Helm chart to be deployed, used for monitoring and alerting in Kubernetes.string"27.1.0"no
promtail_versionThe version of the Promtail Helm chart to be deployed, used as a log collector to send logs to Loki.string"6.16.6"no
pushgateway_ingress_hostList of hosts for prometheus push gateway ingresslist[]no
storage_classStorage Class to use for Persistencestring"gp2"no

Resources

NameType
helm_release.cert-managerresource
helm_release.datadogresource
helm_release.grafanaresource
helm_release.kedaresource
helm_release.kubecostresource
helm_release.lokiresource
helm_release.nginxresource
helm_release.opentelemetry_collectorresource
helm_release.prometheusresource
helm_release.promtailresource
null_resource.cert-manager-cluster-issuerresource
random_password.grafana_admin_passwordresource

Outputs

NameDescription
grafana_admin_passwordn/a

🚀 Built by opsZero!

opsZero provides software and consulting for DevOps. With our decade plus of experience scaling some of the world’s most innovative companies we have developed deep expertise in Kubernetes, DevOps, FinOps, and Compliance.

Our software and consulting solutions enable organizations to:

  • migrate workloads to the Cloud
  • setup compliance frameworks including SOC2, HIPAA, PCI-DSS, ITAR, FedRamp, CMMC, and more.
  • FinOps solutions to reduce the cost of running Cloud workloads
  • Kubernetes optimized for web scale and AI workloads
  • finding underutilized Cloud resources
  • setting up custom AI training and delivery
  • building data integrations and scrapers
  • modernizing onto modern ARM based processors

We do this with a high-touch support model where you:

  • Get access to us on Slack, Microsoft Teams or Email
  • Get 24/7 coverage of your infrastructure
  • Get an accelerated migration to Kubernetes

Please schedule a call if you need support.



AWS Advanced Tier AWS DevOps Competency AWS EKS Delivery AWS Public Sector