Verwalten von AWS SQS-Warteschlangen mit aws-cli

Sie können SQS-Operationen wie das Auflisten, Erstellen und Löschen von Warteschlangen sowie das Senden und Empfangen von Nachrichten von Ihrem Terminal aus mit aws-cli durchführen. In diesem Artikel sehen wir uns die Befehle an, mit denen diese Art von Operationen durchgeführt werden können. Bevor wir fortfahren, wird vorausgesetzt, dass Sie mit AWS SQS Queue vertraut sind.

Um im Detail über die für aws-cli verfügbaren Optionen Bescheid zu wissen, besuchen Sie die offizielle Dokumentation hier.

Vorraussetzungen

  1. AWS-Konto (Erstellen Sie es, wenn Sie noch keines haben).
  2. Grundlegendes Verständnis von SQS Queues (Klicken Sie hier, umzu lernen, wie man eine SQS Queue mit Terraform erstellt).
  3. AWS IAM-Benutzer mit der zugehörigenAmazonSQSFullAccess-Richtlinie und seinen Zugriffs- und Geheimschlüsseln (Klicken Sie hier, um zu lernen, wie man einenIAM-Benutzer erstellt).
  4. AWS CLI, installiert auf Ihrem lokalen Rechner.

Was müssen wir tun?

  1. Prüfen Sie aws cli und exportieren Sie den AWS-Zugangs- und Geheimschlüssel auf Ihrem lokalen Rechner.
  2. Verwalten Sie SNS-Themen mit aws cli.

Prüfen Sie aws cli und exportieren Sie den aws access & secret key auf Ihrem lokalen Rechner.

Wenn Sie den aws-cli nicht haben, lesen Sie die offizielle Dokumentation hier, um ihn auf Ihrem lokalen Rechner zu installieren und dann die Version mit dem folgenden Befehl zu überprüfen.

aws --version

Wenn Sie den folgenden Befehl ausführen, erhalten Sie einen Fehler, da Sie den Zugriff auf Ihr AWS-Konto im Terminal nicht konfiguriert haben.

aws sts get-caller-identity

Exportieren Sie den AWS IAM-Benutzerzugang und die geheimen Schlüssel auf Ihrem Terminal mit den folgenden Befehlen.

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

Diesmal können Sie Ihre Identität überprüfen, indem Sie den folgenden Befehl ausführen

aws sts get-caller-identity

Verwalten von SQS-Warteschlangen mit aws-cli

Auflisten aller Queues, die in Ihrer aktuellen Region verfügbar sind

aws sqs list-queues

Sie können auch Queues mit passendem Präfix auflisten

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

Liste Warteschlange

Um eine SQS-Queue zu erstellen, führen Sie den folgenden Befehl aus.

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

Man kann auch Tags anhängen, während man eine Queue erstellt.

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

Warteschlangen erstellen

Sie können beim Erstellen einer Warteschlange auch Attribute angeben. Um eine Warteschlange mit dem Attribut DelaySeconds zu erstellen, führen Sie den folgenden Befehl aus.

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

Prüfen Sie alle Attribute, die eine Warteschlange hat.

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

Prüfen Sie ein bestimmtes Attribut, das eine Warteschlange hat, in diesem Fall wird der Wert von DelaySeconds vom Befehl zurückgegeben.

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

Warteschlangen-Attribute abrufen

Senden und empfangen Sie eine Nachricht an/von der Warteschlange.

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

Senden und Empfangen einer Nachricht

Sie können die Anzahl der Nachrichten im SQS Dashboard überprüfen.

Anzahl der Meldungen in der Konsole prüfen

Wenn Sie Nachrichten aus der Warteschlange löschen möchten, können Sie die Warteschlange bereinigen

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

Löschen Sie die Meldung

Um eine Warteschlange zu löschen, benötigen Sie ihre 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"

Löschen der Warteschlange

Fazit

In diesem Artikel haben wir den Befehl zum Auflisten und Erstellen einer SQS-Warteschlange, zum Senden und Empfangen von Nachrichten an/von ihr und zum Überprüfen ihrer Attribute gesehen. Dies kann eine Anleitung für den Einstieg sein, und jetzt können Sie andere Operationen auf SQS-Warteschlangen selbst erkunden.

Das könnte dich auch interessieren …