Gestion des principaux de ressource
Vous pouvez gérer les principaux de ressource de grappe du service de mégadonnées à partir de la page Détails de la grappe.
Une seule configuration de principal de ressource active est autorisée par grappe.
Big Data Service 3.0.28 et ODH version 1.1.13/2.0.9 prennent en charge les principaux de ressource. Les anciennes grappes qui suivent le chemin de mise à niveau avec un minimum de service de mégadonnées 3.0.27 (création directe ou mise à niveau) sont admissibles à la mise à niveau pour prendre en charge les principaux de ressource. Pour utiliser des principaux de ressource, le service de mégadonnées et ODH doivent être mis à niveau vers les versions listées précédemment. Avec l'introduction de la prise en charge du principal de ressource, le service de mégadonnées peut se connecter à différents services OCI à l'aide de l'authentification du principal de ressource et des politiques peuvent être définies pour plusieurs niveaux (niveau de ressource, niveau de compartiment, etc.).
Pour gérer les principaux de ressource de grappe du service de mégadonnées, voir :
- Création d'un principal de ressource
- Modification d'un principal de ressource
- Suppression d'un principal de ressource
- Régénération d'un jeton de principal de ressource
- Obtention des détails d'un principal de ressource
- Liste des principaux de ressource
Un nouveau jeton de session du principal de ressource est émis et distribué à tous les noeuds de la grappe dans les cas suivants :
- Remplacement d'un noeud
- Ajouter un noeud
Préalables
- Big Data Service 3.0.28 ou version ultérieure
- ODH 1.1.13 ou version ultérieure pour ODH 1
- ODH 2.0.9 ou version ultérieure pour ODH 2
- Autorisation
update bdsPour plus d'informations sur les politiques du service de mégadonnées, voir Politiques du service de mégadonnées
Exemple de politiques
Les politiques suivantes peuvent également être créées pour un groupe spécifique.
Autoriser l'accès en lecture seule au service de mégadonnées aux objets et aux seaux de la location pour une grappe
allow any-user to read buckets in tenancy where ALL{request.principal.id='<BDS Cluster OCID>'}
allow any-user to read objects in tenancy where ALL{request.principal.id='<BDS Cluster OCID>'}Autoriser l'accès en lecture seule à des seaux spécifiques de la location pour la grappe du service de mégadonnées
allow any-user to read buckets in tenancy where ALL{request.principal.id='<BDS Cluster OCID>',target.bucket.name='<bucket-name>'}
allow any-user to read objects in tenancy where ALL{request.principal.id='<BDS Cluster OCID>',target.bucket.name='<bucket-name>'}Autoriser un accès en lecture seule aux objets et aux seaux de la location pour toutes les grappes du service de mégadonnées provenant d'un compartiment spécifique
allow any-user to read buckets in tenancy where ALL{request.resource.compartment.id='<Compartment OCID of BDS Clusters>', request.principal.type='bigdataservice'}
allow any-user to read objects in tenancy where ALL{request.resource.compartment.id='<Compartment OCID of BDS Clusters>', request.principal.type='bigdataservice'}
Autoriser l'accès en lecture seule aux objets et aux seaux de différents locataires pour la grappe du service de mégadonnées (accès interlocation, par exemple)
Politiques requises dans la location source où la grappe du service de mégadonnées réelle a été créée.
Define tenancy <Target-Tenancy-Name> as <Target-Tenancy-OCID>
Endorse any-user to read object-family in tenancy <Target-Tenancy-Name>
Endorse any-user to read buckets in tenancy <Target-Tenancy-Name>
Endorse any-user to read objects in tenancy <Target-Tenancy-Name>
Politiques requises dans la location cible où les ressources sont accessibles.
Define tenancy <Source-BDS-Cluster-Tenancy-Name> as <Source-BDS-Cluster-Tenancy-OCID>
Admit any-user of tenancy <Source-BDS-Cluster-Tenancy-Name> to read object-family in tenancy where request.principal.id='<BDS Cluster OCID>'
Admit any-user of tenancy <Source-BDS-Cluster-Tenancy-Name> to read buckets in tenancy where request.principal.id='<BDS Cluster OCID>'
Admit any-user of tenancy <Source-BDS-Cluster-Tenancy-Name> to read objects in tenancy where request.principal.id='<BDS Cluster OCID>'Politique IAM relative au principal de ressource requis
Pour surveiller les mesures liées au principal de ressource (RPST), vous devez disposer du type d'accès requis accordé au moyen d'une politique écrite par un administrateur. La politique doit autoriser l'accès au service de surveillance et aux compartiments spécifiques du service de mégadonnées surveillés.
Si vous recevez une autorisation refusée ou une erreur non autorisée, vérifiez :
- La politique d'accès inclut les autorisations
oci_monitoring. - Vous travaillez dans le compartiment approprié.
Référence : Pour plus de détails sur les autorisations requises et l'accès au compartiment, voir Surveillance de la politique IAM.
Mesures du principal de ressource
Pour plus d'informations sur les mesures du principal de ressource, voir Mesures disponibles : oci_big_data_service.
Cas d'utilisation des mesures RPST et scénarios de surveillance combinés :
Mesure : ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold
Utilisation :
Utilisé pour surveiller de manière proactive les jetons RPST qui arrivent à expiration (au-delà de 80 % de leur durée de vie) sur une base par noeud.
Utilisez cette mesure lorsque :
- Vous voulez identifier les jetons qui expirent bientôt.
- Vous devez déclencher des alertes avant l'expiration réelle du jeton pour éviter les interruptions.
- Vous souhaitez autoriser le temps tampon pour la régénération automatique ou manuelle des jetons.
Exemple d'interrogation :
ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold[2h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqa7h57hcu6f5pvxpwl6j5u2ipl3qqdcavjlqyixtgjjiva"}.count()
Mesure : ResourcePrincipalSessionTokenStatus
Utilisation :
Utilisé pour détecter les problèmes de jeton critiques, tels que le jeton RPST a expiré ou est manquant au niveau par noeud.
Utilisez cette mesure lorsque :
- Vous voulez effectuer des vérifications d'état en temps réel de la disponibilité du jeton.
- Vous voulez agir immédiatement si un noeud a un jeton rompu ou expiré.
- Vous voulez classer le type d'échec : 1 pour expiré, 2 pour manquant.
Exemple d'interrogation :
ResourcePrincipalSessionTokenStatus[30m]{resourceId = "ocid1.instance.oc1.iad.anuwcljtanx7lvqc7uvyibak2qlvjwvzz4mtb6qiusn6x4zsvpx4kpfydczq"}.count()
Mesure : ResourcePrincipalTokenRefreshedInLast30Mins
Utilisation :
Permet de suivre si les jetons RPST ont été actualisés récemment, évalués au niveau de la grappe. Cela doit être vrai si ResourcePrincipalSessionTokenStatus indique expiré ou manquant pour un noeud.
Utilisez cette mesure lorsque :
-
Vous voulez vous assurer que les tâches périodiques de renouvellement de jeton sont exécutées avec succès.
-
Vous voulez qu'une pulsation au niveau de la grappe indique que la gestion des jetons fonctionne correctement.
-
Vous souhaitez détecter les jetons obsolètes sur tous les noeuds si cette mesure est fausse.
Exemple d'interrogation :
ResourcePrincipalTokenRefreshedInLast30Mins[30m]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqac7xojchf2vjmbeudlixrqmjvjct7oioj34otatnibfka"}.max()
Surveillance proactive + mesures correctives immédiates
Objectif : Détectez les jetons dont l'expiration approche et assurez-vous qu'aucun n'est manquant ou expiré.
Utilisez les mesures suivantes ensemble :
-
ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold -
ResourcePrincipalSessionTokenStatus
Exemple d'interrogation (agréger ci-dessous les interrogations) :
Interrogation 1 :
ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold[12h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.grouping().count()
Interrogation 2 :
ResourcePrincipalSessionTokenStatus[12h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.count()
Vérification de l'état avec la validation d'actualisation
Objectif : Vérifiez que tous les jetons sont actualisés périodiquement et qu'il n'y a aucun jeton expiré ou manquant.
Utilisez les mesures suivantes ensemble :
-
ResourcePrincipalTokenRefreshedInLast30Mins -
ResourcePrincipalSessionTokenStatus
Exemple d'interrogation (agréger ci-dessous les interrogations) :
Interrogation 1 :
ResourcePrincipalTokenRefreshedInLast30Mins[30m]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqac7xojchf2vjmbeudlixrqmjvjct7oioj34otatnibfka"}.max()
Interrogation 2 :
ResourcePrincipalSessionTokenStatus[12h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.count()
Vérification de l'état de préparation de la grappe
Objectif : Assurez-vous que tous les noeuds sont prêts (jetons actifs, récemment actualisés, aucune expiration à venir).
Utiliser les trois mesures ensemble :
-
ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold -
ResourcePrincipalSessionTokenStatus -
ResourcePrincipalTokenRefreshedInLast30Mins
Exemple d'interrogation (agréger ci-dessous les interrogations) :
Interrogation 1 :
ResourcePrincipalTokenExpiryTimeExceeding80PercentThreshold[12h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.grouping().count()
Interrogation 2 :
ResourcePrincipalSessionTokenStatus[12h]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.count()
Interrogation 3 :
ResourcePrincipalTokenRefreshedInLast30Mins[30m]{clusterOcid = "ocid1.preprod-bigdataservice.oc1.iad.amaaaaaamn67ujqalm2xprcarkhihwcnih3lkinktmmjmqqrutqzkukpswiq"}.max()
Attributs pris en charge
Les attributs suivants sont pris en charge par les principaux de ressource du service de mégadonnées. Cette option peut être utilisée à la fois au niveau de la politique et au niveau du groupe dynamique. Lors de la consommation des attributs de principal de ressource au niveau du groupe dynamique, veillez à régénérer le jeton d'accès du principal de ressource pour qu'il soit efficace.
-
request.principal.id: ID principal de ressource. La valeur est identique à l'ID du service de mégadonnées et est utilisée pour un isolement spécifique au niveau de la ressource. -
request.resource.compartment.id: ID compartiment de la ressource du service de mégadonnées, utilisé pour l'isolement au niveau du compartiment. -
request.resource.tenancy.id: ID location de la ressource du service de mégadonnées, utilisé pour l'isolement au niveau de la location. -
request.principal.type: Type de principal de ressource du service de mégadonnées. Toutes les valeurs des principaux de ressource propres au service de mégadonnées sont'bigdataservice'.