Тип работы:
Предмет:
Язык работы:


Разработка системы развертывания приложений в облаке

Работа №187513

Тип работы

Дипломные работы, ВКР

Предмет

математика

Объем работы49
Год сдачи2024
Стоимость4500 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
13
Не подходит работа?

Узнай цену на написание


Аннотация 2
ВВЕДЕНИЕ 3
1 Анализ предметной области 5
1.1 Основные концепции и терминология 5
1.2 Обзор существующих решений и технологий в области развертывания
приложений в облаке 7
2 Требования к системе 11
2.1 Функциональные требования 11
2.2 Нефункциональные требования 12
3 Проектирование системы 13
3.1 Обзор технологий и инструментов разработки 13
3.2 Архитектура системы 19
3.3 Разработка схемы развертывания 22
4 Разработка системы 26
4.1 Основные этапы реализации 26
4.2 Детальная информация о работе частей системы 28
5 Тестирование системы 37
5.1 Автоматизация развертывания системы 37
5.2 Развертывание системы у облачного провайдера Selectel 38
5.3 Тестирование функционала системы 41
ЗАКЛЮЧЕНИЕ 43
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 45


В последние десятилетия наблюдается стремительное развитие информационных технологий, что приводит к постоянному изменению и усовершенствованию методов разработки и развертывания программного обеспечения. Одной из ключевых задач при создании программных продуктов является их развертывание и обеспечение стабильной работы в различных средах.
Развертывание приложений — процесс, в ходе которого приложение готовится и запускается на целевой платформе или инфраструктуре для пользователей. Системы развертывания позволяют автоматизировать процессы развертывания, обновления и масштабирования приложений, что является ключевым аспектом для обеспечения бесперебойной работы информационных систем.
Исторически развертывание приложений осуществлялось на локальных серверах, находящихся в инфраструктуре компании. Этот подход требовал значительных затрат на покупку и обслуживание оборудования. В процессе эксплуатации локальных серверов возникали проблемы масштабируемости и высокой стоимости модернизации оборудования, что затрудняло адаптацию к быстро меняющимся требованиям бизнеса.
С развитием интернет-технологий и облачных вычислений появилась возможность переноса вычислительных ресурсов в облачные среды. Одним из ключевых преимуществ облачного развертывания является гибкость и масштабируемость. Облачные платформы позволяют легко и быстро адаптировать ресурсы под текущие потребности бизнеса, что особенно важно в условиях переменных нагрузок.
Было принято решение разработать систему развертывания приложений в облаке. Разрабатываемая система будет иметь ряд преимуществ по сравнению с уже существующими решениями на рынке: повышенные требования безопасности, более гибкая настройка под запросы клиента, специализация для малого и среднего бизнеса. Вышеназванные преимущества будут раскрыты более подробно в следующих разделах работы.
Объект исследования - подходы к развертыванию и оркестрации приложений в облаке.
Предмет исследования - системы развертывания приложений в облаке.
Цель работы - разработка системы развертывания приложений в облаке, которая обеспечит гибкость, масштабируемость и высокую доступность, удовлетворяя современным требованиям бизнеса и техническим стандартам. В работе будут рассмотрены различные методы и инструменты облачного развертывания, проведен анализ их эффективности и предложены решения, способные оптимизировать процессы управления приложениями в облачной среде.
Задачи:
1. Изучить предметную область; способы развертывания приложений;
2. Разработать функциональные/нефункциональные требования системы;
3. Выбрать инструменты и технологии разработки;
4. Спроектировать архитектуру системы развертывания;
5. Разработать компоненты системы;
6. Протестировать систему.
Работа включает в себя обзор существующих технологий и решений, анализ требований и проектирование системы, процесс ее реализации, а также тестирование разработанной системы. Особое внимание будет уделено автоматизации развертывания приложений, а также самой системы.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В ходе выполнения данной работы была разработана система развертывания приложений в облаке, удовлетворяющая поставленным функциональным и нефункциональным требованиям. На основе анализа существующих технологий и решений были выбраны и интегрированы инструменты, такие как Terraform, Ansible, Podman, Nginx, и Certbot, обеспечивающие гибкость, надежность и безопасность системы.
Процесс разработки включал в себя следующие основные этапы:
1. Изучение предметной области и способов развертывания приложений;
2. Разработка функциональных и нефункциональных требований системы;
3. Выбор инструментов и технологий разработки;
4. Проектирование системы, определение архитектурных решений.
5. Разработка компонентов системы, включая API, Ansible роли и Terraform модули.
6. Тестирование функциональности системы, проверка
корректности выполнения запросов.
Результаты тестирования подтвердили, что система корректно выполняет создание и удаление виртуальных машин, развертывание и удаление приложений.
Кроме того, были учтены аспекты безопасности, такие как минимизация числа открытых сетевых интерфейсов, использование SSL- сертификатов для защиты данных, а также создание продуманной сетевой архитектуры. Это снижает риск возникновения уязвимостей и обеспечивает надежную работу системы.
В заключение, можно отметить, что цели и задачи, поставленные в начале работы, были успешно достигнуты. В дальнейшем возможно развитие системы, включая добавление новых функциональных возможностей и интеграцию с другими облачными провайдерами и инструментами.



