Skip to content

yandex-cloud-examples/yc-serverless-cloudops-automation

Repository files navigation

Yandex Cloud Serverless CloudOps Automation

Данный репозиторий содержит Terraform модули и примеры с кодом для автоматизации основных задачи управления облачной инфраструктурой. Код может использоваться сам по себе, либо в составе Terraform модуля, который разворачивает необходимые, в зависимости от сценария ресурсы: Cloud Function, триггеры, Yandex Database.

Доступные автоматизации

Функция Каталог Описание Сценарий
Запуск ВМ по таймеру 01-start-vm-cron Автоматический запуск ВМ по расписанию Запуск тестовых ВМ каждое утро в 08:00
Остановка ВМ по таймеру 02-stop-vm-cron Автоматическая остановка ВМ по расписанию Остановка тестовым ВМ каждый вечер в 20:00
Масштабирование группы узлов 03-scale-fixed-ig-cron Масштабирование группы узлов по расписанию Наращивание группы узлов по утрам, уменьшение группы узлов по вечерам
Очистка бакета 04-bucket-clean-up Автоматическая очистка бакетов по расписанию Удаление старых бэкапов или временных файлов по заданному расписанию
Копирование объектов бакета 05-auto-copy-bucket-objects Автоматическое копирование новых объектов между бакетами Object Storage. Практическое руководство. Постоянная репликация между бакетами для резервного копирования
Сохранение логов ALB в YDB 06-alb-logging-to-ydb Сохранение логов Application Load Balancer в YDB. Практическое руководство для PostgreSQL Долговременное хранение логов ALB, анализ логов
Сохранение логов S3 в YDB 07-bucket-logs-to-ydb Сохранение логов бакета Object Storage в YDB Долговременное хранение логов доступа к бакету, анализ логов
Очистка снимков дисков 08-snapshots-clean-up Автоматическое удаление старых снимков дисков по расписанию Удаление снимков дисков старше заданного количества дней для экономии места и средств

Быстрый старт

  1. Склонируйте репозиторий:

    git clone https://github.com/yandex-cloud-examples/yc-serverless-cloudops-automation.git
    cd yc-serverless-cloudops-automation
  2. Выберите сценарий и перейдите в нужный каталог:

    cd 01-start-vm-cron
  3. Скопируйте и заполните переменные:

    cp terraform.tfvars.example terraform.tfvars
    # Edit terraform.tfvars with your values
  4. Разверните при помощи Terraform:

    terraform init
    terraform plan
    terraform apply
  5. Удалить можно следующей командой:

    terraform destroy

Пререквизиты

Настройка

Каждый сценарий содержит следующий набор файлов:

  • variables.tf - Входные переменные
  • terraform.tfvars.example - Пример файла конфигурации для переменных
  • main.tf - Описание создаваемых ресурсов
  • src/ - Код, используемый в функции
  • versions.tf - Конфигурация провайдера

Все сценарии содержат следующие параметры конфигурации провайдера:

  • provider_key_file - путь до авторизованного ключа сервисного аккаунта, созданного ранее
  • cloud_id - Идентификатор облака
  • folder_id - Идентификатор каталога
  • zone - Зона доступности (по умолчанию, ru-central1-a)

About

Библиотека CloudOps автоматизации для Yandex Cloud на базе Serverless.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published