Gestione delle risorse con il campo resourceID
Questa pagina spiega come gestire le risorse con il campo resourceID
.
Config Connector ti consente di specificare esplicitamente l'ID risorsa di una risorsa Google Cloudutilizzando il campo resourceID
immutabile, ma facoltativo, per creare o acquisire la risorsa. "Invariabile, ma facoltativo" significa che puoi scegliere di specificare o meno 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à di denominazione di una Google Cloud
risorsa 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 Google Cloud
nome della risorsa in progetti, cartelle, organizzazioni o risorse principali diverse all'interno dello stesso spazio dei nomi. Il Google Cloud nome della risorsa non è inoltre limitato dalla
convenzione di denominazione
di un nome dell'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 impedire che venga acquisita da un altro proprietario. Tuttavia, se utilizzi il campo resourceID
,
possono essere presenti più risorse con lo stesso Google Cloud nome della risorsa,
create nello stesso spazio dei nomi. Queste risorse creano conflitti che Config Connector non può gestire. Devi risolvere manualmente eventuali conflitti.
Tipi di ID risorsa
In Config Connector, gli ID risorsa possono essere specificati dall'utente o generati dal servizio.
- ID risorsa specificati dall'utente
- Un ID risorsa determinato, specificato e passato dall'utente prima della creazione della risorsa. Puoi creare o acquisire una risorsa con 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 della risorsa. Puoi acquistare una risorsa con 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 delle risorse con un ID risorsa generato dal servizio.
Specifica del campo resourceID
Puoi specificare il campo resourceID
in spec
della risorsa.
Il seguente manifest descrive come specificare il campo resourceID
per un argomento Pub/Sub. Il nome della risorsa del connettore di configurazione è
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 il connettore Config con il campo resourceID
. Il valore del campo resourceID
deve rispettare la convenzione di denominazione per il campo datasetId
del set di dati BigQuery.
Copia i seguenti contenuti 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 cluster.
kubectl apply --namespace CC_NAMESPACE -f bigquery-dataset.yaml
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi da cui Config Connector gestisce le risorse.Usa
kubectl describe
per visualizzare i dettagli del set di dati.kubectl describe --namespace CC_NAMESPACE bigquerydataset bigquerydataset-sample-for-creation
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi da cui Config Connector gestisce le risorse.
Acquisizione di una risorsa con il campo resourceID
Quando gestisci una Google Cloud risorsa con il campo resourceID
,
Config Connector acquisisce la risorsa se:
- La risorsa ha un ID risorsa specificato dall'utente e i valori nel manifest e nel nome della risorsa corrispondono a una risorsa esistente. In alternativa:
- La risorsa ha un ID risorsa generato dal servizio.
Acquisizione di una cartella
Per acquisire una cartella utilizzando Config Connector con il campo resourceID
, completa i seguenti passaggi:
Copia i seguenti contenuti 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 cluster.
kubectl apply --namespace CC_NAMESPACE -f folder.yaml
Sostituisci
CC_NAMESPACE
con lo spazio dei nomi da cui Config Connector gestisce 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 da cui Config Connector gestisce le risorse.
Passaggi successivi
Consulta il riferimento alle risorse per approfondire le risorse supportate da Config Connector.