Écriture des règles de correspondance pour définir des groupes dynamiques

Les règles de correspondance définissent les ressources appartenant à un groupe dynamique.

Les règles de correspondance définissent les ressources appartenant au groupe dynamique. Dans la console, vous pouvez entrer la règle manuellement dans la zone de texte fournie ou vous pouvez utiliser le générateur de règles. Le générateur de règles vous permet d'effectuer des sélections et des entrées dans une boîte de dialogue, puis écrit la règle pour vous, en fonction de vos entrées. Le générateur de règles prend en charge les variables d'instance et de compartiment. Pour écrire une règle basée sur d'autres variables, entrez-la manuellement.

Vous pouvez définir les membres du groupe dynamique en fonction des éléments suivants :

  • OCID du compartiment
  • OCID de l'instance (pour les instances) ou OCID de la ressource (pour les autres ressources)
  • type de ressource
  • Espace de noms et clé de marqueur - Inclure (ou exclure) des instances marquées avec un espace de noms de marqueur et une clé de marqueur spécifiques. Toutes les valeurs de marqueur sont incluses. Par exemple, inclure toutes les instances marquées avec l'espace de noms de marqueur department et la clé de marqueur operations.
  • Espace de noms de marqueur, clé de marqueur et valeur de marqueur - Inclure (ou exclure) les instances marquées avec une valeur spécifique pour l'espace de noms de marqueur et la clé de marqueur. Par exemple, inclure toutes les instances marquées avec l'espace de noms de marqueur department et la clé de marqueur operations ainsi que la valeur '45'.

Une règle de correspondance a la syntaxe suivante :

Pour une condition unique :

variable {{=}} | !='value'

Pour des conditions multiples :

any|all {<condition>,<condition>,...}

Les variables prises en charge sont les suivantes :

Pour les instances, vous pouvez utiliser :

  • instance.compartment.id - OCID du compartiment dans lequel se trouve l'instance
  • instance.id - OCID de l'instance

Pour tous les types de ressource pris en charge, vous pouvez utiliser :

  • resource.id - OCID de la ressource
  • resource.compartment.id - OCID du compartiment dans lequel réside la ressource
  • resource.type - Type de ressource. Le type de ressource est affiché dans l'OCID de la ressource. Par exemple :
    • l'OCID d'un domaine a le format ocid1.domain.... Spécifiez donc domain comme resource.type.
    • l'OCID d'une fonction a le format ocid1.fnfunction.... Spécifiez donc fnfunction comme resource.type
    • l'OCID d'une passerelle d'API a le format ocid1.apigateway.... Spécifiez donc apigateway comme resource.type
  • tag.<tagnamespace>.<tagkey>.value - L'espace de noms de marqueur et la clé de marqueur. Par exemple, tag.department.operations.value.
  • tag.<tagnamespace>.<tagkey>.value = '<tagvalue>' - espace de noms de marqueur, clé de marqueur et valeur de marqueur. Par exemple : tag.department.operations.value = '45'

Exemples :

Inclure toutes les instances d'un compartiment

Pour inclure toutes les instances figurant dans un compartiment spécifique, ajoutez une règle avec la syntaxe suivante :

instance.compartment.id = '<compartment_ocid>'

Vous pouvez entrer la règle directement dans la zone de texte ou utiliser le générateur de règles.

Exemple d'entrée dans la zone de texte :

instance.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv'

Pour ajouter la même règle à l'aide du générateur de règles de la console :

  • Pour Inclure des instances qui correspondent aux éléments suivants : Sélectionnez Tous les éléments suivants.
  • Pour Mettre en correspondance les instances avec : Sélectionnez OCID du compartiment.
  • Pour Valeur, entrez l'OCID du compartiment. Pour cet exemple, vous pouvez entrer ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv

