Utilizzo di ruoli collegati ai servizi per la registrazione write-ahead - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo di ruoli collegati ai servizi per la registrazione write-ahead

Amazon EMR utilizza ruoli collegati ai servizi AWS Identity and Access Management (IAM). Un ruolo collegato ai servizi è un tipo di ruolo IAM univoco collegato direttamente ad Amazon EMR. I ruoli collegati ai servizi sono predefiniti da Amazon EMR e includono tutte le autorizzazioni richieste dal servizio per chiamare altri servizi per tuo conto. AWS

I ruoli collegati ai servizi interagiscono con il ruolo di servizio Amazon EMR e il profilo dell'istanza Amazon EC2 per Amazon EMR. Per ulteriori informazioni sul ruolo del servizio e il profilo dell'istanza, consulta Configurazione dei ruoli di servizio IAM per le autorizzazioni di Amazon EMR per i servizi e risorse AWS.

Un ruolo collegato al servizio semplifica la configurazione di Amazon EMR perché non è necessario aggiungere manualmente le autorizzazioni necessarie. Amazon EMR definisce le autorizzazioni dei suoi ruoli collegati ai servizi e, se non diversamente definito, solo Amazon EMR può assumerne i ruoli. Le autorizzazioni definite includono la policy di attendibilità e la policy delle autorizzazioni che non può essere collegata a nessun'altra entità IAM.

Puoi eliminare questo ruolo collegato al servizio per Amazon EMR solo dopo aver eliminato le relative risorse e aver terminato tutti i cluster EMR nell'account. Ciò protegge le tue risorse Amazon EMR in modo da non poter rimuovere inavvertitamente l'autorizzazione ad accedere alle risorse.

Autorizzazioni di ruolo collegate al servizio per il write-ahead logging (WAL)

Amazon EMR utilizza il ruolo collegato al servizio AWSServiceRoleForEMRWALper recuperare lo stato di un cluster.

Il ruolo AWSServiceRoleForEMRWAL collegato al servizio prevede che i seguenti servizi assumano il ruolo:

  • emrwal.amazonaws.com

La politica di EMRDescribeClusterPolicyForEMRWALautorizzazione per il ruolo collegato al servizio consente ad Amazon EMR di completare le seguenti azioni sulle risorse specificate:

  • Operazione: DescribeCluster su *

È necessario configurare le autorizzazioni per consentire a un'entità IAM (in questo caso, Amazon EMR WAL) di creare, modificare o eliminare un ruolo collegato al servizio. Aggiungi le seguenti istruzioni, se necessario, alla politica di autorizzazione per il tuo profilo di istanza:

Per consentire a un'entità IAM di creare il ruolo collegato al AWSServiceRoleForEMRWAL servizio

Aggiungi la seguente istruzione alla policy delle autorizzazioni per l'entità IAM che deve creare il ruolo collegato ai servizi:

{ "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole", "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::*:role/aws-service-role/emrwal.amazonaws.com*/AWSServiceRoleForEMRWAL*", "Condition": { "StringLike": { "iam:AWSServiceName": [ "emrwal.amazonaws.com", "elasticmapreduce.amazonaws.com.cn" ] } } }

Per consentire a un'entità IAM di modificare la descrizione del ruolo collegato al servizio AWSServiceRoleForEMRWAL

Aggiungi la seguente istruzione alla policy delle autorizzazioni per l'entità IAM che deve modificare la descrizione di un ruolo collegato ai servizi:

{ "Effect": "Allow", "Action": [ "iam:UpdateRoleDescription" ], "Resource": "arn:aws:iam::*:role/aws-service-role/emrwal.amazonaws.com*/AWSServiceRoleForEMRWAL*", "Condition": { "StringLike": { "iam:AWSServiceName": [ "emrwal.amazonaws.com", "elasticmapreduce.amazonaws.com.cn" ] } } }

Per consentire a un'entità IAM di eliminare il ruolo collegato al servizio AWSServiceRoleForEMRWAL

Aggiungi la seguente istruzione alla policy delle autorizzazioni per l'entità IAM che deve eliminare un ruolo collegato ai servizi:

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "arn:aws:iam::*:role/aws-service-role/elasticmapreduce.amazonaws.com*/AWSServiceRoleForEMRCleanup*", "Condition": { "StringLike": { "iam:AWSServiceName": [ "emrwal.amazonaws.com", "elasticmapreduce.amazonaws.com.cn" ] } } }

Creazione di un ruolo collegato ai servizi per Amazon EMR

Non è necessario creare manualmente il AWSServiceRoleForEMRWAL ruolo. Amazon EMR crea automaticamente questo ruolo collegato al servizio quando crei uno spazio di lavoro WAL con l'EMRWAL CLI o AWS CloudFormation da, oppure HBase creerà il ruolo collegato al servizio quando configuri uno spazio di lavoro per Amazon EMR WAL e il ruolo collegato al servizio non esiste ancora. È necessario disporre delle autorizzazioni per creare un ruolo collegato al servizio. Per esempio le istruzioni che aggiungono questa funzionalità alla politica di autorizzazione di un'entità IAM (come un utente, un gruppo o un ruolo), consulta la sezione precedente,. Autorizzazioni di ruolo collegate al servizio per il write-ahead logging (WAL)

