Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Monitoring as Code на базе VictoriaMetrics и Grafana

Время на прочтение13 мин
Количество просмотров32K

Приветствую всех любителей Infrastructure as Code.

Как я уже писал в предыдущей статье, я люблю заниматься автоматизацией инфраструктуры. Сегодня представляю вашему вниманию вариант построения GitOps для реализации подхода Monitoring as Code.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии19

Kubernetes: мониторинг c помощью Prometheus

Время на прочтение14 мин
Количество просмотров40K


Привет, Хабр!
Меня зовут Радик, Head of DevOps of AGIMA!


В этой статье я постарался показать, как можно использовать Prometheus в качестве системы мониторинга для микросервисной архитектуры. Подробно рассмотрел архитектуру Prometheus и взаимодействие его компонентов. Обозначил ключевые характеристики благодаря чему эта система получила такое широкое распространение в средах использующих контейнеризацию. Предупреждаю сразу: статья получилась довольно объемной. Эта статься будет полезна для начинающих DevOps специалистов, которые планируют или уже используют в своей работе Docker, Kubernetes. Итак, начнем!

Читать дальше →
Всего голосов 5: ↑3 и ↓2+4
Комментарии0

Мой маленький Kubernetes: настраиваем тестовый кластер в VirtualBox

Время на прочтение13 мин
Количество просмотров39K

За последние пару лет мне довольно часто приходилось сталкиваться с Kubernetes, однако обычно это всегда происходило с позиции разработчика. Посмотреть список подов, их статусы, логи и т.п. В общем, ничего сложного.

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

Обычно изучение Kubernetes стоит начинать с minikube - консольной утилиты, которая умеет быстро создавать кластер из одного узла с использованием VirtualBox. Это самый лучший вариант для быстрого старта.

Но есть и другой вариант. Можно взять VirtualBox, создать несколько виртуальных машин, например, с Ubuntu Server и настроить небольшой кластер Kubernetes прямо на своём домашнем компьютере.

Я решил пойти по второму пути, но по ходу настройки начал сталкиваться с различными проблемами, решение которых было для меня не так очевидно, как хотелось бы. Вообще в интернете можно найти достаточно много статей на английском языке, где описан процесс настройки, но, к сожалению, ни одна из них не была для меня достаточно полной. Пришлось собирать информацию по кусочкам из разных источников.

Здесь я решил собрать всё вместе и описать процесс настройки небольшого кластера Kubernetes с использованием VirtualBox настолько подробно, насколько мне самому хотелось бы его видеть. Надеюсь, что эта информация сможет помочь другим разработчикам в их экспериментах.

Осторожно, трафик! В статье очень много скриншотов.

Читать далее
Всего голосов 12: ↑10 и ↓2+13
Комментарии35

Что такое Linux? Статья-шпаргалка для новичков

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров78K

Что такое Linux?


Салют! Это статья — попытка систематизировать некие базовые знания об Linux’ах, которая может быть полезна для продвинутых пользователей, разработчиков и админов Windows, которые еще не имели (или имели крайне небольшой и отрывочный) опыт работы с Linux системами и не знают, с чего начать, однако хотят попробовать — сами, или по причине производственной необходимости. Каждый пункт содержит не исчёрпывающие сведения, а лишь отправные пункты для дальнейшего изучения (гуглежа) материала.

Содержание:

  1. Linux Kernel aka Ядро
  2. GNU Core Utilities (coreutils)
  3. Bash — интерпретатор командной строки
  4. Системы управления пакетами и пакетные менеджеры
  5. Init systems — системы инициализации
  6. systemd
  7. Ваш первый вход на сервер
  8. Управляем пользователями
  9. Сети
  10. FHS — Filesystem Hierarchy Standard — навигация в файловых системах Linux
  11. Window system / display server — сервер экранов
  12. Полезные ссылки и список литературы для изучения


Если интересно — прыгайте под кат
one root to rule them all
Всего голосов 39: ↑32 и ↓7+32
Комментарии42

Практические советы, примеры и туннели SSH

Время на прочтение13 мин
Количество просмотров230K

