Etiquetar sus recursos ElastiCache - Amazon ElastiCache

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Etiquetar sus recursos ElastiCache

Para ayudarte a administrar tus clústeres y otros ElastiCache recursos, puedes asignar tus propios metadatos a cada recurso en forma de etiquetas. Las etiquetas te permiten clasificar AWS los recursos de diferentes maneras, por ejemplo, por propósito, propietario o entorno. Esto es útil cuando tiene muchos recursos del mismo tipo: puede identificar rápidamente un recurso específico en función de las etiquetas que le haya asignado. En este tema se describe qué son las etiquetas y cómo crearlas.

aviso

Como práctica recomendada, no debe incluir datos confidenciales en las etiquetas.

Una etiqueta es una etiqueta que se asigna a un AWS recurso. Cada etiqueta está formada por una clave y un valor opcional, ambos definidos por el usuario. Las etiquetas te permiten clasificar AWS los recursos de diferentes maneras, por ejemplo, por propósito o propietario. Por ejemplo, puedes definir un conjunto de etiquetas para los ElastiCache clústeres de tu cuenta que te ayuden a realizar un seguimiento del propietario y el grupo de usuarios de cada instancia.

Recomendamos que idee un conjunto de claves de etiqueta que cumpla sus necesidades para cada tipo de recurso. Mediante el uso de un conjunto coherente de claves de etiquetas, podrá administrar los recursos de más fácilmente. Puede buscar y filtrar los recursos en función de las etiquetas que agregue. Para obtener más información acerca de cómo implementar una estrategia eficaz de etiquetado de recursos, consulte el documento técnico de Prácticas recomendadas de etiquetado de AWS.

Las etiquetas no tienen ningún significado semántico ElastiCache y se interpretan estrictamente como una cadena de caracteres. Además, las etiquetas no se asignan a los recursos automáticamente. Puede editar las claves y los valores de las etiquetas y también puede eliminar etiquetas de un recurso en cualquier momento. Puede establecer el valor de una etiqueta en null. Si añade una etiqueta con la misma clave que una etiqueta existente en ese recurso, el nuevo valor sobrescribirá al antiguo. Si elimina un recurso, también se eliminará cualquier etiqueta asignada a dicho recurso. Además, si agrega o elimina etiquetas en un grupo de reproducción, todos los nodos de ese grupo de reproducción también se agregarán o eliminarán sus etiquetas.

Puede trabajar con etiquetas utilizando las AWS Management Console AWS CLI, las y las ElastiCache API.

Si las utilizasIAM, puedes controlar qué usuarios de tu AWS cuenta tienen permiso para crear, editar o eliminar etiquetas. Para obtener más información, consulte Permisos de nivel de recursos.

Puedes etiquetar la mayoría de ElastiCache los recursos que ya existen en tu cuenta. La siguiente tabla enumera los recursos que admiten etiquetas. Si utilizas el AWS Management Console, puedes aplicar etiquetas a los recursos mediante el editor de etiquetas. Algunas pantallas de recursos permiten especificar etiquetas para un recurso al crear dicho recurso; por ejemplo, una etiqueta con una clave de Name (Nombre) y un valor que especifique. En la mayoría de los casos, la consola aplica las etiquetas inmediatamente después de crear el recurso (y no durante la creación del mismo). La consola puede organizar los recursos según la etiqueta de nombre, pero esta etiqueta no tiene ningún significado semántico para el ElastiCache servicio.

Además, algunas acciones de creación de recursos le permiten especificar etiquetas para un recurso al crear dicho recurso. Si no se pueden aplicar etiquetas durante la creación del recurso, el proceso de creación del recurso se revierte. Esto garantiza que los recursos se creen con etiquetas o, de lo contrario, no se creen y que ningún recurso se quede jamás sin etiquetar. Al etiquetar los recursos en el momento de su creación, se eliminar la necesidad de ejecutar scripts de etiquetado personalizados tras la creación del recurso.

Si utilizas Amazon ElastiCache API, the o an AWS CLI AWS SDK, puedes usar el Tags parámetro en la ElastiCache API acción correspondiente para aplicar etiquetas. Son los siguientes:

  • CreateServerlessCache

  • CreateCacheCluster

  • CreateReplicationGroup

  • CopyServerlessCacheSnapshot

  • CopySnapshot

  • CreateCacheParameterGroup

  • CreateCacheSecurityGroup

  • CreateCacheSubnetGroup

  • CreateServerlessCacheSnapshot

  • CreateSnapshot

  • CreateUserGroup

  • CreateUser

  • PurchaseReservedCacheNodesOffering

En la siguiente tabla se describen los ElastiCache recursos que se pueden etiquetar y los recursos que se pueden etiquetar en el momento de la creación utilizando la ElastiCache API AWS CLI, la o una AWS SDK.