Modifica di un ruolo collegato ai servizi per Amazon EMR

Amazon EMR non consente di modificare il ruolo collegato al AWSServiceRoleForEMRWAL servizio. Dopo aver creato un ruolo collegato al servizio, non puoi modificare il nome del ruolo collegato al servizio perché varie entità potrebbero fare riferimento al ruolo collegato al servizio. Tuttavia, puoi modificare la descrizione del ruolo collegato al servizio utilizzando IAM.

Modifica della descrizione di un ruolo collegato ai servizi (console IAM)

È possibile utilizzare la console IAM per modificare la descrizione di un ruolo collegato ai servizi.

Per modificare la descrizione di un ruolo collegato ai servizi (console)
  1. Nel pannello di navigazione della console IAM seleziona Roles (Ruoli).

  2. Scegliere il nome del ruolo da modificare.

  3. Nella parte destra di Role description (Descrizione ruolo), scegli Edit (Modifica).

  4. Digita una nuova descrizione nella casella e scegli Save changes (Salva modifiche).

Modifica della descrizione di un ruolo collegato ai servizi (CLI IAM)

Puoi utilizzare i comandi IAM di AWS Command Line Interface per modificare la descrizione di un ruolo collegato al servizio.

Per modificare la descrizione di un ruolo collegato ai servizi (CLI)
  1. (Facoltativo) Per visualizzare la descrizione attuale di un ruolo, utilizza i seguenti comandi:

    $ aws iam get-role --role-name role-name

    Per fare riferimento ai ruoli con i comandi della CLI utilizza il nome del ruolo, non l'ARN. Ad esempio, per fare riferimento a un ruolo il cui ARN è arn:aws:iam::123456789012:role/myrole, puoi usare myrole.

  2. Per aggiornare la descrizione di un ruolo collegato ai servizi, utilizza uno dei seguenti comandi:

    $ aws iam update-role-description --role-name role-name --description description

Modifica della descrizione di un ruolo collegato ai servizi (API IAM)

È possibile utilizzare l'API IAM per modificare la descrizione di un ruolo collegato ai servizi.

Per modificare la descrizione di un ruolo collegato ai servizi (API)
  1. (Facoltativo) Per visualizzare la descrizione attuale di un ruolo, utilizza il seguente comando:

    API IAM: GetRole

  2. Per aggiornare la descrizione di un ruolo, utilizza il seguente comando:

    API IAM: UpdateRoleDescription

Eliminazione di un ruolo collegato ai servizi per Amazon EMR

Se non hai più bisogno di utilizzare una funzionalità o un servizio che richiede un ruolo collegato al servizio, ti consigliamo di eliminare quel ruolo collegato al servizio. In questo modo non sarà più presente un'entità non utilizzata che non viene monitorata e gestita attivamente. Tuttavia, è necessario effettuare la pulizia delle risorse associate al ruolo collegato ai servizi prima di poterlo eliminare.

Nota

L'operazione di registrazione write-ahead non viene influenzata dall'eliminazione del AWSServiceRoleForEMRWAL ruolo, ma Amazon EMR non eliminerà automaticamente i log che ha creato una volta terminato il cluster EMR. Pertanto, dovrai eliminare manualmente i log WAL di Amazon EMR se elimini il ruolo collegato al servizio.

Pulizia di un ruolo collegato ai servizi

Prima di utilizzare IAM per eliminare un ruolo collegato ai servizi, devi innanzitutto verificare che il ruolo non abbia sessioni attive ed eliminare tutte le risorse utilizzate dal ruolo.

Per verificare se il ruolo collegato ai servizi dispone di una sessione attiva nella console IAM
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, seleziona Ruoli. Seleziona il nome (non la casella di controllo) del ruolo. AWSServiceRoleForEMRWAL

  3. Nella pagina Summary (Riepilogo) per il ruolo selezionato, scegli Access Advisor (Consulente accessi).

  4. Nella scheda Access Advisor (Consulente accessi) esaminare l'attività recente per il ruolo collegato ai servizi.

    Nota

    Se non sei sicuro che Amazon EMR stia utilizzando AWSServiceRoleForEMRWAL il ruolo, puoi provare a eliminare il ruolo collegato al servizio. Se il servizio utilizza il ruolo, l'eliminazione non riesce e puoi visualizzare le regioni in cui viene utilizzato il ruolo collegato al servizio. Se viene utilizzato il ruolo collegato al servizio, è necessario attendere il termine della sessione prima di poter eliminare il ruolo collegato al servizio. Non puoi revocare la sessione per un ruolo collegato al servizio.