Практические примеры SSH, которые выведут на новый уровень ваши навыки удалённого системного администратора. Команды и советы помогут не только использовать SSH, но и более грамотно перемещаться по сети.

Знание нескольких трюков ssh полезно любому системному администратору, сетевому инженеру или специалисту по безопасности.
Читать дальше →
Всего голосов 69: ↑66 и ↓3+63
Комментарии29

Магия ssh

Время на прочтение12 мин
Количество просмотров69K

Разве что ленивый не писал про ssh и несмотря на это, данный протокол и его возможности не перестают меня восхищать. Здесь я хочу поделиться исключительно своим опытом использования сего замечательного инструмента в своих задачах (При этом активно применяю его даже при разработке на Windows).

Поскольку я программист, то инструментарий ssh часто нужен мне в разработке и для личных нужд. Самые частые задачи, которые я выполняю с его помощью (по частоте использования):

  • Удалённый доступ — логично, ведь для этого он и предназначался.
  • Монтирование папок по сети — очень удобно для работы с кодом на удалённой машине.
  • Удалённое выполнение команд — нечастая, но используемая мной операция. Удобно получать выхлоп команды в канал другой команды на текущей машине.
  • Запуск графических приложений на удалённой машине.
  • Проксирование трафика — способ перенаправления трафика. Этакий быстрый и простой аналог VPN.
  • Обратный ssh — использую для проброса портов к системам, находящимися за NAT, когда лень настраивать firewall.

Далее вкратце разберу каждый пункт, и особенно пути эффективного и простого использования под Windows.
Читать дальше →
Всего голосов 82: ↑74 и ↓8+89
Комментарии133

Как в Smarkets улучшили мониторинг для своих Kubernetes-кластеров

Время на прочтение7 мин
Количество просмотров4.6K
Прим. перев.: автор этой статьи — ведущий инженер по инфраструктуре в Smarkets, что позиционирует себя как «одну из самых прибыльных [по доходам на каждого сотрудника] компаний в Европе». Работая с большой и чувствительной к мониторингу инфраструктурой на базе Kubernetes, инженеры компании нашли своё счастье с VictoriaMetrics, которая помогла им решить проблемы с Prometheus, возникшие после добавления новых K8s-кластеров.

Мониторинг внутренних endpoint'ов и API Kubernetes может быть проблематичным, особенно если стоит задача использовать автоматизированную инфраструктуру как сервис. Мы в Smarkets еще не достигли этой цели, но, к счастью, уже довольно близки к ней. Я надеюсь, что наш опыт в этой области поможет и другим реализовать нечто подобное.

Мы всегда мечтали о том, чтобы разработчики прямо «из коробки» получали возможность мониторинга для любого приложения или сервиса. До перехода на Kubernetes эта задача выполнялась либо с помощью метрик Prometheus, либо с помощью statsd, который пересылал статистику на базовый хост, где она конвертировалась в метрики Prometheus. Наращивая применение Kubernetes, мы начали разделять кластеры, и нам захотелось сделать так, чтобы разработчики могли экспортировать метрики напрямую в Prometheus через аннотации к сервисам. Увы, эти метрики были доступны только внутри кластера, то есть их нельзя было собирать глобально.

Эти ограничения стали «бутылочным горлышком» для нашей конфигурации, существовавшей до полного перехода на Kubernetes. В конечном итоге они заставили пересмотреть архитектуру и способ мониторинга сервисов. Как раз об этом путешествии и пойдет речь ниже.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии1

Бангалор: «кремниевое плато» и столица мирового аутсорсинга

Время на прочтение7 мин
Количество просмотров15K

Где-то в нулевых годах в английском языке появился неологизм «to bangalore / bangalored». Интернет-словари вполне однозначно расшифровывают его значение: to outsource (an employee, position, or function) to India, especially to Bangalore. Речь идёт о практике, когда американские и европейские компании увольняли своих айтишников или отказывались от услуг местных подрядчиков из экономии, передавая IT-задачи на аутсорс в Индию.

