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 un manifesto per abilitare funzionalità di recupero aggiuntive
AWS AppConfig Agent offre le seguenti funzionalità aggiuntive per aiutarvi a recuperare le configurazioni per le vostre applicazioni.
-
Configurazione AWS AppConfig dell'agente per recuperare le configurazioni da più account: Utilizzate AWS AppConfig Agent da un sistema primario o di recupero per recuperare i dati di configurazione Account AWS da account di più fornitori.
-
Configurazione AWS AppConfig dell'agente per scrivere copie di configurazione su disco: utilizza AWS AppConfig Agent per scrivere i dati di configurazione su disco. Questa funzionalità consente l'integrazione con i clienti con applicazioni che leggono i dati di configurazione dal disco AWS AppConfig.
Comprensione dei manifesti degli agenti
Per abilitare queste funzionalità AWS AppConfig dell'agente, è necessario creare un manifesto. Un manifesto è un insieme di dati di configurazione forniti per controllare le azioni che l'agente può eseguire. Un manifesto è scritto inJSON. Contiene un set di chiavi di primo livello che corrispondono a diverse configurazioni che hai utilizzato. AWS AppConfig
Un manifesto può includere più configurazioni. Inoltre, ogni configurazione nel manifesto può identificare una o più funzionalità dell'agente da utilizzare per la configurazione specificata. Il contenuto del manifesto utilizza il seguente formato:
{ "
application_name
:environment_name
:configuration_name
": { "agent_feature_to_enable_1
": { "feature-setting-key
": "feature-setting-value
" }, "agent_feature_to_enable_2
": { "feature-setting-key
": "feature-setting-value
" } } }
Ecco un JSON esempio di manifesto con due configurazioni. La prima configurazione (MyApp
) non utilizza alcuna funzionalità AWS AppConfig dell'agente. La seconda configurazione (My2ndApp
) utilizza la copia della configurazione di scrittura su disco e le funzionalità di recupero di più account:
{ "MyApp:Test:MyAllowListConfiguration": {}, "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": { "credentials": { "roleArn": "arn:us-west-1:iam::123456789012:role/MyTestRole", "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac", "roleSessionName": "AwsAppConfigAgent", "credentialsDuration": "2h" }, "writeTo": { "path": "/tmp/aws-appconfig/my-2nd-app/beta/my-enable-payments-feature-flag-configuration.json" } } }
Come fornire un manifesto dell'agente
È possibile archiviare il manifesto come file in una posizione in cui AWS AppConfig Agent può leggerlo. In alternativa, è possibile archiviare il manifesto come AWS AppConfig configurazione e indirizzare l'agente verso di esso. Per fornire un manifesto dell'agente, è necessario impostare una variabile di MANIFEST
ambiente con uno dei seguenti valori:
Posizione del manifesto | Valore della variabile d'ambiente | Caso d'uso |
---|---|---|
File |
file: /path/to/agent-manifest.json |
Usa questo metodo se il tuo manifesto non cambia spesso. |
AWS AppConfig configurazione |
|
Utilizzate questo metodo per gli aggiornamenti dinamici. È possibile aggiornare e distribuire un manifesto archiviato AWS AppConfig come configurazione nello stesso modo in cui si archiviano altre AWS AppConfig configurazioni. |
Variabile di ambiente |
Contenuto del manifesto () JSON |
Usa questo metodo se il tuo manifesto non cambia spesso. Questo metodo è utile in ambienti container in cui è più facile impostare una variabile di ambiente piuttosto che esporre un file. |
Per ulteriori informazioni sull'impostazione delle variabili per AWS AppConfig Agent, consultate l'argomento pertinente al vostro caso d'uso:
Configurazione AWS AppConfig dell'agente per recuperare le configurazioni da più account
È possibile configurare AWS AppConfig l'agente per recuperare le configurazioni da più configurazioni Account AWS inserendo le sostituzioni delle credenziali nel manifesto dell'agente. AWS AppConfig Le sostituzioni delle credenziali includono l'Amazon Resource Name (ARN) di un ruolo AWS Identity and Access Management (IAM), un ID di ruolo, un nome di sessione e una durata per quanto tempo l'agente può assumere il ruolo.
Inserisci questi dettagli in una sezione «credenziali» del manifesto. La sezione «credenziali» utilizza il seguente formato:
{ "
application_name
:environment_name
:configuration_name
": { "credentials": { "roleArn": "arn:partition
:iam::account_ID
:role/roleName", "roleExternalId": "string
", "roleSessionName": "string
", "credentialsDuration": "time_in_hours
" } } }
Ecco un esempio:
{ "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": { "credentials": { "roleArn": "arn:us-west-1:iam::123456789012:role/MyTestRole", "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac", "roleSessionName": "AWSAppConfigAgent", "credentialsDuration": "2h" } } }
Prima di recuperare una configurazione, l'agente legge i dettagli delle credenziali per la configurazione dal manifesto e quindi assume il IAM ruolo specificato per quella configurazione. È possibile specificare un set diverso di sostituzioni di credenziali per diverse configurazioni in un unico manifesto. Il diagramma seguente mostra come l' AWS AppConfig agente, durante l'esecuzione nell'account A (l'account di recupero), assuma ruoli separati specificati per gli account B e C (gli account fornitore) e quindi richiami l'GetLatestConfigurationAPIoperazione per recuperare i dati di configurazione dall'esecuzione in tali account: AWS AppConfig
Configura le autorizzazioni per recuperare i dati di configurazione dagli account dei fornitori
AWS AppConfig L'agente in esecuzione nell'account di recupero necessita dell'autorizzazione per recuperare i dati di configurazione dagli account del fornitore. Si concede l'autorizzazione all'agente creando un ruolo AWS Identity and Access Management (IAM) in ciascuno degli account fornitore. AWS AppConfig L'agente nell'account di recupero assume questo ruolo per ottenere dati dagli account fornitore. Completa le procedure in questa sezione per creare una politica di IAM autorizzazioni, un IAM ruolo e aggiungere le sostituzioni degli agenti al manifesto.
Prima di iniziare
Raccogli le seguenti informazioni prima di creare una politica di autorizzazione e un ruolo in. IAM
-
Il IDs per ciascuno Account AWS. L'account di recupero è l'account che chiamerà altri account per i dati di configurazione. Gli account fornitore sono gli account che invieranno i dati di configurazione all'account di recupero.
-
Il nome del IAM ruolo utilizzato da AWS AppConfig nell'account di recupero. Di seguito è riportato un elenco dei ruoli utilizzati da AWS AppConfig, per impostazione predefinita:
-
Per Amazon Elastic Compute Cloud (AmazonEC2), AWS AppConfig utilizza il ruolo di istanza.
-
For AWS Lambda, AWS AppConfig utilizza il ruolo di esecuzione Lambda.
-
Per Amazon Elastic Container Service (AmazonECS) e Amazon Elastic Kubernetes Service (EKSAmazon AWS AppConfig ), utilizza il ruolo contenitore.
Se hai configurato l' AWS AppConfig agente per utilizzare un IAM ruolo diverso specificando la variabile di
ROLE_ARN
ambiente, prendi nota di quel nome. -
Crea la politica delle autorizzazioni
Utilizzare la procedura seguente per creare una politica di autorizzazioni utilizzando la IAM console. Completa la procedura in ciascuna unità Account AWS che fornirà i dati di configurazione per l'account di recupero.
Per creare una policy IAM
-
Accedi all'account di un AWS Management Console fornitore.
Apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, seleziona Policy e quindi Crea policy.
-
Scegli l'JSONopzione.
-
Nell'editor delle politiche, sostituisci l'impostazione predefinita JSON con la seguente dichiarazione di politica. Aggiorna ogni
example resource placeholder
con i dettagli dell'account del fornitore.{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "appconfig:StartConfigurationSession", "appconfig:GetLatestConfiguration" ], "Resource": "arn:
partition
:appconfig:region
:vendor_account_ID
:application/vendor_application_ID
/environment/vendor_environment_ID
/configuration/vendor_configuration_ID
" } ] }Ecco un esempio:
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "appconfig:StartConfigurationSession", "appconfig:GetLatestConfiguration" ], "Resource": "arn:aws:appconfig:us-east-2:111122223333:application/abc123/environment/def456/configuration/hij789" } ] }
-
Scegli Next (Successivo).
-
Nel campo Nome della politica, inserisci un nome.
-
(Facoltativo) Per Aggiungi tag, aggiungi una o più coppie tag-chiave-valore per organizzare, tracciare o controllare l'accesso a questa politica.
-
Scegli Create Policy (Crea policy). Il sistema visualizza di nuovo la pagina Policies (Policy).
-
Ripetete questa procedura in ciascuna unità Account AWS che fornirà i dati di configurazione per l'account di recupero.
Crea il ruolo IAM
Utilizzare la procedura seguente per creare un IAM ruolo utilizzando la IAM console. Completare la procedura in ciascuna Account AWS unità che fornirà i dati di configurazione per l'account di recupero.
Per creare un ruolo IAM
-
Accedi all'account di un AWS Management Console fornitore.
Apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, scegli Ruoli, quindi scegli Crea politica.
-
Per Trusted entity type (Tipo di entità attendibile), scegli Account AWS.
-
Nella Account AWSsezione, scegli Altro Account AWS.
-
Nel campo ID account, inserisci l'ID dell'account di recupero.
-
(Facoltativo) Come procedura consigliata di sicurezza per questo ruolo, scegli Richiedi ID esterno e inserisci una stringa.
-
Scegli Next (Successivo).
-
Nella pagina Aggiungi autorizzazioni, utilizza il campo Cerca per individuare la politica creata nella procedura precedente. Seleziona la casella accanto al suo nome.
-
Scegli Next (Successivo).
-
In Role name (Nome ruolo), immettere un nome.
-
(Facoltativo) In Description (Descrizione), immettere una descrizione.
-
Per il passaggio 1: seleziona le entità attendibili, scegli Modifica. Sostituisci la politica JSON di attendibilità predefinita con la seguente politica. Aggiorna ciascuno
example resource placeholder
con le informazioni del tuo account di recupero dati.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
retrieval_account_ID
:role/appconfig_role_in_retrieval_account
" }, "Action": "sts:AssumeRole" } ] } -
(Facoltativo) In Tags (Tag), aggiungi una o più coppie tag chiave-valore per organizzare, monitorare o controllare l'accesso per questo ruolo.
-
Scegliere Create role (Crea ruolo). Il sistema visualizza di nuovo la pagina Roles (Ruoli).
-
Cerca il ruolo che hai appena creato. Sceglilo. Nella ARNsezione, copia ilARN. Queste informazioni verranno specificate nella procedura successiva.
Aggiungi sostituzioni di credenziali al manifesto
Dopo aver creato il IAM ruolo nell'account fornitore, aggiorna il manifesto nell'account di recupero. In particolare, aggiungi il blocco di credenziali e il IAM ruolo ARN per il recupero dei dati di configurazione dall'account fornitore. Ecco il formato: JSON
{ "
vendor_application_name
:vendor_environment_name
:vendor_configuration_name
": { "credentials": { "roleArn": "arn:partition
:iam::vendor_account_ID
:role/name_of_role_created_in_vendor_account
", "roleExternalId": "string
", "roleSessionName": "string
", "credentialsDuration": "time_in_hours
" } } }
Ecco un esempio:
{ "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": { "credentials": { "roleArn": "arn:us-west-1:iam::123456789012:role/MyTestRole", "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac", "roleSessionName": "AwsAppConfigAgent", "credentialsDuration": "2h" } } }
Verifica che il recupero da più account funzioni
È possibile verificare che l'agente sia in grado di recuperare i dati di configurazione da più account esaminando i registri dell'agente. AWS AppConfig Il registro dei INFO
livelli per i dati iniziali recuperati per 'YourApplicationName
:YourEnvironmentName
:YourConfigurationName
' è l'indicatore migliore per il successo dei recuperi. Se i recuperi non riescono, dovrebbe apparire un registro dei ERROR
livelli che indica il motivo dell'errore. Di seguito è riportato un esempio di recupero riuscito da un account fornitore:
[appconfig agent] 2023/11/13 11:33:27 INFO AppConfig Agent 2.0.x [appconfig agent] 2023/11/13 11:33:28 INFO serving on localhost:2772 [appconfig agent] 2023/11/13 11:33:28 INFO retrieved initial data for 'MyTestApplication:MyTestEnvironment:MyDenyListConfiguration' in XX.Xms
Configurazione AWS AppConfig dell'agente per scrivere copie di configurazione su disco
È possibile configurare AWS AppConfig Agent per archiviare automaticamente una copia di una configurazione su disco in formato testo normale. Questa funzionalità consente l'integrazione con i clienti con applicazioni che leggono i dati di configurazione dal disco AWS AppConfig.
Questa funzionalità non è progettata per essere utilizzata come funzionalità di backup della configurazione. AWS AppConfig
L'agente non legge i file di configurazione copiati su disco. Se desideri eseguire il backup delle configurazioni su disco, consulta le BACKUP_DIRECTORY
variabili di PRELOAD_BACKUP
ambiente per Using AWS AppConfig Agent with Amazon EC2 o Using AWS AppConfig Agent with Amazon ECS e Amazon EKS.
avvertimento
Tieni presente le seguenti informazioni importanti su questa funzionalità:
-
Le configurazioni salvate su disco vengono archiviate in testo semplice e sono leggibili dall'uomo. Non abilitare questa funzionalità per configurazioni che includono dati sensibili.
-
Questa funzionalità scrive sul disco locale. Utilizza il principio del privilegio minimo per le autorizzazioni del filesystem. Per ulteriori informazioni, consulta Implementazione dell'accesso con privilegi minimi.
Per abilitare la scrittura (copia della configurazione su disco)
-
Modifica il manifesto.
-
Scegliete la configurazione che desiderate AWS AppConfig scrivere su disco e aggiungete un
writeTo
elemento. Ecco un esempio:{ "
application_name
:environment_name
:configuration_name
": { "writeTo": { "path": "path_to_configuration_file
" } } }Ecco un esempio:
{ "MyTestApp:MyTestEnvironment:MyNewConfiguration": { "writeTo": { "path": "/tmp/aws-appconfig/mobile-app/beta/enable-mobile-payments" } } }
-
Salvare le modifiche. Il file configuration.json verrà aggiornato ogni volta che vengono distribuiti nuovi dati di configurazione.
Verifica che la copia di scrittura della configurazione su disco funzioni
È possibile verificare che le copie di una configurazione vengano scritte su disco esaminando i log dell' AWS AppConfig agente. La voce di INFO
registro con la frase "ha scritto la configurazione 'INFOapplication
:environment
:configuration
'a file_path
"indica che AWS AppConfig l'agente scrive copie di configurazione su disco.
Ecco un esempio:
[appconfig agent] 2023/11/13 11:33:27 INFO AppConfig Agent 2.0.x [appconfig agent] 2023/11/13 11:33:28 INFO serving on localhost:2772 [appconfig agent] 2023/11/13 11:33:28 INFO retrieved initial data for 'MobileApp:Beta:EnableMobilePayments' in XX.Xms [appconfig agent] 2023/11/13 17:05:49 INFO wrote configuration 'MobileApp:Beta:EnableMobilePayments' to /tmp/configs/your-app/your-env/your-config.json