Gestionar las colas de AWS SQS con aws-cli

Puedes realizar operaciones en SQS como listar, crear, eliminar colas y enviar mensajes, recibir mensajes desde tu terminal utilizando aws-cli. En este artículo, veremos los comandos para realizar este tipo de operaciones. Antes de continuar, se supone que estás familiarizado con las Colas de AWS SQS.

Para conocer en detalle las opciones disponibles para aws-cli, visita la documentación oficial aquí.

Requisitos previos

  1. Cuenta de AWS(Créala si no tienes una).
  2. Conocimiento básico de las Colas SQS (Haz clic aquí para aprender a crear una Cola SQS utilizando Terraform).
  3. Usuario IAM de AWS con la política AmazonSQSFullAccess asociada a él y sus claves de acceso y secretas (Haz clic aquí para aprender a crear un usuario IAM).
  4. AWS CLI instalado en tu máquina local.

¿Qué vamos a hacer?

  1. Comprueba aws cli y exporta la clave de acceso y secreta de AWS en tu máquina local.
  2. Gestiona los Temas SNS con aws cli.

Comprueba aws cli y exporta la clave de acceso y secreta de aws en tu máquina local.

Si no tienes el aws-cli entonces consulta la documentación oficial aquí para instalarlo en tu máquina local y luego comprueba la versión del mismo utilizando el siguiente comando.

aws --version

Si ejecutas el siguiente comando, obtendrás un error ya que no has configurado el acceso a tu cuenta de AWS en el terminal.

aws sts get-caller-identity

Exporta el acceso del usuario de AWS IAM y las claves secretas en tu terminal utilizando los siguientes comandos.

export AWS_ACCESS_KEY_ID=<aws-user-access-key>
export AWS_SECRET_ACCESS_KEY=<aws-user-secret-key>

Esta vez, puedes comprobar tu identidad ejecutando el siguiente comando

aws sts get-caller-identity

Gestiona las colas SQS con aws-cli

Lista todas las colas disponibles en tu región actual

aws sqs list-queues

También puedes listar las colas con el prefijo correspondiente

aws sqs list-queues --queue-name-prefix "rahul"

Cola de la lista

Para crear una cola SQS, ejecuta el siguiente comando.

aws sqs create-queue --queue-name my-sqs-using-cli

También puedes adjuntar etiquetas mientras creas una Cola.

aws sqs create-queue --queue-name my-sqs-using-cli-with-tag --tags "env"="test"

Crear colas

También se pueden especificar atributos mientras se crea una Cola, para crear una Cola con un atributo RetrasoSegundos ejecuta el siguiente comando.

aws sqs create-queue --queue-name my-sqs-using-cli-with-attribute --tags "env"="test" --attributes DelaySeconds=10

Comprueba todos los atributos que tiene una Cola.

aws sqs get-queue-attributes --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli-with-attribute --attribute-names All

Comprueba un atributo específico que tenga una Cola, en este caso, el valor del RetrasoSegundos será devuelto por el comando.

aws sqs get-queue-attributes --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli-with-attribute --attribute-names DelaySeconds

Obtener atributos de la cola

Deja» enviar y recibir un mensaje a/de la Cola.

aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli --message-body "Test message to my-sqs-using-cli sqs"
aws sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli

Enviar y recibir un mensaje

Puedes comprobar el recuento de mensajes en el Panel SQS.

Comprueba el recuento de mensajes en la consola

Si quieres eliminar mensajes de la Cola, puedes purgar la Cola

sqs purge-queue --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli
sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/my-sqs-using-cli

Purgar el mensaje

Para eliminar una Cola, necesitarás su URL.

aws sqs list-queues --queue-name-prefix "rahul"
aws sqs delete-queue --queue-url https://sqs.us-east-1.amazonaws.com/<aws-account-number>/rahul-test
aws sqs list-queues --queue-name-prefix "rahul"

Eliminar la cola

Conclusión

En este artículo, hemos visto el comando para Listar, Crear una Cola SQS, enviar y recibir mensajes a/desde ella y comprobar sus atributos. Esto puede ser una guía para empezar y ahora puedes explorar otras operaciones en las colas SQS por tu cuenta.

También te podría gustar...