Toutes les instances qui existent actuellement ou qui sont créées dans le compartiment (indiquées par l'OCID) sont membres de ce groupe.

Inclure toutes les instances dans au moins deux compartiments

Pour inclure toutes les instances figurant dans un des deux compartiments (ou plus), ajoutez une règle avec la syntaxe suivante :

Any {instance.compartment.id = '<compartment_ocid>', instance.compartment.id = '<compartment_ocid>'}

en séparant chaque entrée de compartiment par une virgule.

Vous pouvez entrer la règle directement dans la zone de texte ou utiliser le générateur de règles.

Exemple d'entrée dans la zone de texte :

Any {instance.compartment.id = 'ocid1.compartment.oc1.phx:samplecompartmentocid6q6igvfauxmima74jv', instance.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocidythksk89ekslsoelu2'}

Pour ajouter la même règle à l'aide du générateur de règles de la console :

  1. Pour Inclure des instances qui correspondent aux éléments suivants : Sélectionnez Un des éléments suivants.
  2. Pour Mettre en correspondance les instances avec : Sélectionnez OCID du compartiment.
  3. Pour Valeur, entrez l'OCID du compartiment. Pour cet exemple, vous pouvez entrer ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv
  4. Cliquez sur + Ligne supplémentaire. Entrez les informations suivantes sur la deuxième ligne :
    • Pour Mettre en correspondance les instances avec : Sélectionnez OCID du compartiment.
    • Pour Valeur, entrez l'OCID de compartiment supplémentaire. Pour cet exemple, vous pouvez entrer ocid1.compartment.oc1.phx.samplecompartmentocidythksk89ekslsoelu2

Les instances qui existent actuellement ou seront créées dans l'un des compartiments spécifiés sont membres de ce groupe.

Inclure une ressource spécifique dans un compartiment spécifique
Inclure toutes les occurrences d'un type de ressource dans un compartiment spécifique

Pour inclure toutes les occurrences d'un type de ressource spécifique dans un compartiment spécifique, ajoutez une règle avec la syntaxe suivante :

All {resource.type = '<resource_type', resource.compartment.id = <compartment_ocid>}

Entrez la règle directement dans la zone de texte.

Par exemple, pour inclure toutes les chambres fortes dans un compartiment spécifique, entrez un énoncé comme suit :

All {resource.type = 'vaults', resource.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocid'}

Toutes les chambres fortes du compartiment spécifié seront membres de ce groupe dynamique.

Inclure toutes les instances marquées avec un espace de noms et une clé de marqueur spécifiques

Pour inclure toutes les instances marquées avec un espace de noms de marqueur et une clé de marqueur spécifiques, ajoutez une règle ayant la syntaxe suivante :

tag.<tagnamespace>.<tagkey>.value

Toutes les instances affectées à la combinaison tagnamespace.tagkey sont incluses. Notez que comme la valeur du marqueur n'est pas évaluée, toutes les valeurs sont incluses.

Exemple : Supposons que vous ayez un espace de noms de marqueur nommé department et une clé de marqueur nommée operations. Vous voulez inclure toutes les instances marquées avec l'espace de noms et la clé de marqueur.

Entrez la règle suivante dans la zone de texte :

tag.department.operations.value

Toutes les instances qui existent actuellement ou qui seront créées avec l'espace de noms de marqueur et la clé de marqueur department.operations sont membres de ce groupe.

Inclure toutes les instances d'un compartiment spécifique avec un espace de noms de marqueur, une clé de marqueur et une valeur de marqueur spécifiques

Pour inclure toutes les instances d'un compartiment spécifique marquées avec un espace de noms, une clé et une valeur de marqueur spécifiques, ajoutez une règle avec la syntaxe suivante :

All {instance.compartment.id = '<compartment_ocid>', tag.<tagnamespace>.<tagkey>.value = '<tagvalue>'}

Toutes les instances qui se trouvent dans le compartiment identifié et auxquelles est affecté tagnamespace.tagkey avec la valeur de marqueur spécifiée sont incluses.

Exemple : Supposons que vous ayez un espace de noms de marqueur nommé department et une clé de marqueur nommée operations. Vous voulez inclure toutes les instances marquées avec la valeur 45, qui se trouvent dans un compartiment donné.

Entrez l'énoncé suivant dans la zone de texte :

All {instance.compartment.id = 'ocid1.compartment.oc1.phx.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv,',
tag.department.operations.value = '45'}