Kihagyás

Helm cheatsheet

Tematikus, gyors lookup kártyák. Minden kártyán a leggyakoribb parancsok – részletes magyarázatért nyisd meg a megfelelő aloldalt.

  • Helm alapok


    Chart generálás és a fő mappák jelentése.

    helm create my-java-app
    # templates/  values.yaml  _helpers.tpl
    

    Részletek

  • Tiszta chart létrehozása


    Mindössze a minimum (helper függvények nélkül).

    mkdir my-clean-chart && cd my-clean-chart
    mkdir templates
    touch Chart.yaml values.yaml templates/deployment.yaml
    

    Részletek

  • Telepítés és frissítés


    Mappából, csomagból, --set, -f, törlés.

    helm install demo ./java-training
    helm install demo java-training-0.1.0.tgz
    helm upgrade demo ./java-training --set replicaCount=3
    helm upgrade demo ./java-training -f values-dev.yaml
    helm uninstall demo
    

    Részletek

  • Idempotens upgrade pipeline


    Bolondbiztos CI/CD: install + atomic + timeout.

    helm upgrade demo-app ceges-nexus/java-training \
      --install --atomic --timeout 10m -f ops-prod.yaml
    

    --install (idempotens) · --atomic (auto rollback) · --timeout

    Részletek

  • Listázás, állapot, dry-run


    Mit telepítettünk, milyen paraméterrel, és próba telepítés.

    helm ls
    helm get values demo
    helm install test-app ./java-training --dry-run=client
    

    Részletek

  • Rollback és history


    Revízió-alapú visszaállítás bármely korábbi állapotra.

    helm history demo
    helm rollback demo 1
    

    Részletek

  • Sablonok és értékek


    Mit tartalmaz egy chart, és mi kerül ténylegesen a klaszterre.

    helm show values bitnami/nginx
    helm template my-release bitnami/nginx
    helm template my-app ./my-chart -f values.yaml -s templates/deployment.yaml
    helm get manifest database-prod
    helm get values frontend-app --all
    

    Részletek

  • Dependencies (subchart)


    Külső chart (pl. PostgreSQL) telepítése a sajátoddal együtt.

    # Chart.yaml
    dependencies:
      - name: postgresql
        version: "12.1.0"
        repository: "https://charts.bitnami.com/bitnami"
    
    helm repo add bitnami https://charts.bitnami.com/bitnami
    helm dependency update my-app/
    # CI/CD: helm dependency build
    

    Részletek

  • Umbrella chart


    Több subchart (frontend + backend + db) egyetlen helm install-lal.

    helm dependency update ./my-web-app
    helm template my-release ./my-web-app
    helm install my-release ./my-web-app
    

    Globális values.yaml, közös ConfigMap, Ingress.

    Részletek

  • Privát Nexus regisztráció


    "Két lépcsős letöltés": Helm chart + Docker image.

    helm repo add ceges-nexus https://nexus.ceged.hu/repository/helm-repo/ \
      --username=user --password=pass
    helm repo update
    helm install demo-app ceges-nexus/java-training --version 0.1.0 -f ops-prod.yaml
    

    Részletek

  • Chart csomagolás és push


    Chart .tgz létrehozása és feltöltése Nexusra (OCI vagy klasszikus).

    helm package java-training
    # OCI mód:
    helm registry login nexus.ceged.hu -u user -p pass
    helm push java-training-0.1.0.tgz oci://nexus.ceged.hu/repository/helm-repo/
    

    Részletek

  • Image pull secret


    "Belépőkártya" privát registry-hez a K8s/OpenShift számára.

    oc create secret docker-registry nexus-regcred \
      --docker-server=nexus.ceged.hu \
      --docker-username=user --docker-password=pass
    
    # deployment.yaml
    spec:
      template:
        spec:
          imagePullSecrets:
            - name: nexus-regcred
    

    Részletek

Általános tippek

Legfontosabb parancsok napi használatra

Művelet Parancs
Telepített release-ek listája helm ls
Aktuális értékek lekérése helm get values <release> --all
Próbatelepítés helm install <name> <chart> --dry-run=client
Idempotens deploy CI-ben helm upgrade <name> <chart> --install --atomic --timeout 10m -f values.yaml
Visszagörgetés helm rollback <release> <revision>
Repó frissítés helm repo update