Pod-Name aus einer in YAML definierten Umgebungsvariable

Pod-Name aus einer in YAML definierten Umgebungsvariable

Wie kann ich eine YAML-Datei für einen Pod erstellen, der seinen Namen von einer in der YAML-Datei definierten Umgebungsvariablen erhält?

Ich habe dies versucht, aber es ist nicht erlaubt.

metadata:
  generateName: $(HOSTNAME)
.
.
.

env: 
  - name: HOSTNAME
            valueFrom:
              fieldRef:
                fieldPath: spec.nodeName

Antwort1

Kubernetes ermöglicht Ihnen das Festlegen von Umgebungsvariablen mithilfe der Werte anderer Felder in der Pod-Definition, die nur zum Zeitpunkt der Pod-Initialisierung verfügbar sind.

spec.nodeNameIn Ihrem Beispiel haben Sie versucht , anstelle von festzulegen metadata.name. Ihre Konfiguration sollte ungefähr so ​​aussehen:

  env:
    - name: MY_POD_NAME
      valueFrom:
        fieldRef:
          fieldPath: metadata.name

HierSie finden ein offizielles Beispiel für die Einrichtung.

Bitte lassen Sie mich wissen, ob das geholfen hat.

verwandte Informationen