Гид по технологиям

Управление AWS RDS через AWS CLI: создание, снимки и удаление

5 min read Cloud Обновлено 29 Oct 2025
Управление RDS через AWS CLI — создать, снапшот, удалить
Управление RDS через AWS CLI — создать, снапшот, удалить

Кратко: этот материал показывает команды aws-cli для создания и удаления экземпляра RDS MySQL, создания и удаления снапшотов, а также добавления и просмотра тегов. Включены практические примеры команд, рекомендации по безопасности ключей и чек-листы для DevOps и DBA.

Введение

Обложка с логотипом AWS RDS и aws-cli

Вы можете легко создавать и управлять ресурсами Amazon RDS с помощью команд aws-cli. В этой статье показаны команды для создания RDS MySQL-инстанса и создания его снапшота. Также рассмотрены команды для добавления тегов, удаления инстанса и удаления снапшота.

Перечень команд, которые мы разберём:

  1. describe-db-instances — получить детали RDS-инстанса
  2. describe-db-snapshots — получить информацию о снапшотах
  3. describe-db-clusters — получить информацию о кластерах Aurora
  4. create-db-instance — создать RDS-инстанс
  5. add-tags-to-resource — добавить метаданные к ресурсу
  6. list-tags-for-resource — перечислить метаданные ресурса
  7. create-db-snapshot — сделать снапшот инстанса
  8. delete-db-snapshot — удалить существующий снапшот
  9. delete-db-instance — удалить RDS-инстанс

Важно: полная документация по aws-cli для RDS доступна на официальной странице AWS.

Предварительные требования

  1. Учетная запись AWS. Если у вас её нет — создайте.
  2. Базовое понимание AWS RDS.
  3. IAM-пользователь с политикой AdministratorAccess и его access key / secret key. (Создание IAM-пользователя и ключей описано в документации.)
  4. Установленный AWS CLI на локальной машине.

Что мы сделаем

  1. Проверим доступность aws-cli и экспортируем AWS ключи в терминал.
  2. Создадим тестовый RDS-инстанс MySQL, сделаем снапшот, добавим теги и затем удалим ресурсы.

Проверка aws-cli и экспорт ключей в терминал

Начнём с проверки версии aws-cli на локальной машине:

aws --verson #aws-cli/2.0.0 Python/3.8.2 Darwin/19.2.0 botocore/2.0.0dev7

Экспортируем IAM-ключи в терминал (пример для Linux/macOS). Не храните ключи в скриптах в открытом виде.

export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=

Проверим идентичность вызывающего (caller):

aws sts get-caller-identity

Важно: никогда не публикуйте и не передавайте свои access/secret ключи третьим лицам. Используйте роли IAM и ограниченные права для рабочих задач.

Управление RDS через aws-cli — базовые проверки

Проверим, какие ресурсы RDS уже существуют в аккаунте:

aws rds describe-db-instances
aws rds describe-db-snapshots
aws rds describe-db-clusters

Список RDS-инстансов, снапшотов и кластеров

Если ресурсов нет, команды вернут пустые списки.

Создание RDS MySQL-инстанса

Ниже пример создания простого тестового инстанса. Параметры можно подставлять свои: идентификатор, класс инстанса, объём хранилища, логин и пароль. Пароль должен быть не короче 8 символов и соответствовать требованиям безопасности.

aws rds create-db-instance --db-instance-identifier my-test-rds-mysql-instance --db-instance-class db.t3.micro --engine mysql --master-username rahul --master-user-password rahul123 --allocated-storage 5

Создание RDS MySQL-инстанса: пример вывода aws-cli

Зайдите в консоль AWS RDS, чтобы проверить состояние создания инстанса.

Проверка RDS-инстанса в консоли AWS

После создания вы можете описать инстанс и увидеть все его параметры и статус:

aws rds describe-db-instances --db-instance-identifier my-test-rds-mysql-instance

Описание RDS-инстанса: вывод команды describe-db-instances

Важно: при создании реального инстанса укажите параметры сети (VPC, subnet group), security group, параметры автоматического бэкапа, multi-AZ и т. д. В этом простом примере они опущены.

Работа с тегами RDS

Добавление тега к ресурсу — стандартный способ пометить окружение или владельца:

aws rds add-tags-to-resource --resource-name  --tags "[{\"Key\": \"Env\",\"Value\": \"Test\"}]"

Проверка тегов:

aws rds list-tags-for-resource --resource-name 

Добавление и просмотр тегов для RDS

Совет: используйте теги для автоматизации (CI/CD), биллинга и политики безопасности.

Создание и описание снапшота

Чтобы создать снапшот существующего инстанса:

aws rds create-db-snapshot --db-instance-identifier my-test-rds-mysql-instance --db-snapshot-identifier my-test-snapshot

Вы можете проверить статус снапшота:

aws rds describe-db-snapshots --db-snapshot-identifier my-test-snapshot

Создание и описание снапшота RDS

Или посмотрите снапшоты в консоли AWS RDS.

Просмотр снапшота в консоли AWS RDS

Удаление ресурсов

Если вы создавали тестовые ресурсы, не забудьте их удалить, чтобы не платить за них дальше.

Сначала удалим снапшот:

aws rds delete-db-snapshot --db-snapshot-identifier my-test-snapshot

Затем удалим инстанс. Если хотите избежать финального снапшота, укажите –skip-final-snapshot. В противном случае система предложит создать финальный снапшот перед удалением.

aws rds delete-db-instance --db-instance-identifier my-test-rds-mysql-instance --skip-final-snapshot

Удаление RDS-инстанса и снапшота

Проверяем отсутствие ресурсов:

