В этой статье поговорим о Sentry — инструменте для сбора exception, который помогает разработчикам быстро обнаруживать и устранять проблемы, сокращая время выхода новых релизов и повышая удовлетворенность пользователей.
DevOps-инженер
Безопасность на новом уровне: исследование Smallstep CA и его применение
Рассмотрим Smallstep CA — современное и инновационное решение для управления сертификатами. Оно может предложить несколько преимуществ по сравнению с OpenSSL.
Автоматическое обновление зависимостей в GitLab-проектах с помощью Renovate
Автоматическое обновление зависимостей становится все более важным аспектом в процессах непрерывной интеграции и непрерывной доставки (CI/CD) в сфере разработки программного обеспечения. В статье описана настройка автоматического обновления зависимостей в GitLab-проектах с помощью Renovate.
Как создавать Kubernetes секреты из Vault, используя external-secrets-operator
Бывают случаи, когда инженеры хранят секретные данные, ключи, токены в открытом виде или в переменных Gitlab. В Kubernetes для хранения данных, которые нежелательно показывать широкому кругу лиц, предусмотрены секреты.
В этой статье предлагаю рассмотреть безопасный способ передавать, синхронизировать, интегрировать секреты напрямую из Vault в Kubernetes – с помощью метода аутентификации AppRole, используя external-secrets-operator.
Управление инфраструктурой с помощью terragrunt (terraform) и gitlab ci
В этом посте:
- Использование terraform модулей
- Организуем структуру каталогов с terraform модулями для terragrunt согласно вашей инфраструктуре
- Создание/Обновление/Удаление инфраструктуры одной terragrunt командой
- Настройка в gitlab ci для запуска и сохранения terraform lock и state в gitlab
- Бекап terraform state из gitlab
Установка Jenkins с помощью terraform в Kubernetes в Yandex Cloud с letsencypt
В этой статье будет следующее:
- Заведение DNS домена на reg.ru.
- Управление DNS зоной в Yandex DNS c помощью terraform.
- Создание Kubernetes в Yandex Cloud.
- Резервируем внешний статический IP адрес.
- Установка Jenkins c помощью terraform модуля helm_release.
- Создание ClusterIssue(Issue) для создания letsencypt сертификата.
Обзор rotoro cloud — платформа для обучения и практики devops, kubernetes, IaC
В настоящее время активно развивается IT рынок обучающих курсов.
В курсах вам даются видео лекции где довольно много времени уходит впустую, а домашнее задание довольно долго проверяется людьми.
В случае больших заданий это оправдано, но если ты учишься в удобное тебе время и небольшими инкрементальными приращениями, ожидание проверки выполненного задания трата времени впустую. Поэтому на роторо имеются автопроверки.
Ручные проверки оправданы в случае обучения на очных либо курируемых длительных курсах, но при обучении с самостоятельно выбранными темпом и временем ожидание проверки выполненного задания куратором может излишне затянуть переход к следующему этапу. Автопроверки же решают эту проблему на корню.
Предлагаю посмотреть в сторону обучающей платформы rotoro cloud, где видео короткие и по теме, а задания проверяются в автоматическом режиме. Курсы на платформе на русском языке. После прохождения каждого курса выдается сертификат.
rotoro cloud — платформа для обучения и практики по направлениям DevOps, Контейнеры и Kubernetes, Инфраструктура в виде кода (IaC) и Облака.
Установка Jenkins используя Ansible и плагин Configuration as Code на виртуальной машине
Установка Jenkins используя Ansible и плагин Configuration as Code на виртуальной машине
Jenkins Configuration as Code (aka JCasC) призвана быть инструментом, который позволяет вам запускать свой Jenkins в парадигме Infrastructure as Code или инфраструктура как код (IaC).
Этот пост будет состоять из двух частей. Первая часть — быстрый запуск тестового примера. Вторая часть — подробное описание.
Автоматизация релизов с помощью github-action и semantic-release. А так же использование Pre-commit в Github action
В этом посте будет описано практическое применение semantic-release для terraform модуля terraform-yandex-compute (Модуль Terraform, который создает вычислительные ресурсы в облаке Яндекса) c Github action.
А так же будет рассмотрено использование Pre-commit в Github action.
Что нового в плане мониторинга в PostgreSQL (Алексей Лесовский)
Доклад Алексея Лесовского про то, что нового есть в PostgreSQL в плане мониторинга.
Охватывать Алексей будет 13 и 14 версии. Далее от его лица.
Автоматизируем все с Github Actions (Никита Соболев)
Никита Соболев покажет множество функций Github Actions, поделится собственными впечатлениями и болями от первых месяцев использования, покажет, как сделать собственные инструменты.
Kubernetes monitoring от простого к сложному (Николай Храмчихин)
Разберём как при помощи VictoriaMetrics замониторить kubernetes. Откуда собирать метрики и как автоматически обнаруживать новые цели. Черная магия релейблинга и как она работает. Аннотации для мониторинга приложений и что делать когда их гибкости не хватает
Kubernetes Nginx Ingress: Перенаправление трафика с использованием аннотаций
Kubernetes Nginx Ingress: перенаправление трафика с использованием аннотаций
Перенаправляйте HTTP-трафик или переписывайте URL-адреса с помощью входных аннотаций Kubernetes и Nginx ingress controller. В этой статье объясняется использование аннотаций и их влияние на результирующий файл конфигурации nginx.conf.
Вячеслав Смирнов. Профилирование JVM в Kubernetes
Вариантов и инструментов профилирования JVM много, так много, что обо всех и не рассказать. И каждый имеет свои особенности, плюсы и минусы.
Вячеславу повезло использовать разные инструменты. И повезло найти разные дефекты микросервисов на основе JVM. Спикер проанализировал, разделил инструменты и дефекты микросервисов на группы, и хочет рассказать о:
- подборе профайлеров и их настройках под задачу;
- собранных рецептах профилирования JVM в Kubernetes;
- моментах, когда профилирование вредит, а когда помогает.
Распространённые ошибки изменения схемы базы данных PostgreSQL (Николай Самохвалов)
Postgres.ai делает возможным работу с полноразмерными базами данных в CI, значительно улучшая качество разработки и тестирования.
Разрабатываемый компанией открытый инструмент, Database Lab Engine, позволяет создавать полноразмерные клоны баз данных любого размера за секунды. Используя такие клоны, вы можете тестировать изменения, оптимизировать SQL-запросы и быстро развёртывать независимые тестовые стенды.
Вебсайт компании – https://Postgres.ai/ – содержит также SaaS-версию Database Lab.
Immutable infrastructure – достигая недостижимого идеала (Андрей Девяткин)
Всем привет! Добро пожаловать на презентацию об immutable infrastructure – достигая недостижимого идеала. Перед тем как мы начнем, хотел бы сделать небольшое вступление.
Учим Kibana работать с Clickhouse (Ярослав Саган, Николай Нестеренко)
Сотрудники ECOMMPAY IT Ярослав Саган и Николай Нестеренко на конференции HighLoad++2019 рассказали об архитектурном решении для компактного хранения логов в ClickHouse.
На основе их доклада я сделал статью с расшифровкой, так как тема оказалась полезной.
(Ярослав Саган) Мы расскажем о том, как делали архитектуру для компактного хранения логов в ClickHouse; как прикручивали Kibana для просмотра логов, их фильтрации и аналитики. А также расскажем, с какими трудностями столкнулись и что у нас получилось в итоге.
Установка ReportPortal в kubernetes
ReportPortal – это веб-решение на базе открытого ПО, созданное разработчиками EPAM и OSS-сообщества. Его использование позволяет собрать в одном месте документы и результаты различных проектов по тестированию, которые выполняются в компании, и сделать их доступными для тестировщиков, ИТ-специалистов и бизнес-заказчиков.
Благодаря применению ReportPortal становится возможным:
- Ускорить запуск продуктов в эксплуатацию совместно с автоматизацией тестирования
- Просматривать тестовые сценарии со всеми связанными данными в одном решении «здесь и сейчас», с логами, скриншотами, двоичными данными
- Связывать определенные тестовые сценарии с найденными ошибками (багами), проблемами автоматизации или проблемами системы
В этом посте будет описана установка ReportPortal в kubernetes.
Сборка образа Windows Server 2019 с обновлениями c помощью packer и ansible в Yandex Cloud
Зачем собирать образ с помощью Packer?
- Время создания инстанса из готового образа значительно меньше, чем время, которое нужно затратить с нуля на подготовку виртуальной машины к работе. Это достаточно критичный момент, так как порой очень важно ввести в работу новый инстанс нужного типа за кратчайшее время для того, чтобы начать пускать на него трафик.
- Помимо того что образ виртуальной машины для DEV, TEST, Staging окружений, он всегда будет соответствовать по набору ПО и его настройкам тому серверу, который используется в production. Важность этого момента трудно недооценить — крайне желательно, чтобы деплой нового кода на продакшн привел к тому, чтобы сайт продолжал корректную работу с новой функциональностью, а не упал из-за какой-то ошибки, связанной с недостающим модулем или отсутствующим ПО.
- Автоматизация сборки production- и development-окружений экономит время системного администратора. В глазах работодателя это также должно быть несомненным плюсом, так как это означает, что за то же время администратор сможет выполнить больший объем работы.
- Время для тестирования набора ПО, его версий, его настроек. Когда мы подготавливаем новый образ заранее, у нас есть возможность (и, что самое главное, время!) для того, чтобы спокойно и вдумчиво проанализировать различные ошибки, которые возникли при сборке образа, и исправить их. Также есть время для тестирования работы приложения на собранном образе и внесения каких-то настроек для оптимизации приложений. В случае же, если мы настраиваем инстанс, который нужно было ввести в работу еще вчера, все возникающие ошибки, как правило, исправляются по факту их возникновения уже на работающей системе — конечно же, это не совсем правильный подход.
Установка, использование Managed Service for PostgreSQL,Managed Service for Kubernetes в YandexCloud c помощью terraform
В этом посте будет описана установка Managed Service for PostgreSQL и Managed Service for Kubernetes в Yandex Cloud c помощью terraform. В Kubernetes будет установлено простое приложение на flask, которая записывает данные в Managed Service for PostgreSQL. Приложение на flask описано в helm чарте и будет установлено с помощью helm. Внешний трафик из интернета будет проходить сначала Network load balancer, затем попадать в Ingress. Ingress – это ресурс для добавления правил маршрутизации трафика из внешних источников в службы в кластере kubernetes.
Вся установка и настройка добавлена в скрипт install.sh. Можно просто запустить скрипт и все установится. В посте описывается более подробно.