This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
вход_в_ci_cd_для_linux_админа [2022/07/19 07:41] val |
вход_в_ci_cd_для_linux_админа [2023/01/20 17:40] val [Запись вебинара] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Вход в CI/CD для linux админа ====== | ====== Вход в CI/CD для linux админа ====== | ||
- | * Сноуборд - это очень просто, забираетесь на гору повыше и съезжаете... CI/CD это очень просто - разрабатываете бэкенд на Python, заворачиваете все в Docker, кладете исходники и образы в GitLab и настраиваете выкатку на прод в кластер Кubernetes... Казалось бы, что общего между сноубордом и CI/CD? Ответ - высокий порог входа. Первый сразу требует множество физических навыков, второй знание множества технологий. | + | ===== Реклама ===== |
- | * Наш вебинар посвящен первому шагу в CI/CD после которого можно будет "ехать" забираясь на все более высокие "горки" | + | |
+ | * Сноуборд - это очень просто, забираетесь на гору повыше и съезжаете... CI/CD это очень просто - разрабатываете бэкенд на Go/Python, заворачиваете все в Docker, кладете исходники и образы в GitLab и настраиваете выкатку на прод в кластер Кubernetes, предварительно развернутый через Vagrant/Terraform и Ansible... Казалось бы, что общего между сноубордом и CI/CD? Ответ - высокий порог входа. Первый сразу требует множество физических навыков, второй сразу знание множества технологий | ||
+ | * [[https://www.specialist.ru/news/6192/vhod-v-cicd-dlya-linuxadmina|Наш вебинар]] посвящен ПЕРВОМУ шагу в CI/CD после которого можно будет "ехать" забираясь на все более высокие "горки" ловя кайф от скорости, баланса и ощущения себя волшебником, повелевающим множеством классных технологий | ||
+ | |||
+ | ===== Техническое задание ===== | ||
+ | |||
+ | * Предоставить возможность коллективу системных администраторов править файлы конфигурации сервисов в едином удобном пространстве, с историей изменений и автоматизацией процессов тестирования и обновления на серверах | ||
===== Запись вебинара ===== | ===== Запись вебинара ===== | ||
- | ===== Модуль 1. Что у нас есть, привычное к ===== | + | * [[https://youtu.be/FeD6VBY2Xss|Вход в CI/CD для Linux-админа]] |
+ | ===== Методическая подготовка ===== | ||
- | * [[http://val.bmstu.ru/unix/img/My%20Documents/debian_10.0_64_01.ova|OVA образ Debian 10]] | + | * Установлен [[Инструмент GitLab]] на server |
+ | * Создана учетная запись student в GitLab на server | ||
+ | * Установлена для [[Установка ПО из исходных текстов#Использование утилиты make]] на gate | ||
+ | * [[Модуль AppArmor#Определение наличия и правка профилей для служб]] dhcp на gate | ||
+ | * Загружен deb дистрибутив [[Инструмент GitLab#GitLab Runner]] на gate | ||
+ | |||
+ | ===== Шаг 1. Что у нас есть, подходящее для начала ===== | ||
+ | |||
+ | * [[https://www.specialist.ru/course/yun2-b|Linux. Уровень 2. Администрирование сервисов и сетей]] | ||
+ | * [[Сервис DHCP]] | ||
+ | * [[Сервис DHCP#Статистика DHCP сервера]] | ||
+ | |||
+ | ===== Шаг 2. Git для linux админа ===== | ||
+ | |||
+ | * [[Сервис Git]] для каталога /etc/ | ||
+ | |||
+ | ===== Шаг 3. "Первый" пример CI/CD в истории) ===== | ||
+ | |||
+ | * [[https://www.specialist.ru/course/yun1-b|Linux. Уровень 1. Основы администрирования системы]] | ||
+ | * [[Установка ПО из исходных текстов]] | ||
+ | * [[Установка ПО из исходных текстов#Использование make для сопровождения файлов конфигурации сервиса]] | ||
+ | * [[Сервис Git]] для каталога ~student/dhcp/ | ||
+ | |||
+ | ===== Шаг 4. От Git к GitLab ===== | ||
+ | |||
+ | * [[Инструмент GitLab]] | ||
+ | * Подключаемся как student, New Blank Project (Project name: dhcp, без README) | ||
+ | * [[Сервис Git#Обновление сетевого репозитория из локального]] | ||
+ | * Редактируем dhcpd.conf в GitLab IDE (Commit to master branch) | ||
+ | * [[Сервис Git#Клонирование и обновление локального репозитория из сетевого]] | ||
+ | * [[Установка ПО из исходных текстов#Использование make для сопровождения файлов конфигурации сервиса]] | ||
+ | |||
+ | ===== Шаг 5. А теперь настоящий CI/CD !!! ===== | ||
+ | |||
+ | * [[Инструмент GitLab#GitLab Runner]] | ||
+ | * Используем [[Пакет sudo]] для разрешений пользователя gitlab-runner | ||
+ | * [[Инструмент GitLab#GitLab CI/CD]] | ||
+ | * [[Сервис DHCP#Статистика DHCP сервера]] | ||
+ | |||
+ | ===== Итоги ===== | ||
+ | |||
+ | * [[https://www.specialist.ru/course/kuber|DevOps. Уровень 1. Инфраструктура как код, основные инструменты]] | ||
+ | * План лабораторных работ: [[Введение в DevOps]] | ||
+ | * [[Преимущества обучения в specialist.ru]] | ||
+ | |||
+ | ===== Возвращаемся к началу) ===== | ||
<code> | <code> | ||
+ | Удаляем проект webd из GitLab | ||
+ | |||
+ | Удаляем gitlab-runner gate из GitLab | ||
+ | |||
+ | gate# visudo #Удаляем пользователя gitlab-runner | ||
+ | |||
+ | gate# apt purge gitlab-runner | ||
+ | |||
+ | gate# su - student | ||
+ | |||
+ | student@gate:~$ rm -rf dhcp/ | ||
+ | |||
+ | gate# cd /etc | ||
+ | |||
+ | gate:/etc# rm -rf .git/ | ||
+ | |||
+ | gate# sh conf/dhcp.sh | ||
</code> | </code> | ||
- | ===== Модуль 2. Zabbix LLD "на пальцах" ===== |