1. Что такое виртуализация? [Электронный ресурс] - [Б. м.], 2024 -
URL: https://aws.amazon.com/ru/what-is/virtualization/ (дата обращения:
01.10.2023).
2. Что такое облачные вычисления? [Электронный ресурс] - [Б. м.],
2024 - URL: https://azure.microsoft.com/ru-ru/resources/cloud-computing-
dictionary/what-is-cloud-computing (дата обращения: 15.11.2023).
3. SaaS, IaaS, PaaS: чем отличаются основные облачные модели?
[Электронный ресурс] - [Б. м.], 2024 - URL:
https://www.rusonyx.ru/blog/post/saas-iaas-paas-chem-otlichayutsya-osnovnye- oblachnye-modeli/ (дата обращения: 23.05.2024).
4. AWS. Что такое контейнеризация? [Электронный ресурс] - [Б.
м.], 2024 - URL: https://aws.amazon.com/ru/what-is/containerization/ (дата
обращения: 07.01.2024).
5. Документация по Kubernetes [Электронный ресурс] - [Б. м.], 2024 - URL: https://kubernetes.io/docs/home/ (дата обращения: 12.12.2023).
6. Документация по Docker Swarm [Электронный ресурс] - [Б. м.],
2024 - URL: https://docs.docker.com/engine/swarm/ (дата обращения:
18.03.2024).
7. Yandex Cloud Apps [Электронный ресурс] - [Б. м.], 2024 - URL: https://yandex.doud/ru/services/cloud- apps?utm_referrer=https%3A%2F%2Fwww.google.com%2F (дата обращения: 02.02.2024).
8. Stateless и Stateful сервисы [Электронный ресурс] - [Б. м.], 2024 - URL: https://stefaniuk.website/all/stateless-i-stateful-services/ (дата обращения: 15.04.2024).
9. Первые шаги с FastAPI [Электронный ресурс] - [Б. м.], 2024 -
URL: https://fastapi.tiangolo.com/ru/tutorial/first-steps/ (дата обращения:
20.10.2023).
10. Terraform Documentation [Электронный ресурс] - [Б. м.], 2024 - URL: https://developer.hashicorp.com/terraform?product_intent=terraform (дата обращения: 05.05.2024).
11. Ansible. Официальная документация по Ansible [Электронный ресурс] - [Б. м.], 2024 - URL: https://docs.ansible.com/ (дата обращения: 28.11.2023).
12. Docker. Официальная документация по Docker [Электронный ресурс] - [Б. м.], 2024 - URL: https://docs.docker.com/ (дата обращения: 10.01.2024).
13. Podman. Документация по Podman [Электронный ресурс] - [Б. м.], 2024 - URL: https://podman.io/docs (дата обращения: 22.03.2024).
14. Nginx. Документация по Nginx [Электронный ресурс] - [Б. м.], 2024 - URL: https://nginx.org/ru/docs/ (дата обращения: 05.04.2024).
15. Статья на Habr: Преимущества и недостатки современных
технологий [Электронный ресурс] - [Б. м.], 2024 - URL:
https://habr.com/ru/articles/792430/ (дата обращения: 17.12.2023)...17



Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