Блог DevOps | OTUS
Посты
Мониторинг состояния приложений

Давайте представим, что у нас есть мониторинг серверов, и выглядит он вполне адекватно: и памяти много, и нагрузка на процессор незначительна. Но это еще далеко не все, ведь если сегодня оборудование неплохо организовано и работает как часы, то завтра можно столкнуться с ситуацией, когда все упало, программы не запущены, а ваши клиенты не могут попасть на сервер. Чтобы такой ситуации не допустить, требуется мониторинг состояния приложений.

Хуки и init-контейнеры в Kubernetes

kubernetes_2021_08_23_17_37_15-1801-2cb2ba.jpg

Одна из задач DevOps-специалиста может заключаться в обеспечении деплоев в Kubernetes без простоя для разработчиков. Реализовать эту задачу бывает трудно, а все потому, что есть много вариантов завершения работы программных приложений и освобождения этими приложениями использованных ресурсов. Но особые трудности могут возникнуть с Nginx.

Настраиваем дефолтные сетевые политики пода

Некоторые думают, что достаточно просто перенести приложение на Kubernetes (вручную или с помощью Helm), и будет счастье. Однако на деле не все так просто. Мы уже говорили про настройку запросов пода и лимитов, а также про тесты Liveness и Readiness. Пришло время рассказать о настройке дефолтных сетевых политик пода.

Настраиваем тесты Liveness и Readiness

Эта тема нередко обсуждается в Kubernetes-сообществе. Почему же так важно хорошо разбираться в тестах готовности (Readiness) и жизнеспособности (Liveness)? Потому что они как минимум обеспечивают устойчивую работу ПО, минимизируя время простоя. К тому же, если тесты настроены неправильно, они могут существенно повлиять на производительность вашего приложения.

Что должен знать DevOps-инженер?

Так как DevOps-инженер отвечает за автоматизацию процессов на всех этапах разработки ПО, он обязан понимать, как устроен процесс разработки в целом, начиная от построения архитектуры, заканчивая доставкой приложения пользователям. Разумеется, еще он должен владеть DevOps-инструментами. Но ведь это еще далеко не все.

Ansible-vault для хранения конфиденциальной информации

Если решение какой-нибудь задачи предполагает наличие конфиденциальной информации (к примеру, доступ в базу данных), неплохой практикой является хранение данной информации в зашифрованном виде. Создавать и управлять шифрованными файлами позволяет утилита командной строки ansible-vault, поставляемая вместе с Ansible.

Настройка запросов пода и лимитов в Kubernetes

Kubernetes прекрасно справляется с обработкой состояний отказа и планированием подов. Однако на практике планировщик порой не может разместить под. Это происходит, если он затрудняется оценить, какое количество ресурсов ему требуется для успешной работы. Специалисты до сих пор спорят, какой подход к настройке лимитов и запросов является наилучшим. Порой возникает ощущение, что это скорее искусство, чем наука. Об этом — наша статья.

Зачем нужен мониторинг оборудования?

Нередко бывает, что программы ломаются, а серверы падают. Вряд ли этого можно избежать со 100%-ной вероятностью. Скачок напряжения, случайный баг, сбои в подаче электроэнергии — эти и многие другие факторы способны вызвать поломки. Минимизировать вероятность появления проблемы поможет мониторинг.

Популярное
Сегодня тут пусто