Soporte de etiquetado para los recursos ElastiCache
Recurso Admite etiquetas Admite el etiquetado durante la creación
caché sin servidor
parametergroup
securitygroup
subnetgroup
replicationgroup
Clúster
reserved-instance
instantánea de caché sin servidor
instantánea
usuario
usergroup
nota

No puede etiquetar almacenes de datos globales.

Puede aplicar permisos a nivel de recursos basados en etiquetas en sus IAM políticas a las ElastiCache API acciones que admiten el etiquetado en el momento de la creación para implementar un control pormenorizado sobre los usuarios y grupos que pueden etiquetar los recursos en el momento de la creación. Sus recursos se encuentran debidamente protegidos de las etiquetas de creación que se aplican de inmediato a los recursos. Por lo tanto, cualquier permiso de nivel de recursos basado en etiquetas que controle la utilización de recursos es efectivo de inmediato. Se puede realizar un seguimiento y un registro más precisos de los recursos. Puede establecer el etiquetado obligatorio de los nuevos recursos y controlar qué claves y valores de etiquetas se usan en ellos.

Para obtener más información, consulte Ejemplos de etiquetado de recursos.

A fin de obtener más información sobre el etiquetado de recursos para facturación, consulte Monitoreo de costos con etiquetas de asignación de costos.

Las siguientes reglas se aplican al etiquetado como parte de las operaciones de solicitud:

  • CreateReplicationGroup:

    • Si los parámetros --primary-cluster-id y --tags se incluyen en la solicitud, las etiquetas de solicitud se agregarán al grupo de reproducción y se propagarán a todos los clústeres de caché del grupo de reproducción. Si el clúster de caché principal tiene etiquetas existentes, estas se sobrescribirán con las etiquetas de la solicitud para tener etiquetas coherentes en todos los nodos.

      Si no hay etiquetas de la solicitud, las etiquetas de clúster de caché principales se agregarán al grupo de reproducción y se propagarán a todos los clústeres de caché.

    • Si se suministra el --snapshot-name o el --serverless-cache-snapshot-name:

      Si se incluyen etiquetas en la solicitud, el grupo de réplica solo se etiquetará con esas etiquetas. Si no se incluyen etiquetas en la solicitud, las etiquetas de la instantánea se agregarán al grupo de réplica.

    • Si se proporciona el --global-replication-group-id:

      Si se incluyen etiquetas en la solicitud, las etiquetas de solicitud se agregarán al grupo de réplica y se propagarán a todos los clústeres de caché.

  • CreateCacheCluster :

    • Si se proporciona el --replication-group-id:

      Si se incluyen etiquetas en la solicitud, solo se le aplicarán esas etiquetas al clúster de caché. Si no se incluyen etiquetas en la solicitud, el clúster de caché heredará las etiquetas del grupo de reproducción en lugar de las etiquetas del clúster de caché principal.

    • Si se proporciona el --snapshot-name:

      Si se incluyen etiquetas en la solicitud, solo se le aplicarán esas etiquetas al clúster de caché. Si no se incluyen etiquetas en la solicitud, las etiquetas de la instantánea se agregarán al clúster de caché.

  • CreateServerlessCache :

    • Si se incluyen etiquetas en la solicitud, solo las etiquetas de solicitud se agregarán al caché sin servidor.

  • CreateSnapshot :

    • Si se proporciona el --replication-group-id:

      Si no se incluyen etiquetas en la solicitud, las etiquetas de solicitud se agregarán a la instantánea. Si no se incluyen etiquetas en la solicitud, las etiquetas del grupo de reproducción se agregarán a la instantánea.

    • Si se proporciona el --cache-cluster-id:

      Si no se incluyen etiquetas en la solicitud, las etiquetas de solicitud se agregarán a la instantánea. Si no se incluyen etiquetas en la solicitud, las etiquetas del clúster de caché se agregarán a la instantánea.

    • Para las instantáneas automáticas:

      Las etiquetas se propagarán desde las etiquetas de grupo de reproducción.

  • CreateServerlessCacheSnapshot :

    • Si se incluyen etiquetas en la solicitud, solo las etiquetas de solicitud se agregarán a la instantánea de la caché sin servidor.

  • CopySnapshot :

    • Si no se incluyen etiquetas en la solicitud, las etiquetas de solicitud se agregarán a la instantánea. Si no se incluyen etiquetas en la solicitud, las etiquetas de la instantánea fuente se agregarán a la instantánea copiada.

  • CopyServerlessCacheSnapshot :

    • Si se incluyen etiquetas en la solicitud, solo las etiquetas de solicitud se agregarán a la instantánea de la caché sin servidor.

  • AddTagsToResourcey: RemoveTagsFromResource

    • Las etiquetas se agregarán o quitarán del grupo de reproducción y la acción se propagará a todos los clústeres del grupo de reproducción.

    nota

    AddTagsToResourcey RemoveTagsFromResourceno se puede usar para los grupos de parámetros y seguridad predeterminados.

  • IncreaseReplicaCounty ModifyReplicationGroupShardConfiguration:

    • Todos los clústeres nuevos agregados al grupo de réplica tendrán las mismas etiquetas aplicadas que el grupo de réplica.

