Trabajo con etiquetas de parámetros en Parameter Store
Una etiqueta de parámetro es un alias definido por el usuario que ayuda a administrar las distintas versiones de un parámetro. Cuando se modifica un parámetro, AWS Systems Manager guarda automáticamente una versión nueva e incrementa en uno el número de la versión. Un rótulo puede ayudarle a recordar el propósito de una versión de un parámetro cuando hay varias versiones.
Por ejemplo, supongamos que tiene un parámetro llamado /MyApp/DB/ConnectionString
. El valor del parámetro es una cadena de conexión a un servidor MySQL de una base de datos local en un entorno de pruebas. Cuando termine de actualizar la aplicación, desea que el parámetro utilice una cadena de conexión para una base de datos de producción. y cambia el valor de /MyApp/DB/ConnectionString
. Systems Manager crea automáticamente la versión dos con la nueva cadena de conexión. Para recordar mejor el propósito de cada versión, asocie un rótulo a cada parámetro. Para la versión uno, asocie el rótulo Pruebas y para la versión dos, asocie el rótulo Producción.
Puede mover rótulos de una versión de un parámetro a otra. Por ejemplo, si crea la versión tres del parámetro /MyApp/DB/ConnectionString
con una cadena de conexión para una nueva base de datos de producción, puede mover la etiqueta Producción de la versión dos a la versión tres del parámetro.
Los rótulos de los parámetros son una alternativa ligera a las etiquetas de los parámetros. Puede que su organización tenga unas directrices estrictas para las etiquetas que deben aplicarse a los distintos recursos de AWS. Por el contrario, un rótulo es simplemente una asociación de texto para una versión específica de un parámetro.
Al igual que ocurre con las etiquetas, puede consultar los parámetros mediante el uso de rótulos. Puede ver una lista de las versiones específicas de los parámetros que utilizan la misma etiqueta si consulta el conjunto de parámetros mediante la operación GetParametersByPath de la API, tal y como se describe más adelante en esta sección.
nota
Si ejecuta un comando que especifica una versión de un parámetro que no existe, el comando fallará, ya que no recurre al valor más reciente o predeterminado del parámetro.
Requisitos y restricciones de etiquetas
Los rótulos de los parámetros tienen los siguientes requisitos y restricciones:
-
Una versión de un parámetro puede tener un máximo de 10 rótulos.
-
No se puede asociar el mismo rótulo a distintas versiones del mismo parámetro. Por ejemplo, si la versión 1 del parámetro tiene la etiqueta Producción, no se podrá asociar Producción a la versión 2.
-
Puede mover un rótulo de una versión de un parámetro a otra versión.
-
No puede crear una etiqueta cuando crea un parámetro. Se debe asociar un rótulo a una versión específica de un parámetro.
-
Si ya no desea utilizar una etiqueta de parámetro, puede transferirlo a otra versión de un parámetro o eliminarla.
-
Un rótulo puede tener un máximo de 100 caracteres.
-
Los rótulos pueden contener letras (se distingue entre mayúsculas y minúsculas), números, puntos (.), guiones (-) o guiones bajos (_).
-
Las etiquetas no pueden comenzar por un número, por “aws” ni por “ssm” (no se distingue entre mayúsculas y minúsculas). Si una etiqueta no cumple estos requisitos, la etiqueta no se asocia a la versión del parámetro y el sistema la muestra en la lista
InvalidLabels
.
Temas
Trabajo de etiquetas de parámetros mediante la consola
En esta sección, se describe cómo realizar las siguientes tareas mediante la consola de Systems Manager.
Utilizar la consola para crear una etiqueta de parámetro
El siguiente procedimiento describe cómo asociar una etiqueta a una versión específica de un parámetro existente mediante la consola de Systems Manager. No se puede asociar un rótulo al crear un parámetro.
Para adjuntar una etiqueta a una de un parámetro
Abra la consola de AWS Systems Manager en https://console.aws.amazon.com/systems-manager/
. En el panel de navegación, elija Parameter Store.
-
Elija el nombre de un parámetro para abrir la página de detalles de ese parámetro.
-
Elija la pestaña History (Historial).
-
Elija la versión del parámetro a la que desea asociar un rótulo.
-
Elija Manage labels (Administrar etiquetas).
-
Elija Add new label (Agregar nueva etiqueta).
-
En el cuadro de texto, ingrese el nombre de etiqueta. Para agregar más etiquetas, elija Add new label (Agregar nueva etiqueta). Puede asociar un máximo de diez rótulos.
-
Cuando haya finalizado, elija Save changes (Guardar cambios).
Utilizar la consola para ver etiquetas asociadas a un parámetro
Una versión de un parámetro puede tener un máximo de diez rótulos. El siguiente procedimiento describe cómo ver todas las etiquetas asociadas a una versión de un parámetro mediante la consola de Systems Manager.
Para ver las etiquetas asociadas a la versión de un parámetro
Abra la consola de AWS Systems Manager en https://console.aws.amazon.com/systems-manager/
. En el panel de navegación, elija Parameter Store.
-
Elija el nombre de un parámetro para abrir la página de detalles de ese parámetro.
-
Elija la pestaña History (Historial).
-
Busque la versión de parámetro para la que desea ver todos los rótulos asociados. La columna Labels (Rótulos) muestra todos los rótulos asociados a la versión del parámetro.
Utilizar la consola para mover una etiqueta de parámetro
El siguiente procedimiento describe cómo trasladar una etiqueta de parámetro a otra versión del mismo parámetro mediante la consola de Systems Manager.
Para trasladar una etiqueta a otra versión de un parámetro
Abra la consola de AWS Systems Manager en https://console.aws.amazon.com/systems-manager/
. En el panel de navegación, elija Parameter Store.
-
Elija el nombre de un parámetro para abrir la página de detalles de ese parámetro.
-
Elija la pestaña History (Historial).
-
Elija la versión del parámetro cuyo rótulo desea trasladar.
-
Elija Manage labels (Administrar etiquetas).
-
Elija Add new label (Agregar nueva etiqueta).
-
En el cuadro de texto, ingrese el nombre de etiqueta.
-
Cuando haya finalizado, elija Save changes (Guardar cambios).
Utilizar la consola para eliminar etiquetas de parámetros
En el siguiente procedimiento se describe cómo eliminar una o varias etiquetas de parámetros mediante la consola de Systems Manager.
Para eliminar etiquetas de un parámetro
Abra la consola de AWS Systems Manager en https://console.aws.amazon.com/systems-manager/
. En el panel de navegación, elija Parameter Store.
-
Elija el nombre de un parámetro para abrir la página de detalles de ese parámetro.
-
Elija la pestaña History (Historial).
-
Elija la versión del parámetro cuyas etiquetas desea eliminar.
-
Elija Manage labels (Administrar etiquetas).
-
Elija Remove (Eliminar). Al lado de cada etiqueta que desee eliminar.
-
Cuando haya finalizado, elija Save changes (Guardar cambios).
-
Confirme que los cambios son correctos, ingrese
Confirm
en el cuadro de texto y elija Confirm (Confirmar).
Trabajo con etiquetas de parámetros mediante la AWS CLI
En esta sección, se describe cómo realizar las siguientes tareas mediante la AWS Command Line Interface (AWS CLI).
Utilizar la AWS CLI para crear una etiqueta de parámetro nueva
El siguiente procedimiento describe cómo asociar un rótulo a una versión específica de un parámetro existente mediante la AWS CLI. No se puede asociar un rótulo al crear un parámetro.
Para crear una etiqueta de parámetro
Si aún no lo ha hecho, instale y configure la AWS Command Line Interface (AWS CLI).
Para obtener más información, consulte Instalación o actualización de la última versión de la AWS CLI.
-
Ejecute el siguiente comando para ver una lista de parámetros para los que tiene permiso para asociarles una etiqueta.
nota
Los parámetros solo están disponibles en la Región de AWS donde se crearon. Si no ve el parámetro al que desea asociar un rótulo, compruebe la región.
aws ssm describe-parameters
Anote el nombre del parámetro al que desea asociar un rótulo.
-
Ejecute el siguiente comando para ver todas las versiones del parámetro.
aws ssm get-parameter-history --name "
parameter-name
"Anote la versión del parámetro a la que desea asociar un rótulo.
-
Ejecute el siguiente comando para recuperar información sobre un parámetro por número de versión.
aws ssm get-parameters --names "
parameter-name
:version-number
"A continuación se muestra un ejemplo.
aws ssm get-parameters --names "/Production/SQLConnectionString:3"
-
Ejecute uno de los siguientes comandos para asociar una etiqueta a una versión de un parámetro. Si asocia varias etiquetas, separe los nombres mediante espacios.
Asociación de un rótulo a la versión más reciente de un parámetro
aws ssm label-parameter-version --name
parameter-name
--labelslabel-name
Asociación de un rótulo a una versión específica de un parámetro
aws ssm label-parameter-version --name
parameter-name
--parameter-versionversion-number
--labelslabel-name
Estos son algunos ejemplos.
aws ssm label-parameter-version --name /config/endpoint --labels production east-region finance
aws ssm label-parameter-version --name /config/endpoint --parameter-version 3 --labels MySQL-test
nota
Si la salida muestra la etiqueta que creó en la lista
InvalidLabels
, significa que la etiqueta no cumple los requisitos descritos anteriormente en este tema. Examine los requisitos e inténtelo de nuevo. Si la listaInvalidLabels
está vacía, significa que el rótulo se ha aplicado correctamente a la versión del parámetro. -
Puede ver los detalles del parámetro mediante un número de versión o un nombre de rótulo. Ejecute el siguiente comando y especifique la etiqueta que ha creado en el paso anterior.
aws ssm get-parameter --name
parameter-name
:label-name
--with-decryptionEl comando devuelve información similar a la siguiente.
{ "Parameter": { "Version":
version-number
, "Type": "parameter-type
", "Name": "parameter-name
", "Value": "parameter-value
", "Selector": ":label-name
" } }nota
Selector en la salida es el número de versión o el rótulo que ha especificado en el campo de entrada
Name
.
Utilizar la AWS CLI para ver las etiquetas de un parámetro
Puede utilizar la operación GetParameterHistory de la API para ver el historial completo y todas las etiquetas asociadas a un parámetro determinado. También puede utilizar la operación GetParametersByPath de la API para ver una lista de todos los parámetros que tienen asignada una etiqueta determinada.
Para ver las etiquetas de un parámetro mediante la operación GetParameterHistory de la API
-
Ejecute el siguiente comando para ver la lista de los parámetros cuyas etiquetas puede ver.
nota
Los parámetros solo están disponibles en la región donde se crearon. Si no ve el parámetro cuyos rótulos desea ver, compruebe la región.
aws ssm describe-parameters
Anote el nombre del parámetro del que desea ver las etiquetas.
-
Ejecute el siguiente comando para ver todas las versiones del parámetro.
aws ssm get-parameter-history --name
parameter-name
--with-decryptionEl sistema devuelve información similar a la siguiente.
{ "Parameters": [ { "Name": "/Config/endpoint", "LastModifiedDate": 1528932105.382, "Labels": [ "Deprecated" ], "Value": "MyTestService-June-Release.example.com", "Version": 1, "LastModifiedUser": "arn:aws:iam::123456789012:user/test", "Type": "String" }, { "Name": "/Config/endpoint", "LastModifiedDate": 1528932111.222, "Labels": [ "Current" ], "Value": "MyTestService-July-Release.example.com", "Version": 2, "LastModifiedUser": "arn:aws:iam::123456789012:user/test", "Type": "String" } ] }
Utilizar la AWS CLI para ver una lista de parámetros asignados a una etiqueta
Puede utilizar la operación GetParametersByPath de la API para ver una lista de todos los parámetros de una ruta que tienen asignada una etiqueta determinada.
Ejecute el siguiente comando para ver una lista de los parámetros de una ruta que tienen asignada una etiqueta determinada. Reemplace cada example resource placeholder
con su propia información.
aws ssm get-parameters-by-path \ --path
parameter-path
\ --parameter-filters Key=Label,Values=label-name
,Option=Equals \ --max-resultsa-number
\ --with-decryption --recursive
El sistema devuelve información similar a la siguiente. En este ejemplo, el usuario buscó en la ruta /Config
.
{ "Parameters": [ { "Version": 3, "Type": "SecureString", "Name": "/Config/DBpwd", "Value": "MyS@perGr&pass33" }, { "Version": 2, "Type": "String", "Name": "/Config/DBusername", "Value": "TestUserDB" }, { "Version": 2, "Type": "String", "Name": "/Config/endpoint", "Value": "MyTestService-July-Release.example.com" } ] }
Utilizar la AWS CLI para mover una etiqueta de parámetro
El siguiente procedimiento describe cómo trasladar un rótulo de parámetro a otra versión del mismo parámetro.
Para trasladar un rótulo de parámetro
-
Ejecute el siguiente comando para ver todas las versiones del parámetro. Reemplace el
nombre del parámetro
con su propia información.aws ssm get-parameter-history \ --name "
parameter name
"Tenga en cuenta las versiones de parámetros a las que desea mover la etiqueta.
-
Ejecute el siguiente comando para asignar una etiqueta existente a otra versión de un parámetro. Reemplace cada
example resource placeholder
con su propia información.aws ssm label-parameter-version \ --name
parameter name
\ --parameter-versionversion number
\ --labelsname-of-existing-label
nota
Si desea mover un rótulo existente a la versión más reciente de un parámetro, elimine
--parameter-version
del comando.
Utilizar la AWS CLI para eliminar etiquetas de parámetros
En el siguiente procedimiento se describe cómo eliminar etiquetas de parámetros mediante la AWS CLI.
Para eliminar una etiqueta de parámetro
-
Ejecute el siguiente comando para ver todas las versiones del parámetro. Reemplace el
nombre del parámetro
con su propia información.aws ssm get-parameter-history \ --name "
parameter name
"El sistema devuelve información similar a la siguiente.
{ "Parameters": [ { "Name": "foo", "DataType": "text", "LastModifiedDate": 1607380761.11, "Labels": [ "l3", "l2" ], "Value": "test", "Version": 1, "LastModifiedUser": "arn:aws:iam::123456789012:user/test", "Policies": [], "Tier": "Standard", "Type": "String" }, { "Name": "foo", "DataType": "text", "LastModifiedDate": 1607380763.11, "Labels": [ "l1" ], "Value": "test", "Version": 2, "LastModifiedUser": "arn:aws:iam::123456789012:user/test", "Policies": [], "Tier": "Standard", "Type": "String" } ] }
Tenga en cuenta la versión del parámetro a la que desea eliminar una o unas etiquetas.
-
Ejecute el siguiente comando para eliminar las etiquetas que elija de ese parámetro. Reemplace cada
example resource placeholder
con su propia información.aws ssm unlabel-parameter-version \ --name
parameter name
\ --parameter-versionversion
\ --labelslabel 1
,label 2
,label 3
El sistema devuelve información similar a la siguiente.
{ "InvalidLabels": ["invalid"], "DeletedLabels" : ["Prod"] }