Helm chart for Kubernetes deployment with configurable parameters.
Go to file
Santiago Lo Coco 492e06f2af Refactor 2023-11-17 20:21:23 -03:00
data Fix bugs of original data 2023-11-17 13:15:16 -03:00
helm Refactor 2023-11-17 20:21:23 -03:00
.gitignore Refactor 2023-11-17 20:21:23 -03:00
README.md Refactor 2023-11-17 20:21:23 -03:00
build.sh Add helm chart 2023-11-15 16:49:05 -03:00
run.sh Fix bugs 2023-11-17 13:21:10 -03:00

README.md

Todas las variables que se repiten y que, en un principio, no tendría sentido cambiarlas para este chart se marcaron con default.

Por ejemplo, busque los default de service.yaml. Verá que type es por defecto "ClusterIP" y que targetPort es por defecto $port.

Esto tiene dos beneficios:

  1. Elimina redundancia en values.yaml
  2. Da libertad para que en un futuro se pueda simplemente modificarlo en values.yaml. Por ejemplo, supongamos que queremos cambiar el type a "NodePort" en el servicio de api, basta con hacer el siguiente cambio:
services:
  - api:
    name: "api"
    tier: "backend"
    port: 5000
    type: "NodePort"

En ingress se repite el host por dos razones:

  1. Si quisieran que la api esté en otro dominio se pueda hacer fácilmente mediante:
ingress:
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
  hosts:
    - host: kube.slc.ar
      paths:
        - path: /
          name: "client"
          port: 8080
          pathType: "Prefix"
    - host: api.kube.slc.ar
        - path: /
          name: "api"
          port: 5000
          pathType: "Prefix"
  tls:
   - secretName: exam-crt
     hosts:
       - kube.slc.ar
       - api.kube.slc.ar
  1. No se pueden reutilizar variables en YAML. Existe la posibilidad de usar YAML anchors pero en la documentación no lo recomiendan: "Because Helm and Kubernetes often read, modify, and then rewrite YAML files, the anchors will be lost."

TODO: probar igual los anchors