Felder zur Anwendung der Spezifikation mit gcloud

Auf dieser Seite werden die verschiedenen Felder beschrieben, die Sie in der Konfigurationsdatei für Anthos Config Management festlegen können. Sie verwenden diese Datei, wenn Sie Anthos Config Management-Komponenten mit dem Google Cloud CLI konfigurieren. Für den gcloud CLI-Befehl, mit dem Sie die Konfigurationsdatei anwenden, gibt es auch eine Referenzdokumentation.

Das mit der gcloud CLI verwendete Dateiformat ähnelt dem Format des ConfigManagement-Objekts. Die Formate sind jedoch unterschiedlich und die beiden sind nicht austauschbar.

Konfiguration für Config Sync

Schlüssel Beschreibung
spec.configSync.enabled Wenn true, wird Config Sync aktiviert. Wenn false, wird Config Sync deaktiviert. Erforderlich für die gcloud CLI Version 429.0.0 und niedriger. Optional für Version 430.0.0 und höher der gcloud CLI. Standardwert: true
spec.configSync.sourceType Der Typ der Quelle, von der Config Sync synchronisiert werden soll. Akzeptiert git oder oci. Standardeinstellung: git.
spec.configSync.syncRepo Die URL des Git-Repositorys, des OCI-Images oder des Helm-Diagramms, die als „Source of Truth“ verwendet werden sollen. Sie können dieses Feld weglassen, wenn Sie kein Git-Repository vorbereitet haben.
spec.configSync.syncBranch Der Zweig des Git-Repositorys, von dem aus synchronisiert werden soll. Dieses Feld wird ignoriert, wenn .spec.configSync.sourceType auf oci gesetzt ist. Standard: master.
spec.configSync.policyDir Der Pfad im Git-Repository oder OCI-Image zum Stammverzeichnis, das die Konfiguration enthält, die Sie synchronisieren möchten. Standard: Stammverzeichnis des Repositorys
spec.configSync.syncWait Zeitraum in Sekunden zwischen aufeinanderfolgenden Synchronisierungen. Standardeinstellung: 15.
spec.configSync.syncRev Git-Revision (Tag oder Hash) zum Auschecken. Dieses Feld wird ignoriert, wenn .spec.configSync.sourceType auf oci gesetzt ist. Standard: HEAD.
spec.configSync.preventDrift Bei true wird der Config Sync-Zulassungs-Webhook aktiviert, um Drifts zu verhindern, indem Änderungskonflike nicht an Live-Cluster übertragen werden. Standardeinstellungen: false. Config Sync korrigiert Drifts immer, unabhängig vom Wert dieses Felds. Dieses Feld wird in Anthos Config Management Version 1.10.0 und höher unterstützt.
spec.configSync.secretType Die Art des Secrets, das für den Zugriff auf die .spec.configSync.syncRepo konfiguriert ist. Wenn Sie git als Quelltyp ausgewählt haben,. muss der Wert ssh, cookiefile, gcenode, gcpserviceaccount, token odernone sein. Wenn Sie oci als Quelltyp ausgewählt haben, muss der Wert gcenode, gcpserviceaccount oder none sein. Bei der Validierung dieses Feldes wird zwischen Groß- und Kleinschreibung unterschieden. Erforderlich.
spec.configSync.gcpServiceAccountEmail Das Google Cloud-Dienstkonto, das zum Annotieren des Kubernetes-Dienstkontos des RootSync- oder RepoSync-Controllers verwendet wird. Dieses Feld wird nur verwendet, wenn spec.configSync.secretType den Wert gcpserviceaccount hat.
spec.configSync.sourceFormat Wenn dieser Parameter auf unstructured gesetzt ist, wird ein nicht hierarchisches Repository konfiguriert. Standardeinstellung: hierarchy.

Proxykonfiguration für das Git-Repository

Wenn Sie gemäß den Sicherheitsrichtlinien Ihrer Organisation Traffic über einen HTTP(S)-Proxy weiterleiten müssen, können Sie Config Sync für die Kommunikation mit Ihrem Git-Host über den URI des Proxys konfigurieren. Der Proxy wird nur unterstützt, wenn der Autorisierungstyp cookiefile, none oder token verwendet wird.

Schlüssel Beschreibung
spec.configSync.httpsProxy Definiert eine Umgebungsvariable HTTPS_PROXY für den Zugriff auf das Git-Repository. Beispiel: https://proxy.internal.business.co:443.
Der HTTPS-Proxy akzeptiert nur https oder URLs mit dekorativen Elementen. URLs, die http:// enthalten, werden abgelehnt.
Wenn Sie eine URL mit unangemessenen Werten verwenden, achten Sie darauf, dass die Kommunikation zwischen Ihrem Proxyserver und dem Git-Host sicher ist.

Konfiguration für Policy Controller

Schlüssel Beschreibung
spec.policyController.enabled Wenn true, wird Policy Controller aktiviert. Die Standardeinstellung ist false.
spec.policyController.templateLibraryInstalled Wenn true, wird eine Bibliothek mit Einschränkungsvorlagen für gängige Richtlinientypen installiert. Die Standardeinstellung ist true.
spec.policyController.referentialRulesEnabled Wenn true, wird die Unterstützung für referenzielle Einschränkungen aktiviert. Informieren Sie sich über die Beschränkungen von Eventual Consistency. Die Standardeinstellung ist false.
spec.policyController.auditIntervalSeconds Zeitraum in Sekunden zwischen aufeinanderfolgenden Audits von Einschränkungsverstößen. Legen Sie 0 fest, um die Prüfung zu deaktivieren. Standard: 60.
spec.policyController.logDeniesEnabled Wenn true, werden alle Ablehnungen und Probelauffehler protokolliert. Die Standardeinstellung ist false.
spec.policyController.mutationEnabled Wenn true, wird die Unterstützung für Mutationen aktiviert. Der Standardwert ist false.
spec.policyController.exemptableNamespaces Eine Liste von Namespaces, die aus der Webhook-Erzwingung von Policy Controller entfernt werden sollen. Alle Verstöße werden weiterhin im Audit gemeldet. Die Standardeinstellung ist eine leere Liste.
spec.policyController.monitoring.backends Eine Liste mit Monitoring-Back-Ends, für die Policy Controller Messwerte exportieren kann. Standardeinstellung: [cloudmonitoring, prometheus].

Konfiguration für Hierarchy Controller

Schlüssel Beschreibung
spec.hierarchyController.enabled Wenn true, wird der Hierarchy Controller aktiviert. Die Standardeinstellung ist false.
spec.hierarchyController.enableHierarchicalResourceQuota Wenn true, werden hierarchische Ressourcenkontingente aktiviert. Die Standardeinstellung ist false.
spec.hierarchyController.enablePodTreeLabels Wenn true, wird die hierarchische Beobachtung von Arbeitslasten aktiviert. Die Standardeinstellung ist false.

Beispiel für gcloud apply spec

applySpecVersion: 1
spec:
  configSync:
    enabled: true
    sourceFormat: unstructured
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: main
    secretType: none
    policyDir: config-sync-quickstart/multirepo/root
  policyController:
    enabled: false
  hierarchyController:
    enabled: false