J'utilise actuellement une spécification Kubernetes Deployment.yamlpour déployer un service. La spécification comprend une référence textuelle à une adresse IP spécifique (marquée comme <static-ip-address>ci-dessous):
spec:
  type: LoadBalancer
  loadBalancerIP: <static-ip-address>
Je souhaite transférer des informations telles que des mots de passe ou des adresses IP dans des référentiels Git distants. Puis-je éviter cela, par exemple en utilisant des variables d'environnement, par exemple avec une spécification de déploiement et un déploiement réel à peu près comme suit:
spec:
   type: LoadBalancer
   loadBalancerIP: ${SERVICE_ADDRESS}
et
export SERVICE_ADDRESS=<static-ip-address>
kubectl create -f Deployment.yaml
Évidemment, cette syntaxe spécifique ne fonctionne pas encore. Mais quelque chose comme cela est-il possible et si oui, comment?
Je préférerais ne pas compter sur un outil de provisioning distinct . Les secrets et les secretsConfigMap semblent prometteurs, mais apparemment, ils ne peuvent pas être consommés d'une manière qui convient à cet effet. Si je pouvais référencer directement une adresse IP statique définie avec gcloud compute addresses create service-addressce serait le mieux.
envsubst. ne le savait pas jusqu'à présent