Taggare le tue risorse ElastiCache - Amazon ElastiCache

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à.

Taggare le tue risorse ElastiCache

Per aiutarti a gestire i tuoi cluster e altre ElastiCache risorse, puoi assegnare i tuoi metadati a ciascuna risorsa sotto forma di tag. I tag consentono di classificare le AWS risorse in diversi modi, ad esempio per scopo, proprietario o ambiente. Questa caratteristicaè molto utile quando hai tante risorse dello stesso tipo in quanto puoi rapidamente individuare una risorsa specifica in base ai tag assegnati. Questo argomento descrive i tag e mostra come crearli.

avvertimento

Come da best practice, è consigliabile non includere dati sensibili nei tag.

Un tag è un'etichetta che si assegna a una AWS risorsa. Ogni tag è composto da una chiave e da un valore opzionale, entrambi personalizzabili. I tag consentono di classificare le AWS risorse in diversi modi, ad esempio per scopo o proprietario. Ad esempio, puoi definire un set di tag per i ElastiCache cluster del tuo account che ti aiutino a tenere traccia del proprietario e del gruppo di utenti di ogni istanza.

Ti consigliamo di creare un set di chiavi di tag in grado di soddisfare i requisiti di ciascun tipo di risorsa. Con un set di chiavi di tag coerente, la gestione delle risorse risulta semplificata. Puoi cercare e filtrare le risorse in base ai tag aggiunti. Per ulteriori informazioni sulle modalità di implementazione di una strategia efficace di applicazione di tag alle risorse, consulta il whitepaper AWS Best practice per l'applicazione di tag.

I tag non hanno alcun significato semantico ElastiCache e vengono interpretati rigorosamente come una stringa di caratteri. Inoltre, i tag non vengono assegnati automaticamente alle risorse. Puoi modificare chiavi e valori di tag e rimuovere tag da una risorsa in qualsiasi momento. È possibile impostare il valore di un tag su null. Se aggiungi un tag con la stessa chiave di un tag esistente a una risorsa specifica, il nuovo valore sovrascrive quello precedente. Se elimini una risorsa, verranno eliminati anche tutti i tag associati alla risorsa. Inoltre, se si aggiungono o eliminano tag in un gruppo di replica, verranno aggiunti o rimossi anche i tag di tutti i nodi del gruppo di replica.

È possibile lavorare con i tag utilizzando i AWS Management Console AWS CLI, i ElastiCache API e.

Se lo utilizziIAM, puoi controllare quali utenti del tuo AWS account sono autorizzati a creare, modificare o eliminare i tag. Per ulteriori informazioni, consulta Autorizzazioni a livello di risorsa.

Puoi taggare la maggior parte ElastiCache delle risorse già esistenti nel tuo account. Nella tabella seguente sono elencate le risorse che supportano il tagging. Se utilizzi il AWS Management Console, puoi applicare tag alle risorse utilizzando il Tag Editor. Alcune schermate relative alle risorse ti permettono di specificare i tag per una risorsa quando crei la risorsa, ad esempio un tag con la chiave con nome e un valore specificato. Nella maggior parte dei casi, la console applica i tag subito dopo la creazione della risorsa, anziché durante il processo di creazione. La console può organizzare le risorse in base al tag Name, ma questo tag non ha alcun significato semantico per il ElastiCache servizio.

Inoltre, alcune operazioni per la creazione di risorse ti consentono di specificare tag per una risorsa durante la sua creazione. Se i tag non possono essere applicati durante la creazione della risorsa, eseguiamo il rollback del processo di creazione della risorsa. Ciò fa sì che le risorse vengano create con i tag oppure che non vengano create affatto, nonché che nessuna risorsa sia mai sprovvista di tag. Il tagging delle risorse in fase di creazione ti permette di evitare di eseguire script di tagging personalizzati dopo la creazione delle risorse.

