No description
Find a file
2025-11-26 16:55:27 +03:00
code feat: add nginx 2025-11-26 16:55:27 +03:00
docs doc: add arch 2025-11-26 16:40:00 +03:00
nginx feat: add nginx 2025-11-26 16:55:27 +03:00
.gitignore feat: add terraform code 2025-11-26 16:27:52 +03:00
README.md feat: add terraform code 2025-11-26 16:27:52 +03:00

Тестовое задание: Веб-сервис в AWS + настройка Nginx на Linux

Цель

Создать минимально отказоустойчивую и безопасную инфраструктуру для простого веб-сервиса в AWS и развернуть этот сервис на Linux-сервере с использованием Nginx.


Описание задания

1. Облачная часть (AWS)

  • Развернуть серверное окружение в AWS.
  • Обеспечить доступ к веб-сервису через балансировщик нагрузки (например, ALB).
  • Разместить Linux-серверы в приватной сети — без доступа напрямую из интернета.
  • Продумать и реализовать безопасный вариант доступа к серверам для администрирования.
  • Настроить механизм автоматического восстановления.

2. Linux-сервер с Nginx

  • Установить и настроить Nginx в качестве веб-сервера.
  • Реализовать endpoint /health, который возвращает статус "OK" (или аналогичный ответ).
  • Настроить ведение логов веб-сервера в отдельную директорию с ротацией.
  • Кратко описать, как бы вы организовали мониторинг и оповещения.

3. Документация и размышления

Все рассуждения, схемы и пошаговые инструкции оформить в README.md и включить:

  • Описание вашей архитектуры и аргументы выбора конкретных решений.
  • Схему архитектуры.
  • Шаги развертывания и проверки работы.
  • Список компромиссов/упрощений и возможных улучшений для production-среды.

Что предоставить

  • Ссылку на репозиторий с вашим решением:
    • Инфраструктура.
    • Конфигурации/скрипты для Nginx.
    • README.md с архитектурным описанием и инструкциями.
  • (При наличии) Скрипты проверок, автоматизация, дополнительные материалы.

Что оценивается:

  • Способность рационально проектировать инфраструктуру в AWS.
  • Знание Linux и Nginx на практическом уровне.
  • Умение думать о безопасности, отказоустойчивости, надёжности и автоматизации.
  • Умение ясно объяснять выбранные решения.