Administre las colas de AWS SQS con aws-cli

Puede realizar operaciones en SQS como listar, crear, eliminar colas y enviar mensajes, recibir mensajes desde su terminal usando aws-cli. En este artículo veremos los comandos para realizar este tipo de operaciones. Antes de continuar, se supone que está familiarizado con AWS SQS Queue.
Para conocer en detalle las opciones disponibles para aws-cli, visite la documentación oficial aquí.
requisitos previos
- Cuenta AWS (Crear si no tienes uno).
- Comprensión básica de las colas de SQS (haga clic aquí para aprender a crear una cola de SQS con Terraform).
- Usuario de AWS IAM con AmazonSQSFullAccess política adjunta y sus claves secretas y de acceso (Haga clic aquí para obtener información sobre cómo crear un usuario de IAM).
- AWS CLI instalado en su máquina local.
¿Que haremos?
- Verifique aws cli y exporte la clave secreta y de acceso de AWS en su máquina local.
- Administre temas de SNS mediante aws cli.
Verifique aws cli y exporte el acceso aws y la clave secreta en su máquina local.
Si no tiene aws-cli, consulte la documentación oficial aquí para instalarlo en su máquina local y luego verifique la versión usando el siguiente comando.
aws --version
Si ejecuta el siguiente comando, obtendrá un error ya que no ha configurado el acceso a su cuenta de AWS en la terminal.
aws sts get-caller-identity
Exporte el acceso de usuario de AWS IAM y las claves secretas en su 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, puede verificar su identidad ejecutando el siguiente comando
aws sts get-caller-identity
Administre las colas de SQS con aws-cli
Enumere todas las colas disponibles en su región actual
aws sqs list-queues
También puede enumerar colas con prefijo coincidente
aws sqs list-queues --queue-name-prefix "rahul"
Para crear una cola SQS, ejecute el siguiente comando.
aws sqs create-queue --queue-name my-sqs-using-cli
También puede adjuntar etiquetas mientras crea una cola.
aws sqs create-queue --queue-name my-sqs-using-cli-with-tag --tags "env"="test"
También se pueden especificar atributos al crear una Cola, para crear una Cola con un atributo DelaySeconds ejecute el siguiente comando.
aws sqs create-queue --queue-name my-sqs-using-cli-with-attribute --tags "env"="test" --attributes DelaySeconds=10
Verifica 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
Verifique un atributo específico que tenga una Cola, en este caso, el comando devolverá el valor de DelaySeconds.
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
Vamos a enviar y recibir un mensaje hacia/desde 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
Puede comprobar el recuento de mensajes en el panel de control de SQS.
Si desea eliminar mensajes de la Cola, puede 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
Para eliminar una cola, necesitará 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"
Conclusión
En este artículo, vimos el comando Listar, Crear una cola SQS, enviar y recibir mensajes hacia/desde ella y verificar sus atributos. Esta puede ser una guía para comenzar y ahora puede explorar otras operaciones en las colas de SQS por su cuenta.