Ordnerbezogene Ressourcen
Mit Config Connector können Sie Ihre Ressourcen auf Projekt-, Ordner- oder Organisationsebene verwalten. Um zu bestimmen, wo Ihre Ressourcen erstellt werden sollen, sucht Config Connector zuerst in Ihrer Ressourcenspezifikation nach einem Feld, das den Geltungsbereich definiert. Wenn es kein solches Feld gibt, wird nach einer Annotation, die den Geltungsbereich definiert, gesucht.
Feld „folderRef
“ angeben
Die meisten Config Connector-Ressourcen auf Ordnerebene unterstützen in ihrer CRD-Spezifikation ein Feld namens folderRef
. Mit diesem Feld können Sie den Google Cloud-Ordner angeben, in dem die Ressource erstellt werden soll.
Wenn der Google Cloud-Ordner auch im selben Cluster über die Folder-CRD verwaltet wird, können Sie den Ordner als Kubernetes-Ressourcenreferenz angeben:
...
spec:
folderRef:
name: FOLDER_RESOURCE_NAME
namespace: FOLDER_RESOURCE_NAMESPACE
...
Mit diesem Ansatz können Sie Config Connector verwenden und einen Google Cloud-Ordner mit seinen untergeordneten Ressourcen in einem einzigen Anwendenvorgang erstellen. Das Namespace-Feld ist optional, wenn sich die Config Connector-Ordnerressource in denselben Kubernetes-Namespace wie Ihre ordnerbezogene Ressource.
Wenn der Google Cloud-Ordner nicht als Kubernetes-Ressource verwaltet wird
im selben Cluster befinden, können Sie das Feld external
verwenden, um den Parameter
Ordner-ID. Das genaue Format des Werts kann je nach
Ressourcentyp. Die beiden gängigsten Formate sind „FOLDER_ID“ und „folders/FOLDER_ID“. Unten sehen Sie ein Beispiel für „FOLDER_ID“:
...
spec:
folderRef:
external: "FOLDER_ID"
...
Ressourcenkonfiguration annotieren
Wenn die Config Connector-Ressource auf Ordnerebene liegt, das Feld folderRef
aber nicht unterstützt, können Sie die Ordner-ID mit der Annotation folder-id
in der Ressourcenkonfiguration festlegen:
...
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
...
Hier ist ein Beispiel für die YAML-Datei einer Ressource mit dieser Annotation. enthalten:
apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: foobarname
Namespace-Konfiguration annotieren
Sie können eine Standardordner-ID für neu erstellte Ressourcen festlegen, indem Sie Ihren Kubernetes-Namespace annotiert. Wenn eine der Ressourcen im Namespace explizit in einer eigenen Konfiguration festgelegt haben, wird die die Annotation auf Namespace-Ebene überschrieben.
Führen Sie folgenden Befehl aus, um den Namespace über die Befehlszeile mit Annotationen zu versehen:
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/folder-id=FOLDER_ID
Ersetzen Sie Folgendes:
NAMESPACE_NAME
ist der Name Ihres NamespaceFOLDER_ID
ist Ihre Google Cloud-Ordner-ID
Alternativ können Sie ein YAML-Manifest anwenden, das die Annotation enthält. Kopieren Sie das unten aufgeführte YAML-Manifest in eine Datei:
apiVersion: v1
kind: Namespace
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: NAMESPACE_NAME
Dabei gilt:
FOLDER_ID
ist Ihre Google Cloud-Ordner-IDNAMESPACE_NAME
ist der Name Ihres Namespace
Nachdem Sie die Datei erstellt haben, wenden Sie sie auf Ihren Cluster an.