В большинстве случаев при «убангалорении» географически заказ отправлялся именно в город Бангалор, столицу южноиндийского штата Карнатака, лежащий на юго-востоке плато Декан. Как и описанный в предыдущей статье китайский Чжунгуаньцунь, Бангалор претендует на звание «Кремниевой долины Азии». И уж точно является аналогом калифорнийской Долины для всего индийского субконтинента. Ну а за расположение на плато Декан его альтернативным и уникальным названием стало «кремниевое плато».
Читать дальше →
Всего голосов 43: ↑43 и ↓0+43
Комментарии9

Мониторим ресурсы кластеров Kubernetes

Время на прочтение3 мин
Количество просмотров12K


Я создал Kube Eagle — экспортер Prometheus. Оказалось, крутая штука, которая помогает лучше разбираться в ресурсах маленьких и средних кластеров. В итоге я сэкономил не одну сотню долларов, потому что подбирал правильные типы машин и настраивал ограничения ресурсов приложений под рабочие нагрузки.


Я расскажу о преимуществах Kube Eagle, но сначала объясню, из-за чего вышел сыр-бор и для чего понадобился качественный мониторинг.

Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии2

Секреты observability. Часть 2: алерты

Время на прочтение8 мин
Количество просмотров14K

image
Фото Ricardo Gomez Angel, Unsplash.com


Используем метрики для отправки уведомлений через Slack


В предыдущей статье мы задеплоили оператор Prometheus с помощью helm-чарта и на примере набора сервисов увидели, как можно собирать метрики через prom-client и экспортеры. Как вы помните, цель observability (наблюдаемости) — узнать статус системы, поэтому нужные люди должны получать уведомления, когда значения метрик выходят за установленные пределы. Для этого надо настроить алерты.

Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии0

Как подружиться с OOM Killer: кейс Southbridge

Время на прочтение6 мин
Количество просмотров19K

OOM Killer — защитный механизм ядра Linux, призванный решать проблемы с нехваткой памяти. При исчерпании доступной памяти он принудительно «убивает» наиболее подходящий по приоритетам процесс, отправляя ему сигнал KILL. Сообщение об этом отображается в /var/log/syslog (Debian/Ubuntu) или /var/log/messages (Centos/Rhel).

Иногда OOM Killer может затрагивать важные процессы, нарушая работу проекта. Как исправить это, узнали у Сергея Юдина, инженера Southbridge. Ниже подробный кейс с примерами кода. 

Читать далее
Всего голосов 14: ↑12 и ↓2+12
Комментарии12

Go optimizations in VictoriaMetrics. Александр Валялкин

Время на прочтение22 мин
Количество просмотров6.7K

Предлагаю ознакомиться с расшифровкой доклада конца 2019 года Александра Валялкина "Go optimizations in VictoriaMetrics"


VictoriaMetrics — быстрая и масштабируемая СУБД для хранения и обработки данных в форме временного ряда (запись образует время и набор соответствующих этому времени значений, например, полученных через периодический опрос состояния датчиков или сбор метрик).


Всего голосов 18: ↑17 и ↓1+20
Комментарии6

Язык запросов для TSDB. Улучшаем PromQL (Александр Валялкин, VictoriaMetrics) (2019г)

Время на прочтение15 мин
Количество просмотров15K


Добрый день! Сегодня я вам расскажу немного про PromQL. Это язык запросов для time-series баз данных. Затем расскажу, как мы его усовершенствовали в разрабатываемой нами time-series базе данных VictoriaMetrics.

Всего голосов 9: ↑9 и ↓0+9
Комментарии2

VictoriaMetrics и мониторинг приватных облаков. Павел Колобаев

Время на прочтение9 мин
Количество просмотров34K


VictoriaMetrics — быстрая и масштабируемая СУБД для хранения и обработки данных в форме временного ряда (запись образует время и набор соответствующих этому времени значений, например, полученных через периодический опрос состояния датчиков или сбор метрик).

Всего голосов 15: ↑15 и ↓0+15
Комментарии3

Устройство и механизм работы Prometheus Operator в Kubernetes