Se utilizzi Amazon ElastiCache API, the o an AWS CLI AWS SDK, puoi utilizzare il Tags parametro nell' ElastiCache APIazione pertinente per applicare i tag. Questi sono:

  • CreateServerlessCache

  • CreateCacheCluster

  • CreateReplicationGroup

  • CopyServerlessCacheSnapshot

  • CopySnapshot

  • CreateCacheParameterGroup

  • CreateCacheSecurityGroup

  • CreateCacheSubnetGroup

  • CreateServerlessCacheSnapshot

  • CreateSnapshot

  • CreateUserGroup

  • CreateUser

  • PurchaseReservedCacheNodesOffering

La tabella seguente descrive le ElastiCache risorse che possono essere taggate e le risorse che possono essere taggate al momento della creazione utilizzando il ElastiCache API AWS CLI, il o un AWS SDK.

Supporto per ElastiCache l'etichettatura delle risorse
Risorsa support dei tag Supporta l'applicazione di tag in fase di creazione
serverlesscache
Gruppo di parametri
SecurityGroup
Gruppo di sottoreti
gruppo di replica
cluster
Istanza riservata
serverlesscachesnapshot
snapshot
Utente
gruppo utenti
Nota

Non è possibile assegnare tag ai Global Datastore.

Puoi applicare autorizzazioni a livello di risorsa basate su tag nelle tue IAM politiche alle ElastiCache API azioni che supportano l'aggiunta di tag durante la creazione per implementare un controllo granulare sugli utenti e i gruppi che possono taggare le risorse al momento della creazione. Le risorse vengono adeguatamente protette dalla creazione, ovvero tag che vengono applicati immediatamente alle risorse. Pertanto qualsiasi autorizzazione basata su tag a livello di risorsa che controlla l'uso delle risorse risulta immediatamente valida. Le risorse possono essere monitorate e segnalate con maggiore precisione. Puoi applicare l'uso del tagging alle nuove risorse e controllare quali chiavi e valori di tag sono impostati per le risorse.

Per ulteriori informazioni, consulta Esempio: assegnazione di tag alle risorse.

Per ulteriori informazioni sul tagging delle risorse per la fatturazione, vedere Monitoraggio dei costi con i tag di allocazione dei costi.

Le seguenti regole si applicano alle etichette come parte delle operazioni di richiesta:

  • CreateReplicationGroup:

    • Se il file --primary-cluster-id e --tags sono inclusi nella richiesta, i tag di richiesta verranno aggiunti al gruppo di replica e propagati a tutti i cluster di cache nel gruppo di replica. Se il cluster di cache primario dispone di tag esistenti, questi verranno sovrascritti con i tag di richiesta per avere tag coerenti in tutti i nodi.

      Se non sono presenti tag di richiesta, i tag cluster di cache primaria verranno aggiunti al gruppo di replica e propagati a tutti i cluster di cache.

    • Se si specifica --snapshot-name o --serverless-cache-snapshot-name:

      Se i tag sono inclusi nella richiesta, il gruppo di replica viene contrassegnato solo con tali tag. Se nella richiesta non sono inclusi tag, i tag dello snapshot vengono aggiunti al gruppo di replica.

    • Se il file --global-replication-group-id viene fornito:

      Se i tag sono inclusi nella richiesta, i tag della richiesta vengono aggiunti al gruppo di replica e propagati a tutti i cluster di cache.

  • CreateCacheCluster :

    • Se il file --replication-group-id viene fornito:

      Se i tag sono inclusi nella richiesta, il cluster di cache verrà contrassegnato solo con tali tag. Se nella richiesta non sono inclusi tag, il cluster di cache erediterà i tag del gruppo di replica anziché i tag del cluster di cache primario.

    • Se il file --snapshot-name viene fornito:

      Se i tag sono inclusi nella richiesta, il cluster di cache verrà contrassegnato solo con tali tag. Se nella richiesta non sono inclusi tag, i tag snapshot verranno aggiunti al cluster di cache.

  • CreateServerlessCache :

    • Se i tag sono inclusi nella richiesta, solo i tag della richiesta vengono aggiunti alla cache serverless.

  • CreateSnapshot :

    • Se il file --replication-group-id viene fornito:

      Se i tag sono inclusi nella richiesta, solo i tag di richiesta verranno aggiunti allo snapshot. Se nella richiesta non sono inclusi tag, i tag del gruppo di replica verranno aggiunti allo snapshot.

    • Se il file --cache-cluster-id viene fornito:

      Se i tag sono inclusi nella richiesta, solo i tag di richiesta verranno aggiunti allo snapshot. Se nella richiesta non sono inclusi tag, i tag cluster di cache verranno aggiunti allo snapshot.

    • Snapshot automatiche

      I tag verranno propagati dai tag del gruppo di replica.

  • CreateServerlessCacheSnapshot :

    • Se i tag sono inclusi nella richiesta, solo i tag della richiesta vengono aggiunti allo snapshot della cache serverless.

  • CopySnapshot :

    • Se i tag sono inclusi nella richiesta, solo i tag di richiesta verranno aggiunti allo snapshot. Se nella richiesta non sono inclusi tag, i tag snapshot di fonte verranno aggiunti allo snapshot copiato.

  • CopyServerlessCacheSnapshot :

    • Se i tag sono inclusi nella richiesta, solo i tag della richiesta vengono aggiunti allo snapshot della cache serverless.

  • AddTagsToResourcee: RemoveTagsFromResource

    • I tag verranno aggiunti/rimossi dal gruppo di replica e l'operazione verrà propagata a tutti i cluster del gruppo di replica.

    Nota

    AddTagsToResourcee RemoveTagsFromResourcenon può essere utilizzato per parametri e gruppi di sicurezza predefiniti.

  • IncreaseReplicaCounte ModifyReplicationGroupShardConfiguration:

    • A tutti i nuovi cluster aggiunti al gruppo di replica vengono applicati gli stessi tag del gruppo di replica.

