User Tools

Site Tools


вход_в_ci_cd_для_linux_админа

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
вход_в_ci_cd_для_linux_админа [2022/07/19 08:51]
val [Вдохновенная реклама]
вход_в_ci_cd_для_linux_админа [2023/03/16 15:24] (current)
val [Вход в CI/CD для linux админа]
Line 1: Line 1:
 ====== Вход в CI/CD для linux админа ====== ====== Вход в CI/CD для linux админа ======
  
-===== Вдохновенная реклама =====+  * [[https://​habr.com/​ru/​post/​716454/​|Самый простой пример CI/CD]] 
 +===== Реклама =====
  
-  * Сноуборд - это очень просто,​ забираетесь на гору повыше и съезжаете... CI/CD это очень просто - разрабатываете бэкенд на Python, заворачиваете все в Docker, кладете исходники и образы в GitLab и настраиваете выкатку на прод в кластер Кubernetes,​ предварительно разворнутый через Ansible... Казалось бы, что общего между сноубордом и CI/CD? Ответ - высокий порог входа. Первый сразу требует множество физических навыков,​ второй сразу знание множества технологий +  * Сноуборд - это очень просто,​ забираетесь на гору повыше и съезжаете... CI/CD это очень просто - разрабатываете бэкенд на Go/Python, заворачиваете все в Docker, кладете исходники и образы в GitLab и настраиваете выкатку на прод в кластер Кubernetes,​ предварительно развернутый через ​Vagrant/​Terraform и Ansible... Казалось бы, что общего между сноубордом и CI/CD? Ответ - высокий порог входа. Первый сразу требует множество физических навыков,​ второй сразу знание множества технологий 
-  * Наш вебинар посвящен ПЕРВОМУ шагу в 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 "на пальцах"​ ===== 
вход_в_ci_cd_для_linux_админа.1658209873.txt.gz · Last modified: 2022/07/19 08:51 by val