This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
devsecops_и_промышленные_решения [2026/06/15 14:29] val |
devsecops_и_промышленные_решения [2026/06/20 08:57] (current) val [3.1 Интеграция инструментов безопасности в CI/CD] |
||
|---|---|---|---|
| Line 18: | Line 18: | ||
| ===== Модуль 1: Развертывание инфраструктуры предприятия ===== | ===== Модуль 1: Развертывание инфраструктуры предприятия ===== | ||
| - | ==== Слайд ==== | + | ===== Слайд ===== |
| * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p6#slide=id.p6 | * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p6#slide=id.p6 | ||
| Line 80: | Line 80: | ||
| * Настройка сервера DHCP на gate | * Настройка сервера DHCP на gate | ||
| <code> | <code> | ||
| - | gate:~# ###git -C conf/ pull | ||
| - | |||
| gate:~# sh conf/dhcp.sh | gate:~# sh conf/dhcp.sh | ||
| </code> | </code> | ||
| Line 125: | Line 123: | ||
| ===== Модуль 2: Развертывание приложений в кластере Kubernetes ===== | ===== Модуль 2: Развертывание приложений в кластере Kubernetes ===== | ||
| - | ==== Слайд ==== | + | ===== Слайд ===== |
| * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p7#slide=id.p7 | * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p7#slide=id.p7 | ||
| Line 259: | Line 257: | ||
| * Настройка [[Сервис Keycloak#Аутентификация пользователей WEB приложения]] через Keycloak | * Настройка [[Сервис Keycloak#Аутентификация пользователей WEB приложения]] через Keycloak | ||
| * Создать УЗ user1 через [[Инструмент GitLab#REST API интерфейс]] и связать через [[Инструмент GitLab#Клиент OpenID]] | * Создать УЗ user1 через [[Инструмент GitLab#REST API интерфейс]] и связать через [[Инструмент GitLab#Клиент OpenID]] | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod2_pract_path2.mp4|Запись практикума]] (длительность: 28 минут) | ||
| + | |||
| ==== 2.3 Стратегии развертывания и масштабирование нагрузки ==== | ==== 2.3 Стратегии развертывания и масштабирование нагрузки ==== | ||
| Line 303: | Line 306: | ||
| * Преподаватель демонстрирует добавление HTTPS в [[Система Kubernetes#Gateway]] с использованием [[Система Kubernetes#cert-manager]] | * Преподаватель демонстрирует добавление HTTPS в [[Система Kubernetes#Gateway]] с использованием [[Система Kubernetes#cert-manager]] | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod2_pract_path3.mp4|Запись практикума]] (длительность: 14 минуты) | ||
| + | |||
| ==== 2.4 ArgoCD и универсальный Helm Chart ==== | ==== 2.4 ArgoCD и универсальный Helm Chart ==== | ||
| Line 375: | Line 383: | ||
| kube1:~/webd-k8s# cp uni-webd-chart/values.yaml apps/ehwebd/ | kube1:~/webd-k8s# cp uni-webd-chart/values.yaml apps/ehwebd/ | ||
| + | kube1:~/webd-k8s# cat apps/ehwebd/values.yaml | ||
| + | ... | ||
| + | repository: brndnmtthws/nginx-echo-headers | ||
| + | ... | ||
| + | targetPort: 8080 | ||
| ... | ... | ||
| kube1:~/webd-k8s# helm template my-ehwebd uni-webd-chart/ -f apps/ehwebd/values.yaml -f env.yaml | kube1:~/webd-k8s# helm template my-ehwebd uni-webd-chart/ -f apps/ehwebd/values.yaml -f env.yaml | ||
| </code> | </code> | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod2_pract_path4.mp4|Запись практикума]] (длительность: 26 минут) | ||
| + | |||
| ===== Модуль 3: Безопасность в DevOps ===== | ===== Модуль 3: Безопасность в DevOps ===== | ||
| - | ==== Слайд ==== | + | ===== Слайд ===== |
| * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p8#slide=id.p8 | * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p8#slide=id.p8 | ||
| Line 415: | Line 433: | ||
| kube1:~/webd-k8s# cp uni-webd-chart/values.yaml apps/pywebd/ | kube1:~/webd-k8s# cp uni-webd-chart/values.yaml apps/pywebd/ | ||
| + | kube1:~/webd-k8s# cat apps/pywebd/values.yaml | ||
| + | ... | ||
| + | PYWEBD_DOC_ROOT: /home/myuser/www/ | ||
| + | ... | ||
| + | - mkdir -p /home/myuser/www/ && echo \"<h1>Hello from pywebd on $(hostname)</h1>\" > /home/myuser/www/index.html | ||
| ... | ... | ||
| kube1:~/webd-k8s# helm template my-pywebd uni-webd-chart/ -f apps/pywebd/values.yaml -f env.yaml | kube1:~/webd-k8s# helm template my-pywebd uni-webd-chart/ -f apps/pywebd/values.yaml -f env.yaml | ||
| </code> | </code> | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod3_pract_path1.mp4|Запись практикума]] (длительность: 16 минут) | ||
| + | |||
| ==== 3.2 Управление секретами ==== | ==== 3.2 Управление секретами ==== | ||
| Line 432: | Line 460: | ||
| * [[Система Kubernetes#Работа с чувствительными данными (секретами)]] в Helm | * [[Система Kubernetes#Работа с чувствительными данными (секретами)]] в Helm | ||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod3_pract_path2.mp4|Запись практикума]] (длительность: 17 минут) | ||
| ==== 3.3 Управление доступом в Kubernetes ==== | ==== 3.3 Управление доступом в Kubernetes ==== | ||
| Line 457: | Line 488: | ||
| * [[Система Kubernetes#Использование NetworkPolicy]] для управления доступом в NS кластера | * [[Система Kubernetes#Использование NetworkPolicy]] для управления доступом в NS кластера | ||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod3_pract_path3.mp4|Запись практикума]] (длительность: 23 минуты) | ||
| ==== 3.4 Использование IDS/IPS в Kubernetes ==== | ==== 3.4 Использование IDS/IPS в Kubernetes ==== | ||
| Line 496: | Line 530: | ||
| root@my-ubuntu:/# snort -i eth0 -S HOME_NET=[0.0.0.0/0] -c /etc/snort/snort.conf # -A console | root@my-ubuntu:/# snort -i eth0 -S HOME_NET=[0.0.0.0/0] -c /etc/snort/snort.conf # -A console | ||
| </code> | </code> | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod3_pract_path4.mp4|Запись практикума]] (длительность: 17 минут) | ||
| ===== Модуль 4: Восстановление кластера после сбоев ===== | ===== Модуль 4: Восстановление кластера после сбоев ===== | ||
| - | ==== Слайд ==== | + | ===== Слайд ===== |
| * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p9#slide=id.p9 | * https://docs.google.com/presentation/d/1x0pls2ClHYfdB3W3l6jb4If7e9vGpfDA/edit?slide=id.p9#slide=id.p9 | ||
| Line 514: | Line 552: | ||
| * [[Сервис VictoriaMetrics]] | * [[Сервис VictoriaMetrics]] | ||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod4_pract_path1.mp4|Запись практикума]] (длительность: 35 минут) | ||
| ==== 4.2 Резервное копирование и восстановление ==== | ==== 4.2 Резервное копирование и восстановление ==== | ||
| Line 520: | Line 561: | ||
| * [[Сервис PostgreSQL#Резервное копирование и восстановление]] PostgreSQL (Вебинар: [[Все что должен знать DevOps про PostgreSQL]]) | * [[Сервис PostgreSQL#Резервное копирование и восстановление]] PostgreSQL (Вебинар: [[Все что должен знать DevOps про PostgreSQL]]) | ||
| * [[Система Kubernetes#Отладка etcd]] | * [[Система Kubernetes#Отладка etcd]] | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod4_pract_path2.mp4|Запись практикума]] (длительность: 8 минут) | ||
| + | |||
| ==== 4.3 Восстановление кластера после сбоев ==== | ==== 4.3 Восстановление кластера после сбоев ==== | ||
| Line 549: | Line 595: | ||
| * Проверка состояния кластера и приложений | * Проверка состояния кластера и приложений | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod4_pract_path3.mp4|Запись практикума]] (длительность: 15 минут) | ||
| + | |||
| ==== 4.4 Обновление кластера ==== | ==== 4.4 Обновление кластера ==== | ||
| Line 554: | Line 605: | ||
| * [[Система Kubernetes#Обновление кластера через kubespray]] | * [[Система Kubernetes#Обновление кластера через kubespray]] | ||
| * Проверка состояния кластера и приложений | * Проверка состояния кластера и приложений | ||
| + | |||
| + | === Практикум === | ||
| + | |||
| + | * [[https://val.bmstu.ru/~val/pract/dev3/dev3_mod4_pract_path4.mp4|Запись практикума]] (длительность: 4 минуты) | ||
| + | |||
| ===== Примеры конфигураций ===== | ===== Примеры конфигураций ===== | ||