Si applicano le seguenti limitazioni di base ai tag:

  • Numero massimo di tag per risorsa: 50

  • Per ciascuna risorsa, ogni chiave del tag deve essere univoca e ogni chiave del tag può avere un solo valore.

  • Lunghezza massima della chiave: 128 caratteri Unicode in UTF -8.

  • Lunghezza massima del valore: 256 caratteri Unicode in UTF -8.

  • Sebbene ElastiCache consenta qualsiasi carattere nei tag, altri servizi possono essere restrittivi. I caratteri consentiti in tutti i servizi sono: lettere, numeri e spazi rappresentabili in UTF -8 e i seguenti caratteri: + - =. _:/@

  • Per le chiavi e i valori dei tag viene fatta la distinzione tra maiuscole e minuscole.

  • Il aws: prefisso è riservato all'uso AWS . Se il tag ha una chiave di tag con questo prefisso, non puoi modificare o eliminare la chiave o il valore de tag. I tag con il prefisso aws: non vengono conteggiati per il limite del numero di tag per risorsa.

Non puoi interrompere, arrestare o eliminare una risorsa solo sulla base dei relativi tag. Devi specificare il relativo identificatore. Ad esempio, per eliminare gli snapshot associato a una chiave di tag denominata DeleteMe, devi utilizzare l'operazione DeleteSnapshot con gli identificatori di risorsa degli snapshot, ad esempio snap-1234567890abcdef0.