Se aplican las siguientes restricciones básicas a las etiquetas:

  • Número máximo de etiquetas por recurso: 50

  • Para cada recurso, cada clave de etiqueta debe ser única y solo puede tener un valor.

  • Longitud máxima de la clave: 128 caracteres Unicode en UTF -8.

  • Longitud máxima del valor: 256 caracteres Unicode en UTF -8.

  • Aunque ElastiCache admite cualquier carácter en sus etiquetas, otros servicios pueden ser restrictivos. Los caracteres permitidos en todos los servicios son: letras, números y espacios representables en UTF -8, y los siguientes caracteres: + - =. _:/@

  • Las claves y los valores de las etiquetas distinguen entre mayúsculas y minúsculas.

  • El aws: prefijo está reservado para su AWS uso. Si la etiqueta tiene una clave de etiqueta con este prefijo, no puede editar ni eliminar la clave o el valor de la etiqueta. Las etiquetas que tengan el prefijo aws: no cuentan para el límite de etiquetas por recurso.

No puede terminar, detener ni eliminar un recurso basado únicamente en sus etiquetas; debe especificar el identificador del recurso. Por ejemplo, para eliminar instantáneas que etiquetó con una clave de etiqueta llamada DeleteMe, debe utilizar la acción DeleteSnapshot con los identificadores del recurso de las instantáneas, como snap-1234567890abcdef0.

Para obtener más información sobre ElastiCache los recursos que puede etiquetar, consulteRecursos que se pueden etiquetar.

  • Crear una caché sin servidor mediante etiquetas. En este ejemplo, se utiliza Memcached como motor.

    aws elasticache create-serverless-cache \ --serverless-cache-name CacheName \ --engine memcached --tags Key="Cost Center", Value="1110001" Key="project",Value="XYZ"
  • Adición de etiquetas a una caché sin servidor

    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"
  • Adición de etiquetas a un grupo de reproducción.

    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"
  • Creación de un clúster de caché mediante etiquetas.

    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"
  • Creación de un clúster de caché mediante etiquetas. En este ejemplo, se utiliza Redis como motor.

    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"
  • Creación de una instantánea sin servidor con etiquetas. En este ejemplo, se utiliza Memcached como motor.

    aws elasticache create-serverless-cache-snapshot \ --serverless-cache-name testing-tags \ --serverless-cache-snapshot-name bkp-testing-tags-scs \ --tags Key="work",Value="foo"
  • Creación de una instantánea con etiquetas.

    Actualmente, las instantáneas solo están disponibles para Redis. En este caso, si agrega etiquetas a la solicitud, incluso si el grupo de reproducción contiene etiquetas, la instantánea solo recibirá las etiquetas de la solicitud.

    aws elasticache create-snapshot \ --replication-group-id testing-tags \ --snapshot-name bkp-testing-tags-rg \ --tags Key="work",Value="foo"
  1. Se permite AddTagsToResource la acción en un clúster solo si el clúster tiene la etiqueta Project=. XYZ

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticache:AddTagsToResource", "Resource": [ "arn:aws:elasticache:*:*:cluster:*" ], "Condition": { "StringEquals": { "aws:ResourceTag/Project": "XYZ" } } } ] }
  2. Permitir la acción RemoveTagsFromResource de un grupo de reproducción si contiene las etiquetas Project y Service y las claves son diferentes de Project y 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. Permitir AddTagsToResource a cualquier recurso solo si las etiquetas son diferentes de Project y Service.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "elasticache:AddTagsToResource", "Resource": [ "arn:aws:elasticache:*:*:*:*" ], "Condition": { "ForAnyValue:StringNotEqualsIgnoreCase": { "aws:TagKeys": [ "Service", "Project" ] } } } ] }
  4. Denegar la acción CreateReplicationGroup si la solicitud tiene 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. Se deniega CopySnapshot la acción si la instantánea de origen tiene la etiqueta Project= XYZ y la etiqueta de solicitud es 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. Denegar la acción CreateCacheCluster si la etiqueta de solicitud Project falta o no es igual a 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" ] } } } ] }

Para obtener información relacionada acerca de las claves de condición, consulte Uso de claves de condición.