aws rds describe-db-snapshots
aws rds describe-db-instances

Проверка после удаления ресурсов

Полезные советы по безопасности и управлению ключами

  • Никогда не храните AWS ключи в репозиториях. Используйте aws-vault, профиль с MFA или IAM-роли для EC2/Lambda.
  • Ограничивайте права IAM принципом наименьших привилегий. Для управления конкретными RDS-операциями создайте политику с минимальными необходимыми правами.
  • Для резервного копирования и восстановления протестируйте процедуру восстановления из снапшота в отдельном аккаунте или изолированной сети.

Альтернативные подходы

  • Консоль AWS — удобна для однократных операций и визуальной проверки.
  • AWS SDK (Python boto3, JavaScript AWS SDK) — для автоматизации и интеграции с приложениями.
  • Infrastructure as Code (Terraform, CloudFormation) — для декларативного управления инфраструктурой и повторяемости.

Когда указанные команды могут не сработать

  • Нехватка прав IAM: пользователь не имеет нужной политики.
  • Ограничения квот AWS: превышение лимитов инстансов или объёма хранилища.
  • Регион: ресурсы создаются в конкретном регионе; проверьте aws configure или параметр –region.
  • Неправильный ARN при добавлении тегов.

Чек-листы по ролям

DevOps:

  • Убедиться в наличии профиля AWS CLI и прав.
  • Проверить VPC/subnet и security group перед созданием инстанса.
  • Автоматизировать создание снапшотов и ротацию.

DBA:

  • Настроить параметры бэкапа и retention policy.
  • Тестировать восстановление из снапшотов.
  • Контролировать производительность и параметры экземпляра.

Security:

  • Проверить IAM-политики и удалить чрезмерные права.
  • Настроить мониторинг CloudWatch на подозрительную активность.
  • Хранить бэкапы в зашифрованном виде.

Шпаргалка команд (cheat sheet)

  • Показать инстансы: aws rds describe-db-instances
  • Показать снапшоты: aws rds describe-db-snapshots
  • Создать инстанс: aws rds create-db-instance –db-instance-identifier –db-instance-class –engine mysql –master-username –master-user-password –allocated-storage
  • Добавить теги: aws rds add-tags-to-resource –resource-name –tags “[{\”Key\”:\”KeyName\”,\”Value\”:\”Value\”}]”
  • Создать снапшот: aws rds create-db-snapshot –db-instance-identifier –db-snapshot-identifier
  • Удалить снапшот: aws rds delete-db-snapshot –db-snapshot-identifier
  • Удалить инстанс: aws rds delete-db-instance –db-instance-identifier –skip-final-snapshot

Процедура восстановления из снапшота — мини-методология

  1. Найдите идентификатор снапшота: aws rds describe-db-snapshots
  2. Восстановите инстанс из снапшота:
aws rds restore-db-instance-from-db-snapshot --db-instance-identifier restored-instance --db-snapshot-identifier my-test-snapshot
  1. Проверьте статус: aws rds describe-db-instances –db-instance-identifier restored-instance
  2. Присвойте необходимые security group и параметры сети.

Ментальные модели и эвристики

  • «Create, Describe, Tag, Snapshot, Delete» — последовательность операций при работе с тестовыми инстансами.
  • Всегда думайте о стоимости: ненужные инстансы и снапшоты создают расходы.
  • Используйте теги для автоматизации жизненного цикла (например, удалить ресурсы с тегом temp через 24 часа).

Диаграмма принятия решения

flowchart TD
  A[Нужно создать RDS?] -->|Да| B{Это тест или прод?}
  B -->|Тест| C[Использовать простой инстанс db.t3.micro]
  B -->|Прод| D[Выбрать подходящий класс, Multi-AZ, backup windows]
  C --> E[Добавить теги и snapshot policy]
  D --> E
  E --> F{Нужна автоматизация?}
  F -->|Да| G[Использовать Terraform или CloudFormation]
  F -->|Нет| H[Использовать aws-cli или консоль]

Критерии приёмки

  • Инстанс создан и в состоянии available.
  • Снапшот создан и имеет статус available.
  • Теги присутствуют и корректны по ключам/значениям.
  • Ресурсы успешно удаляются без остаточных данных.

Заключение

В этой статье мы рассмотрели базовые команды aws-cli для работы с Amazon RDS: создание MySQL-инстанса, добавление тегов, создание и описание снапшотов, а также удаление ресурсов. Используйте представленный чек-лист и шпаргалку для быстрого старта, а также внедряйте IAM-роли и автоматизацию для безопасной и предсказуемой эксплуатации.

Важно: тестируйте восстановление из снапшотов и применяйте принцип наименьших привилегий в IAM.

Примечания

  • Если вы планируете использовать этот материал в проде, расширьте команды параметрами VPC, subnet, security group и шифрованием.
  • Для сценариев CI/CD рекомендуется переводить команды в скрипты с использованием переменных окружения и ограниченных ролей.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Herodotus: механизм и защита Android‑трояна
Кибербезопасность

Herodotus: механизм и защита Android‑трояна

Включить новое меню «Пуск» в Windows 11
Windows руководство

Включить новое меню «Пуск» в Windows 11

Панель полей сводной таблицы в Excel — руководство
Excel

Панель полей сводной таблицы в Excel — руководство

Включить новое меню «Пуск» в Windows 11
Windows 11

Включить новое меню «Пуск» в Windows 11

Дубликаты Диспетчера задач в Windows 11 — как исправить
Windows

Дубликаты Диспетчера задач в Windows 11 — как исправить

История просмотров Reels в Instagram — как найти
Instagram

История просмотров Reels в Instagram — как найти