Применение систем управления конфигурациями
Введение
Со временем, рано или поздно, любой проект в долгосрочной перспективе, связанный с разработкой программного обеспечения, начинает разрастаться настолько сильно, что управлять им вручную становится попросту непосильной задачей. Появляется необходимость что-то менять на то, что может значительно помочь в решении данной проблемы, и не только дать возможность автоматизировать систему, но и повысить качество самого процесса разработки, речь идёт о системах управления конфигурациями.
Система управления конфигурациями – это набор процессов и средств, которые позволяют эффективно управлять, отслеживать изменения в программном обеспечении. Помимо того, что было сказано выше, система управления конфигурациями позволяет контролировать и управлять исходным кодом программного обеспечения, а также версиями и сборками.
Благодаря системам управления конфигурациями, можно рассчитывать на довольно большое количество преимуществ, работая в различных организациях и предприятиях, а именно:
Содержание
Введение 3
1 Введение в системы управления конфигурациями 6
1.1 Система управления конфигурациями 6
1.1.1 Элементы конфигурации 6
1.1.2 Важность управления конфигурациями 7
1.2 Основные компоненты систем управления конфигурациями 8
1.2.1 Централизованное хранилище 9
1.2.2 Управление версиями 10
1.2.3 Управление зависимостями 13
1.2.4 Сборка и развёртывание 15
1.2.5 Управление изменениями 16
1.2.6 Отчётность и мониторинг 17
2 Установка систем управления конфигурациями 18
2.1 Установка Ansible на Ubuntu 18
2.2 Установка Puppet на Ubuntu 21
2.3 Установка Chef на Ubuntu 26
Заключение 34
Библиографический список 36
Приложение А 38
Библиографический список
1. Дiма Созонов. Управление конфигурацией в жизненном цикле программных средств [Электронный ресурс]. – Режим доступа: https://pandi-a.ru/text/7-8/495/91060.php (Дата обращения: 11.01.2023).
2. Начало работы с Gradle: управление зависимостями [Электронный ресурс]. – Режим доступа: https://coderlessons.com/articles/java/nachalo-raboty-sgradle-upravlenie-zavisimostiami (Дата обращения: 11.01.2023).
3. Преимущества и возможные проблемы Управления конфигурациями [Электронный ресурс]. – Режим доступа: https://project.dovidnyk.info/index.p-hp/itil/podderzhkauslug/433preimushestva_i_vozmozhnye_problemyupravleniya_kon-figuraciyami (Дата обращения: 11.01.2023).
4. Пять лучших инструментов управления конфигурацией в DevOps [Электронный ресурс]. – Режим доступа: https://wiki.merionet.ru/servernyeres-heniya/94/-5luchshih-instrumentov-upravleniya-konfig-devops/ (Дата обращения: 11.01.2023).
5. Управление документацией [Электронный ресурс]. – Режим доступа: https://sty-dopedia.ru/5x1114.html (Дата обращения: 11.01.2023).
6. Управление зависимостями в Gradle [Электронный ресурс]. – Режим доступа: https://for-each.dev/lessons/b/-gradle-management (Дата обращения: 11.01.2023).
7. Управление конфигурацией ПО [Электронный ресурс]. – Режим доступа: https://libraryno.ru/5-7-upravlenie-konfiguraciey-programmnogo-obesp-echeniya-trpo/ (Дата обращения: 11.01.2023).
8. Управление конфигурацией – то, чего все, кажется, боятся! [Электронный ресурс]. – Режим доступа: https://cleverics.ru/digital/2023/01/up-ravlenie-konfiguraciej-to-chego-vse-kazhetsya (Дата обращения: 11.01.2023).
9. Управление конфигурациями: принципы и возможности [Электронный ресурс]. – Режим доступа: https://www.ibm.com/docs/ru/elms/el-m/6.0.6?to-pic=overview-configuration-managementconceptscapabilities#c_cm_o-verview__-sect_cfgs_eg (Дата обращения: 11.01.2023).
10. Хранилище конфигурации – централизованная система контроля версий [Электронный ресурс]. – Режим доступа: https://edt.1c.ru/upload/do-cs_git/to-pics/t000005.html (Дата обращения: 11.01.2023).
11. Что такое конфигурационное управление: основы и важность [Электронный ресурс]. – Режим доступа: https://ya.zerocoder.ru/pgt-chto-takoe-konfigu-racionnoe-upravlenie-osnovy-i-vazhnost/ (Дата обращения: 08.06.2023).
12. Что такое VCS (система контроля версий) [Электронный ресурс]. – Режим доступа: https://habr.com
Управление версиями автоматически отслеживает все изменения, вносимые в элементы конфигурации, и сохраняет их историю, что позволяет разработчикам понимать, когда и какие изменения были внесены в код.
объединение изменений. В случае если два разработчика внесли изменения в разные версии одного элемента конфигурации, система управления версиями автоматически объединит эти изменения и сохранит конфликтующие версии в новую версию элемента конфигурации.
Основной задачей контроля версиями является сохранение и контроль версий всех элементов конфигурации, включая исходный код программного обеспечения, конфигурационные файлы, сценарии развертывания и так далее.
1.2.3Управление зависимостямиУправление зависимостями – процесс управления взаимосвязанными компонентами программного обеспечения, которые используются для создания приложений.