Sie können SQS-Operationen ausführen, z. B. Warteschlangen auflisten, erstellen, löschen und Nachrichten senden sowie Nachrichten von Ihrem Terminal mit aws-cli empfangen. In diesem Artikel werden wir die Befehle zum Ausführen dieser Art von Operationen sehen. Bevor wir fortfahren, wird davon ausgegangen, dass Sie mit der AWS SQS-Warteschlange vertraut sind.
Um mehr über die für aws-cli verfügbaren Optionen zu erfahren, besuchen Sie die offizielle Dokumentation hier.
Voraussetzungen
- AWS-Konto (erstellen wenn Sie noch keins haben).
- Grundlegendes Verständnis von SQS-Warteschlangen (Klicken Sie hier, um zu erfahren, wie Sie eine SQS-Warteschlange mit Terraform erstellen).
- AWS-IAM-Benutzer mit angehängter AmazonSQSFullAccess-Richtlinie und seinen Zugriffs- und Geheimschlüsseln (Klicken Sie hier, um zu erfahren, wie Sie einen IAM-Benutzer erstellen).
- AWS CLI auf Ihrem lokalen Computer installiert.
Was werden wir tun?
- Überprüfen Sie aws CLI und exportieren Sie den AWS-Zugriff und den geheimen Schlüssel auf Ihrem lokalen Computer.
- SNS-Themen mit aws CLI verwalten.
Überprüfen Sie aws cli und exportieren Sie aws access &secret key auf Ihrem lokalen Computer.
Wenn Sie die aws-cli nicht haben, lesen Sie die offizielle Dokumentation hier, um sie auf Ihrem lokalen Computer zu installieren, und überprüfen Sie dann die Version davon mit dem folgenden Befehl.
aws --version
Wenn Sie den folgenden Befehl ausführen, erhalten Sie eine Fehlermeldung, da Sie den Zugriff auf Ihr AWS-Konto im Terminal nicht konfiguriert haben.
aws sts get-caller-identity
Exportieren Sie den AWS IAM-Benutzerzugriff 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
SQS-Warteschlangen mit aws-cli verwalten
Alle in Ihrer aktuellen Region verfügbaren Warteschlangen auflisten
aws sqs list-queues
Sie können auch Warteschlangen mit passendem Präfix auflisten
aws sqs list-queues --queue-name-prefix "rahul"
Führen Sie den folgenden Befehl aus, um eine SQS-Warteschlange zu erstellen.
aws sqs create-queue --queue-name my-sqs-using-cli
Sie können Tags auch anhängen, während Sie eine Warteschlange erstellen.
aws sqs create-queue --queue-name my-sqs-using-cli-with-tag --tags "env"="test"
Beim Erstellen einer Warteschlange können Sie auch Attribute angeben. Um eine Warteschlange mit einem Attribut zu erstellen, führen Sie DelaySeconds den folgenden Befehl aus.
aws sqs create-queue --queue-name my-sqs-using-cli-with-attribute --tags "env"="test" --attributes DelaySeconds=10
Überprü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
Überprü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
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
Sie können die Anzahl der Nachrichten im SQS-Dashboard überprüfen.
Wenn Sie Nachrichten aus der Warteschlange löschen möchten, können Sie die Warteschlange leeren
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
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"
Schlussfolgerung
In diesem Artikel haben wir den Befehl zum Auflisten, Erstellen einer SQS-Warteschlange, Senden und Empfangen von Nachrichten an/von ihr und Überprüfen ihrer Attribute gesehen. Dies kann ein Leitfaden für den Einstieg sein, und jetzt können Sie selbst andere Vorgänge in SQS-Warteschlangen erkunden.