Per ulteriori informazioni sulle ElastiCache risorse che puoi taggare, consultaRisorse cui è possibile associare tag.

  • Creazione di una cache serverless utilizzando i tag. Questo esempio utilizza Memcached come motore.

    aws elasticache create-serverless-cache \ --serverless-cache-name CacheName \ --engine memcached --tags Key="Cost Center", Value="1110001" Key="project",Value="XYZ"
  • Aggiunta di tag a una cache serverless

    aws elasticache add-tags-to-resource \ --resource-name arn:aws:elasticache:us-east-1:111111222233:serverlesscache:my-cache \ --tags Key="project",Value="XYZ" Key="Elasticache",Value="Service"
  • Aggiunta di tag a un gruppo di replica.

    aws elasticache add-tags-to-resource \ --resource-name arn:aws:elasticache:us-east-1:111111222233:replicationgroup:my-rg \ --tags Key="project",Value="XYZ" Key="Elasticache",Value="Service"
  • Creazione di un cluster di cache con i tag.

    aws elasticache create-cache-cluster \ --cluster-id testing-tags \ --cluster-description cluster-test \ --cache-subnet-group-name test \ --cache-node-type cache.t2.micro \ --engine valkey \ --tags Key="project",Value="XYZ" Key="Elasticache",Value="Service"
  • Creazione di un cluster di cache con i tag. Questo esempio utilizza Redis come motore.

    aws elasticache create-cache-cluster \ --cluster-id testing-tags \ --cluster-description cluster-test \ --cache-subnet-group-name test \ --cache-node-type cache.t2.micro \ --engine valkey \ --tags Key="project",Value="XYZ" Key="Elasticache",Value="Service"
  • Creazione di uno snapshot serverless con tag Questo esempio utilizza Memcached come motore.

    aws elasticache create-serverless-cache-snapshot \ --serverless-cache-name testing-tags \ --serverless-cache-snapshot-name bkp-testing-tags-scs \ --tags Key="work",Value="foo"
  • Esempio: creazione di uno snapshot con tag

    Le istantanee sono attualmente disponibili solo per Redis. In questo caso, se si aggiungono tag su richiesta, anche se il gruppo di replica contiene tag, lo snapshot riceverà solo i tag di richiesta.

    aws elasticache create-snapshot \ --replication-group-id testing-tags \ --snapshot-name bkp-testing-tags-rg \ --tags Key="work",Value="foo"
  1. Consentire AddTagsToResource l'azione su un cluster solo se il cluster ha il tag Project=. XYZ

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticache:AddTagsToResource", "Resource": [ "arn:aws:elasticache:*:*:cluster:*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Project": "XYZ" } } } ] }
  2. Consentire l’operazione RemoveTagsFromResource da un gruppo di replica se contiene i tag progetto e servizio e le chiavi sono diverse da Project e Service.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticache:RemoveTagsFromResource", "Resource": [ "arn:aws:elasticache:*:*:replicationgroup:*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Service": "Elasticache", "aws:ResourceTag/Project": "XYZ" }, "ForAnyValue:StringNotEqualsIgnoreCase": { "aws:TagKeys": [ "Project", "Service" ] } } } ] }
  3. Consentire AddTagsToResource a qualsiasi risorsa solo se i tag sono diversi da progetto e servizio.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticache:AddTagsToResource", "Resource": [ "arn:aws:elasticache:*:*:*:*" ], "Condition": { "ForAnyValue:StringNotEqualsIgnoreCase": { "aws:TagKeys": [ "Service", "Project" ] } } } ] }
  4. Negare l’operazione CreateReplicationGroup se la richiesta ha Tag Project=Foo.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "elasticache:CreateReplicationGroup", "Resource": [ "arn:aws:elasticache:*:*:replicationgroup:*" ], "Condition": { "StringEquals": { "aws:RequestTag/Project": "Foo" } } } ] }
  5. Negare CopySnapshot l'azione se lo snapshot di origine ha il tag Project= XYZ e il tag di richiesta è Service=Elasticache.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "elasticache:CopySnapshot", "Resource": [ "arn:aws:elasticache:*:*:snapshot:*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Project": "XYZ", "aws:RequestTag/Service": "Elasticache" } } } ] }
  6. Rifiuto dell’azione CreateCacheCluster se il tag della richiesta Project manca o è diverso da Dev, QA o Prod.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticache:CreateCacheCluster" ], "Resource": [ "arn:aws:elasticache:*:*:parametergroup:*", "arn:aws:elasticache:*:*:subnetgroup:*", "arn:aws:elasticache:*:*:securitygroup:*", "arn:aws:elasticache:*:*:replicationgroup:*" ] }, { "Effect": "Deny", "Action": [ "elasticache:CreateCacheCluster" ], "Resource": [ "arn:aws:elasticache:*:*:cluster:*" ], "Condition": { "Null": { "aws:RequestTag/Project": "true" } } }, { "Effect": "Allow", "Action": [ "elasticache:CreateCacheCluster", "elasticache:AddTagsToResource" ], "Resource": "arn:aws:elasticache:*:*:cluster:*", "Condition": { "StringEquals": { "aws:RequestTag/Project": [ "Dev", "Prod", "QA" ] } } } ] }

Per informazioni correlate sulle chiavi di condizione, consulta Utilizzo delle chiavi di condizione.