Время на прочтение6 мин
Количество просмотров55K
В основу этой статьи легла наша внутренняя документация для DevOps-инженеров, объясняющая, как работает Prometheus под управлением Prometheus Operator в разворачиваемых и обслуживаемых кластерах Kubernetes.

image

С первого взгляда Prometheus может показаться достаточно сложным продуктом, но, как и любая хорошо спроектированная система, она состоит из явно выраженных функциональных компонентов и по сути делает всего три вещи: а) собирает метрики, б) выполняет правила, в) сохраняет результат в базу данных временных рядов (time series). Статья посвящена не столько самому Prometheus, сколько интеграции этой системы с Kubernetes, для чего мы активно используем вспомогательный инструмент под названием Prometheus Operator. Но начать всё же необходимо с самого Prometheus…
Читать дальше →
Всего голосов 29: ↑27 и ↓2+25
Комментарии2

Google's Shell Style Guide (на русском)

Время на прочтение14 мин
Количество просмотров22K

Предисловие


Какой Shell использовать


Bash единственный язык shell скриптов, который разрешается использовать для исполняемых файлов.


Скрипты должны начинаться с #!/bin/bash с минимальным набором флагов. Используйте set для установки shell опций, что бы вызов вашего скрипта как bash <script_name> не нарушил его функциональности.


Ограничение всех shell скриптов до bash, дает нам согласованный shell язык, который установлен на всех наших машинах.


Единственное исключение составляет если вы ограничены условиями того под что вы программируете. Одним из примеров могут стать пакеты Solaris SVR4, для которых требуется использование обычного Bourne shell для любых скриптов.


Когда использовать Shell


Shell следует использовать только для небольших утилит или простых скрптов-оберток.


Хотя shell-скриптинг не является языком разработки, он используется для написания различных утилит во всем Google. Это руководство по стилю является скорее признанием его использования, а не предложением использовать его в широком применении.

Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии10

Подготовка эффективной среды для написания bash сценариев

Время на прочтение17 мин
Количество просмотров35K

Bash, он же возрождённый shell, является по-прежнему одним из самых популярных командных процессоров и интерпретаторов сценариев. Как бы его ненавидели и не пытались заменить, всё равно он присутствует вокруг нас и никуда не собирается исчезать. Если вам приходится писать bash скрипты или вы только планируете этим заняться, данная статья написана для вас.

Читать далее
Всего голосов 25: ↑23 и ↓2+25
Комментарии17

Как писать bash-скрипты надежно и безопасно: минимальный шаблон

Время на прочтение8 мин
Количество просмотров68K

Скрипты на Bash. Как много в этом слове. Любому разработчику рано или поздно приходится их писать. Почти никто не скажет "да, я люблю писать bash-скрипты", и поэтому этой теме уделяют мало внимания.

Я не буду пытаться сделать из вас эксперта в Bash, а просто покажу минимальный шаблон, который поможет сделать ваши скрипты более надежными и безопасными.

Читать далее
Всего голосов 109: ↑109 и ↓0+109
Комментарии27

Выучить английский самостоятельно вполне реально, если вы айтишник. И вот почему

Время на прочтение5 мин
Количество просмотров53K

Я преподаю английский десять лет, но скажу честно: если вы разработчик, тестировщик, дизайнер – это значит, что вы сможете выучить английский сами. Конечно, нужны партнёры для общения, но ими могут быть ваши зарубежные клиенты или коллеги, интернет-знакомые, однокомандники в онлайн-играх. Но главное – получить необходимую базу – вы сможете самостоятельно, сидя дома за компьютером. И вот почему.

Читать далее
Всего голосов 29: ↑21 и ↓8+17
Комментарии95

Сбор и анализ логов с Fluentd

Время на прочтение12 мин
Количество просмотров87K
fluentd

Любому системному администратору в своей повседневной деятельности приходится иметь дело со сбором и анализом логов. Собранные логи нужно хранить — они могут понадобиться для самых разных целей: для отладки программ, для разбора инцидентов, в качестве подспорья для службы техподдержки и т.п. Кроме того, необходимо обеспечить возможность поиска по всему массиву данных.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии8

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность