In questa pagina viene spiegato come gestire le risorse con il campo resourceID
.
Config Connector consente di specificare esplicitamente l'ID risorsa di una risorsa Google Cloud utilizzando il campo resourceID
immutabile ma facoltativo per creare o acquisire la risorsa. "Immutableable, but optional" significa che puoi scegliere di specificare o non specificare il campo resourceID
, ma non puoi apportare modifiche al valore del campo resourceID
dopo aver applicato il manifest al cluster.
Il campo resourceID
aumenta la flessibilità durante la denominazione di una risorsa Google Cloud che ha un ID risorsa specificato dall'utente. Utilizzando il campo resourceID
nelle risorse Config Connector, puoi definire più risorse Config Connector dello stesso tipo con lo stesso nome risorsa Google Cloud in progetti, cartelle, organizzazioni o risorse padre diversi all'interno dello stesso spazio dei nomi. Inoltre, il nome della risorsa di Google Cloud non è limitato dalla convenzione di denominazione di un nome di oggetto Kubernetes. Inoltre, il campo resourceID
consente l'acquisizione di una risorsa Google Cloud con un ID risorsa generato dal servizio.
Config Connector imposta lo spazio dei nomi come "proprietario" di una risorsa per evitare che venga utilizzato da un altro proprietario. Tuttavia, se utilizzi il campo resourceID
,
possono esserci più risorse con lo stesso nome di risorsa Google Cloud,
create nello stesso spazio dei nomi. Queste risorse creano conflitti che Config Connector
non può gestire. Devi risolvere
eventuali conflitti manualmente.
Tipi di ID risorsa
In Config Connector, gli ID risorsa possono essere specificati dall'utente o generati da un servizio.
- ID risorsa specificati dall'utente
- Un ID risorsa che viene determinato, specificato e trasmesso dall'utente prima della creazione della risorsa. Puoi creare o acquisire una risorsa che dispone di un ID risorsa specificato dall'utente con il campo
resourceID
. - ID risorsa generati dal servizio
- Un ID risorsa generato dal servizio durante la creazione della risorsa.
Può essere recuperato dall'utente dopo la creazione corretta della risorsa. Puoi acquisire una risorsa che dispone di un ID risorsa generato dal servizio con il campo
resourceID
. Lascia il campo non specificato se vuoi creare una nuova risorsa con un ID risorsa generato dal servizio. Consulta l'elenco di risorse con un ID risorsa generato dal servizio.
Specificare il campo resourceID
Puoi specificare il campo resourceID
nella risorsa spec
della risorsa.
Il seguente manifest descrive come specificare il campo resourceID
per un argomento Pub/Sub. Il nome della risorsa Config Connector è
pubsub-topic-sample
e il nome dell'argomento Pub/Sub è
pubsub-topic-id
.
apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
kind: PubSubTopic
metadata:
name: pubsub-topic-sample
spec:
resourceID: pubsub-topic-id
Creazione di una risorsa con il campo resourceID
Creazione di un set di dati BigQuery
In questo esempio, crei un nuovo set di dati BigQuery utilizzando Config Connector con il campo resourceID
. Il valore del campo resourceID
deve seguire la convenzione di denominazione per il campo datasetId
del set di dati BigQuery.
Copia i contenuti seguenti in un file denominato
bigquery-dataset.yaml
.apiVersion: bigquery.cnrm.cloud.google.com/v1beta1 kind: BigQueryDataset metadata: name: bigquerydataset-sample-for-creation spec: resourceID: bigquerydataset_sample_with_resourceid defaultTableExpirationMs: 3600000 description: "BigQuery Dataset Sample with the ResourceID Field" friendlyName: bigquerydataset-sample-with-resourceid location: US
Applica il file YAML al tuo cluster.
kubectl apply --namespace CC_NAMESPACE -f bigquery-dataset.yaml
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi Config Connector per gestire le risorse.Utilizza
kubectl describe
per visualizzare i dettagli sul set di dati.kubectl describe --namespace CC_NAMESPACE bigquerydataset bigquerydataset-sample-for-creation
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi Config Connector per gestire le risorse.
Acquisizione di una risorsa con il campo resourceID
Quando gestisci una risorsa Google Cloud con il campo resourceID
,
Config Connector acquisisce la risorsa se:
- La risorsa ha un ID risorsa specificato dall'utente e i valori nel file manifest e il nome della risorsa corrispondono a una risorsa esistente; oppure
- La risorsa ha un ID risorsa generato dal servizio.
Acquisire una cartella
Per acquisire una cartella utilizzando Config Connector con il campo resourceID
, completa i passaggi seguenti:
Copia i contenuti seguenti in un file denominato
folder.yaml
.apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: Folder metadata: annotations: cnrm.cloud.google.com/organization-id: ORG_ID # Remove the deletion-policy annotation if it is safe to delete the # folder when the resource is deleted from your cluster. cnrm.cloud.google.com/deletion-policy: "abandon" name: folder-sample-for-acquisition spec: resourceID: ACQUIRED_FOLDER_ID displayName: ACQUIRED_FOLDER_DISPLAY_NAME
Sostituisci quanto segue:
ORG_ID
con l'ID numerico della tua organizzazione.ACQUIRED_FOLDER_ID
con l'ID numerico della cartella da acquisire.ACQUIRED_FOLDER_DISPLAY_NAME
con il nome visualizzato della cartella da acquisire.
Applica il file YAML al tuo cluster.
kubectl apply --namespace CC_NAMESPACE -f folder.yaml
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi Config Connector per gestire le risorse.Utilizza
kubectl describe
per visualizzare i dettagli della cartella.kubectl describe --namespace CC_NAMESPACE folder folder-sample-for-acquisition
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi Config Connector per gestire le risorse.
Passaggi successivi
Consulta il riferimento per le risorse per ulteriori informazioni sulle risorse supportate da Config Connector.