Для прокачки теоретических и практических навыков познакомился с такими источниками как: «Компьютерные сети. Нисходящий подход», Д.Куроуз;
«Компьютерные сети», Э.Таненбаум.
На данный момент углубился в изучение техник безопасности инфраструктуры, в этом мне помогает Д.Вехен со своим творением «Безопасный DevOps».
Для дополнительной практики арендую облачный сервер.
Нравится процесс автоматизации. Уверен, что без постоянного совершенствования и обучения не достичь желаемого результата.
Адаптивен, легко нахожу подход к любому человеку, нравится эффективная командная работа, уважаю и ценю ответственных коллег. Стрессоустойчив, работоспособность не зависит от времени суток. Ответственный, внимателен к деталям. Пунктуален.
Технологии и инструменты, с которыми работал:
Linux (Ubuntu), bash, Nginx, Docker, Docker Compose, Gunicorn, CI/CD - GitHub Actions, Gitlab, Git, Python, API, PostgreSQL, Ansible, Prometheus, Grafana, Alertmanager.
1. Подготовка удалённого сервера - Ubuntu - Ansible:
1) Установка веб-сервера, платформы контейнеризации
2) Установка и настройка системы мониторинга (создание необходимых директорий, пользователей, юнитов, разграничение прав, настройка файервола)
2. Деплой проекта cocktailsgram (docker compose)
- Настроил контейнеризацию: написал Dockerfile; сконфигурировал Nginx и добавил проксирование запросов для API и админки; настроил совместную работу контейнеров, Django для работы с PostgreSQL; написал конфиг для Docker Compose (связал с Docker Hub)
- Автоматизировал тестирование и деплой проекта с помощью GitHub Actions:
Написал workflow для CD (проверяет код бэкенда в репозитории на соответствие PEP8; запускает тесты для фронтенда и бэкенда; собирает образы проекта и отправляет их на Docker Hub; обновляет образы на сервере и перезапускает приложение при помощи Docker Compose);
- Применил скрипты для сборки и переноса статики в приложении бэкенда. Подключил извещение в Tg об успешном завершении деплоя.
- Сбор метрик/визуализация :
*Prometheus (обеспечение мониторинга и оповещений)
*Prometheus_node_exporter (сбор системных метрик)
*Blackbox_exporter (данные по статусу конечных точек, дата истечения ssl-сертификатов)
*Alertmanager (обработка, группировка оповещений и отправка их на почту)
*Grafana (визуализация собранных данных)
Стек: Ubuntu, Git, Nginx, Docker, Docker compose, Gunicorn, Python, API, PostgreSQL, React, GitHub Actions, CI/CD, Prometheus/Grafana
3. Деплой проекта tasks_4u (Gunicorn/Nginx):
- Настроил WSGI-сервер Gunicorn для работы с бэкенд-приложением (создал и описал Unit для демона-Gunicorn)
- Настроил веб-сервер Nginx для проксирования запросов и работы со статикой проекта
- Настроил шифрование запросов по протоколу HTTPS (SSL-сертификат - certmanager)
- Подключил мониторинг в виде регулярных запросов к сервису с фиксацией статуса ответа (uptimerobot)
Стек: Ubuntu, Git, Nginx, Gunicorn, Python, API, Django, React
Автотракторный факультет, Наземные транспортно-технологические машины и комплексы