Per rimuovere le risorse Amazon EMR utilizzate da AWSServiceRoleForEMRWAL

Eliminazione di un ruolo collegato ai servizi (console IAM)

È possibile utilizzare la console IAM per eliminare un ruolo collegato ai servizi.

Per eliminare un ruolo collegato ai servizi (console)
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel riquadro di navigazione, seleziona Ruoli. Seleziona la casella di controllo accanto a AWSServiceRoleForEMRWAL, non il nome o la riga stessa.

  3. In operazioni Role (Ruolo) nella parte superiore della pagina, seleziona Delete (Elimina) ruolo.

  4. Nella finestra di dialogo di conferma, esamina i dati dell'ultimo accesso al servizio, che mostrano l'ultima volta che ciascuno dei ruoli selezionati ha effettuato l'ultimo accesso a un AWS servizio. In questo modo potrai verificare se il ruolo è attualmente attivo. Per procedere, seleziona Yes, Delete (Sì, elimina).

  5. Controlla le notifiche della console IAM per monitorare lo stato dell'eliminazione del ruolo collegato ai servizi. Poiché l'eliminazione del ruolo collegato ai servizi IAM è asincrona, una volta richiesta l'eliminazione del ruolo, il task di eliminazione può essere eseguito correttamente o meno. Se il task non viene eseguito correttamente, puoi scegliere View details (Visualizza dettagli) o View Resources (Visualizza risorse) dalle notifiche per capire perché l'eliminazione non è stata effettuata. Se l'eliminazione non viene eseguita perché vi sono risorse nel servizio che sono usate dal ruolo, il motivo dell'errore include un elenco di risorse.

Eliminazione di un ruolo collegato ai servizi (CLI IAM)

Puoi utilizzare i comandi IAM di AWS Command Line Interface per eliminare un ruolo collegato al servizio. Poiché un ruolo collegato ai servizi non può essere eliminato se è in uso o se a esso sono associate delle risorse, occorre inviare una richiesta di eliminazione. Se queste condizioni non sono soddisfatte, la richiesta può essere rifiutata.

Per eliminare un ruolo collegato ai servizi (CLI)
  1. Per controllare lo stato dell'attività di eliminazione, devi acquisire il deletion-task-id dalla risposta. Per inviare una richiesta di eliminazione per un ruolo collegato ai servizi, digita il seguente comando:

    $ aws iam delete-service-linked-role --role-name AWSServiceRoleForEMRWAL
  2. Digita il seguente comando per verificare lo stato del task di eliminazione:

    $ aws iam get-service-linked-role-deletion-status --deletion-task-id deletion-task-id

    Lo stato di un task di eliminazione può essere NOT_STARTED, IN_PROGRESS, SUCCEEDEDo FAILED. Se l'eliminazione non viene eseguita correttamente, la chiamata restituisce il motivo dell'errore per consentire all'utente di risolvere il problema.

Eliminazione di un ruolo collegato ai servizi (API IAM)

È possibile utilizzare l'API IAM per eliminare un ruolo collegato ai servizi. Poiché un ruolo collegato ai servizi non può essere eliminato se è in uso o se a esso sono associate delle risorse, occorre inviare una richiesta di eliminazione. Se queste condizioni non sono soddisfatte, la richiesta può essere rifiutata.

Per eliminare un ruolo collegato ai servizi (API)
  1. Per inviare una richiesta di eliminazione per un ruolo collegato al servizio, chiama. DeleteServiceLinkedRole Nella richiesta, specifica il nome del AWSServiceRoleForEMRWAL ruolo.

    Per controllare lo stato dell'attività di eliminazione, devi acquisire il DeletionTaskId dalla risposta.

  2. Per verificare lo stato dell'eliminazione, chiama GetServiceLinkedRoleDeletionStatus. Nella richiesta, specificare il DeletionTaskId.

    Lo stato di un task di eliminazione può essere NOT_STARTED, IN_PROGRESS, SUCCEEDEDo FAILED. Se l'eliminazione non viene eseguita correttamente, la chiamata restituisce il motivo dell'errore per consentire all'utente di risolvere il problema.

Regioni supportate per AWSServiceRoleForEMRWAL

Amazon EMR supporta l'utilizzo del ruolo AWSServiceRoleForEMRWAL collegato ai servizi nelle seguenti regioni.

Nome Regione Identità della regione Supporto in Amazon EMR
US East (N. Virginia) us-east-1
Stati Uniti orientali (Ohio) us-east-2
US West (N. California) us-west-1
US West (Oregon) us-west-2
Asia Pacific (Mumbai) ap-south-1
Asia Pacifico (Singapore) ap-southeast-1
Asia Pacifico (Sydney) ap-southeast-2
Asia Pacifico (Tokyo) ap-northeast-1
Europe (Frankfurt) eu-central-1
Europa (Irlanda) eu-west-1