docs: add AWS CLI section + quick_test reference
This commit is contained in:
@@ -12,7 +12,56 @@
|
|||||||
| **Secret Key** | `J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE` |
|
| **Secret Key** | `J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE` |
|
||||||
| **Region** | `us-east-1` (любая) |
|
| **Region** | `us-east-1` (любая) |
|
||||||
|
|
||||||
## Быстрый тест (curl)
|
---
|
||||||
|
|
||||||
|
## AWS CLI
|
||||||
|
|
||||||
|
Самый простой способ работы — через стандартный AWS CLI.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
export AWS_ACCESS_KEY_ID="SQSAK-test001-ae4dc8"
|
||||||
|
export AWS_SECRET_ACCESS_KEY="J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE"
|
||||||
|
export AWS_DEFAULT_REGION="us-east-1"
|
||||||
|
ENDPOINT="--endpoint-url https://sqs.kube5s.ru/sqs/test001"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создать очередь
|
||||||
|
```bash
|
||||||
|
aws sqs create-queue --queue-name myqueue $ENDPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
### Список очередей
|
||||||
|
```bash
|
||||||
|
aws sqs list-queues $ENDPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
### Отправить сообщение
|
||||||
|
```bash
|
||||||
|
aws sqs send-message \
|
||||||
|
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||||
|
--message-body "Hello from CLI!" \
|
||||||
|
$ENDPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
### Получить сообщение
|
||||||
|
```bash
|
||||||
|
aws sqs receive-message \
|
||||||
|
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||||
|
$ENDPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
### Удалить очередь
|
||||||
|
```bash
|
||||||
|
aws sqs delete-queue \
|
||||||
|
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||||
|
$ENDPOINT
|
||||||
|
```
|
||||||
|
|
||||||
|
> **Совет:** `--endpoint-url` — единственное отличие от работы с Amazon SQS. Весь остальной код без изменений.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## curl
|
||||||
|
|
||||||
### Создать очередь
|
### Создать очередь
|
||||||
```bash
|
```bash
|
||||||
@@ -32,6 +81,8 @@ curl -s -u "SQSAK-test001-ae4dc8:J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE" \
|
|||||||
"https://sqs.kube5s.ru/sqs/test001?Action=ReceiveMessage&QueueUrl=https://sqs.kube5s.ru/sqs/test001/test001/myqueue&Version=2012-11-05"
|
"https://sqs.kube5s.ru/sqs/test001?Action=ReceiveMessage&QueueUrl=https://sqs.kube5s.ru/sqs/test001/test001/myqueue&Version=2012-11-05"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Python (boto3)
|
## Python (boto3)
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@@ -57,6 +108,8 @@ msgs = sqs.receive_message(QueueUrl=queue["QueueUrl"])
|
|||||||
print(msgs["Messages"][0]["Body"])
|
print(msgs["Messages"][0]["Body"])
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Node.js (@aws-sdk/client-sqs)
|
## Node.js (@aws-sdk/client-sqs)
|
||||||
|
|
||||||
```js
|
```js
|
||||||
@@ -77,10 +130,46 @@ const res = await sqs.send(new ReceiveMessageCommand({ QueueUrl: queue.QueueUrl
|
|||||||
console.log(res.Messages[0].Body);
|
console.log(res.Messages[0].Body);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Проверка работоспособности
|
||||||
|
|
||||||
|
В репозитории есть `quick_test.sh` — скрипт для быстрой проверки сервиса.
|
||||||
|
|
||||||
|
**Требования:** `curl`, `bash`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash quick_test.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Что проверяет:
|
||||||
|
1. Создание очереди
|
||||||
|
2. Очередь видна в списке
|
||||||
|
3. Отправка сообщения
|
||||||
|
4. Получение сообщения (тело совпадает)
|
||||||
|
5. Удаление очереди
|
||||||
|
6. Очередь исчезла из списка
|
||||||
|
|
||||||
|
Ожидаемый вывод:
|
||||||
|
```
|
||||||
|
=== SQS Quick Test ===
|
||||||
|
|
||||||
|
✅ Создание очереди
|
||||||
|
✅ Очередь в списке
|
||||||
|
✅ Отправка сообщения
|
||||||
|
✅ Получение сообщения
|
||||||
|
✅ Удаление очереди
|
||||||
|
✅ Очередь удалена из списка
|
||||||
|
|
||||||
|
Результат: 6 OK / 0 FAIL
|
||||||
|
Всё работает!
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Особенности
|
## Особенности
|
||||||
|
|
||||||
- Полная совместимость с Amazon SQS API (AWS SDK работает без изменений — только endpoint меняется)
|
- **Полная совместимость с Amazon SQS API** — AWS SDK и CLI работают без изменений, только endpoint меняется
|
||||||
- Физическая изоляция: каждый тенант получает отдельный pod, namespace, диск
|
- **Физическая изоляция** — каждый тенант получает отдельный pod, namespace, диск
|
||||||
- Persistence: данные сохраняются при перезапуске
|
- **Persistence** — данные сохраняются при перезапуске
|
||||||
- Web UI для визуального управления очередями
|
- **Web UI** — визуальное управление очередями
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user