ServerAdmin.ru
28.2K subscribers
248 photos
32 videos
10 files
2.58K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Продолжу тему мониторинга. Думаю многие уже заметили, что это одна из самых популярных тематик на канале. Вообще, я давно заметил, что мониторинг это то, чем мне нравится заниматься больше всего остального. И для этого есть несколько причин. Во-первых, мониторинг чаще всего не критически важный сервис, поэтому им можно заниматься планово, без авралов и аварий. Во-вторых, это творческая деятельность, где надо постоянно придумывать нетиповую реализацию. Ну а в-третьих, это просто красиво, смотреть всякие графики, делать дашборды, наблюдать метрики.

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

1️⃣ Если у вас срочные триггеры висят незакрытыми днями и неделями, можете смело их отключать или менять. У меня это постоянно происходит. Изначально настраиваешь мониторинг и думаешь, что вот на это надо реагировать. А потом то времени нет, то отложишь и забудешь, а по факту оказывается, что алерт не очень то и важный. Периодически захожу в мониторинг и прорабатываю подобные триггеры.

2️⃣ Часто нет необходимости реагировать на метрики, за которыми стоят вышестоящие метрики, напрямую зависящие от первых. Лучше делать оповещения на более высокоуровневые сущности. Поясню на конкретном примере.

Допустим, вы мониторите доступность сайтов (старая, но полностью актуальная статья про Zabbix, так как там модуль мониторинга сайтов с тех пор не менялся). Для них есть метрики, следящие за кодами ответов веб сервера, за скоростью ответов и за полосу пропускания, с которой сайты отдают данные. Сайты живут на отдельном сервере. На этом сервере есть триггеры на нагрузку на процессор, на память и т.д.

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

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

❗️По первому пункту я написал, но при этом у меня есть вот такие триггеры (см. картинку). Вы что делаете с такими висюнами? Отключаете или так же месяцами висят?

#zabbix #мониторинг
Обновил и актуализировал большую статью на сайте:

Построение ИТ инфраструктуры небольшого офиса
https://serveradmin.ru/postroenie-it-infrastruktury-nebolshogo-ofisa

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

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

Статья дискуссионная. Я поделился своим опытом, который не обязательно принимать за образец и повторять. Можно просто принять к сведению информацию или указать на недостатки.

#подборка
Ещё один мем из комментариев к сайту. У меня есть статья с настройками iptables. И там все правила я привожу в виде картинок, чтобы их нельзя было скопировать. А уже в конце прикладываю текстовый файл со всеми правилами.

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

В подобную ловушку я попал как-то раз сам. Есть другая статья, где правила фаервола написаны текстом. Я их оттуда копирую и применяю, так как правила мои и я их много раз использовал, уверен в них.

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

#мем
​​Немного тематического юмора в выходной день. Видео с небольшими эпизодами из жизни, которые смогут в полной мере понять только айтишники. Папа просит установить драйвер, мама рассказывает а выигрыше, о котором ей сообщили по почте, папа просит подсказать, где найти загруженное видео.
https://www.youtube.com/watch?v=3XliP_OTjuk

А вот зарисовочка на тему AI и всяких ChatGPT. Досмотрите до конца, там самое интересное как раз по нашей, админской, части. Я прям посмеялся.
https://www.youtube.com/watch?v=KuvOwbtSeHk

Видео пародия на Цельнометаллическую оболочку Стенли Кубрика. Системные администраторы проходят стажировку в специальном подготовительном лагере.
https://www.youtube.com/watch?v=AD9NX_EXhXM

У этой компании много забавных роликов на канале. Я почти все их посмотрел, что-то тут публиковал в разное время. Жаль, что подобного юмора очень мало. Если кто-то знает примеры подобных видео, поделитесь в комментариях.

#юмор
Бюджетные серверы на базе десктопных процессоров

А вы знали, что в @Selectel есть возможность арендовать выделенный бюджетный сервер линейки Chipcore? Это полностью изолированные серверы, размещенные в защищенных дата-центрах под круглосуточным наблюдением, но по цене ниже, чем обычные выделенные серверы Selectel.

Теперь при аренде последних конфигураций Chipcore вы можете связать серверы по локальной сети. Эта особенность позволяет создавать кластеры для решения задач с высокими требованиями к производительности и отказоустойчивости: например, для развертывания Kubernetes или работы с БД и 1C.

Выбрать сервер можно из готовых конфигураций и арендовать по доступной цене на срок от одного дня. При долгосрочной аренде на 3, 6 или 12 месяцев вас ждут скидки до 15%.

Регистрируйтесь по ссылке и заказывайте бюджетный выделенный сервер из линейки Chipcore: https://slc.tl/u9zgs

Реклама ООО Селектел Pb3XmBtztB8Yaa8eevEtbs5smaJ9q77y7EAE4p8
У меня была заметка про мониторинг метрик из api iiko через zabbix. Там была сложность в том, что нужно было постоянно обновлять временный токен и как-то его использовать для запросов. Я предложил свою реализацию обновления токена и записи его в макрос шаблона с помощью обычного bash скрипта.

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

Через веб проверку первым шагом обновляется токен и записывается во временную переменную, а на втором шаге этот токен через post запрос к Zabbix api записывается в макрос шаблона. Получается очень удобное и красивое решение, которое полностью хранится на сервере Zabbix в виде хоста и шаблона и не требует никаких скриптов.

Автор этого способа сам немного затупил и реализовал его слишком сложно. Я в итоге разобрался и аккуратно реализовал эту идею. Прикладываю экспорт хоста с веб проверкой для получения и обновления токена и сам шаблон с получением и обработкой метрики. Можете их использовать как пример или заготовку под любые проверки такого типа. Не забудьте указать свои макросы для корректной работы.

Хост: https://serveradmin.ru/files/zabbix/HOST-IIKO_API_Token_Update.yaml
Шаблон: https://serveradmin.ru/files/zabbix/TEMPLATE-IIKO_API.yaml

#zabbix
Я обновил и актуализировал популярную на сайте статью по настройке сервера 1С:

Установка и настройка 1С на Debian с PostgreSQL
https://serveradmin.ru/ustanovka-i-nastrojka-1s-na-debian-s-postgresql/

Статья подробная. Позволяет простым копированием и ставкой настроить указанную связку. В ней показаны:

Установка и настройка свежей версии сервера 1С и PosgtreSQL 15 на Debian 11.
Пример создания баз данных на этом сервере и подключение к ним.
Бэкап и обслуживание postgresql баз утилитами сервера бд. Рассказываю про свой подход к этому процессу и привожу скрипты автоматизации. 
Как я тестирую восстановление из sql дампов и делаю контрольную проверку в виде выгрузки баз в .dt файлы в консоли Linux. Всё это автоматизируется скриптами. 
Рассказываю про свои подходы к мониторингу этих бэкапов и выгрузок, чтобы всегда быть уверенным в том, что у тебя есть гарантированно рабочие бэкапы.

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

#1с #postgresql
​​Некоторое время назад писал про Postman для работы с API. Мне он показался тяжёлым и избыточным по функционалу для простой работы, которую я обычно делаю.

И вот на днях в рассылке вижу информацию о полностью open source аналоге (так его позиционируют авторы) Postman — Bruno. Они даже отдельную заметку написали Bruno Vs Postman. Я заинтересовался и попробовал его.

Программа мне понравилась. Весь функционал, что я использовал в Postman, там есть (переменные, запросы, заголовки и т.д.). А существенные плюсы Bruno могу отметить следующие:

1️⃣ Сохранение проектов в текстовом виде. Можно открыть все сохранённые запросы блокнотом и посмотреть. Благодаря этому все настройки и данные можно хранить в git, выбирая для каждого проекта свою директорию.

2️⃣ Никаких привязок к онлайн сервисам. Полностью десктопное приложение, для которого не нужны никакие регистрации.

3️⃣ Более шустрое приложение, хотя это тот же JavaScript и скорее всего Electron.

Проект свежий. Как я понял, его недавно представили публике. Первый релиз был в октябре 2022 г. Есть расширение для Vscode, которое обеспечивает подсветку синтаксиса для текстовых файлов .bru, в которых хранит информацию Bruno.

Сайт / Исходники

#api #devops
​​Вчера была рассылка от Zabbix с информацией о том, что вышел релиз версии 6.4. Сразу уточню, что это не LTS версия, срок её поддержки пол года. Если вам не нужны нововведения этой версии, то обновляться большого смысла нет. Лучше дождаться LTS 7.0. Его обещают к концу 2023 года. Я как раз с его выходом хочу обновить весь свой раздел на сайте с Zabbix. Там как раз и Debian 12 уже зарелизится.

Перескажу нововведения в 6.4, с которыми можно ознакомиться в пресс релизе - What’s new in Zabbix 6.4.

Автоматическое сопоставление групп и ролей пользователей. Актуальная штука для крупных установок. Теперь работает автоматическое сопоставление локальных групп и ролей в Zabbix и групп в LDAP и SAML. Можно явно указать, что пользователи LDAP с такими-то атрибутами являются членами таких-то групп в Zabbix и имеют доступ к определённым типам media.

Зависимость событий. Можно указывать зависимости событий друг от друга. Например, один триггер может быть указан как причина для другого триггера. Этот функционал немного похож на зависимости триггеров, только работает для других целей. Тут мы не подавляем зависимые триггеры, а выстраиваем цепочку событий. Например, увеличилась нагрузка на CPU, следом увеличилось время выполнения запросов в БД, а потом выросло время обработки заказа в магазине. Из описания не понял, как это выглядит на практике. Для меня не очевидно, как можно автоматически выстраивать такие события. Транзакции могут буксануть и от нехватки памяти, а могут и нет.

Настройки синхронизации zabbix proxy и active agent. Появились новые параметры, управляющие интервалами обновления конфигурации для zabbix proxy и активного агента. Раньше использовались какие-то неизменяемые интервалы. Если не ошибаюсь, там минута была. Теперь хоть 1 секунду ставь.

Совместимость версий Proxy и сервера. Теперь нет необходимости каждый раз обновлять Proxy при обновлении сервера. Раньше это было обязательно. Прежде чем обновить сервер, нужно было на ту же версию обновить все Proxy, иначе они не заработают с новой версией сервера. Теперь заработают в рамках одной ветки, либо прошлой LTS ветки. Если у вас прокси 6.0, а сервер хотите обновить до 6.4, прокси можно не обновлять. И если у вас LTS 7.0, а прокси не ниже 6.0, то тоже можно не обновлять прокси. А вот если у вас будет сервер 7.2, то прокси уже должна быть не ниже 7.0.

Улучшение сбора метрик по SNMP. Улучшен механизм массового сбора метрик по SNMP. Добавлена поддержка операций типа GetBulk. Для этого добавлен новый айтем walk[OID1,OID2,...]. Также добавлена новая предобработка, которая bulk запросы преобразует в json. Стандартные шаблоны обновлены с использованием нового айтема.

Новое меню веб интерфейса. Немного переработали основное меню веб интерфейса. Опять разом устарели все старые статьи 😔.

Потоковая передача метрик по HTTP. Появилась возможность передачи метрик в брокеры сообщений типа Kafka, RabbitMQ и т.д. Настраивается в новом разделе Administration ⇨ General ⇨ Connectors. Теперь будет проще встраивать Zabbix в современные информационные системы.

Версионирование шаблонов. Наконец-то появилось версионирование. Раньше версию можно было посмотреть только если её указали в описании к шаблону. Теперь у каждого шаблона будет обязательный атрибут с номером версии. Можно быстро понять, какие шаблоны на твоём сервере устарели и могут быть обновлены. Для меня это самое полезное нововведение, хотя оно и кажется простым.

Фреймворк для создания виджетов. Теперь виджеты можно создавать самостоятельно. Они преобразованы в модули, которые можно создавать и добавлять.

Выбор интерфейса для простых проверок. В айтеме с простой проверкой (simple check) можно выбрать интерфейс, если их несколько, с которого будут выполнять проверки.

Преднастройки для почтовых сервисов. Для Gmail, Gmail relay, O365, O365 relay и Generic SMPT.

Новые шаблоны: ❗️OS processes by Zabbix agent, Veeam Backup and Replication, BMC Control-M и др.

Очень жду обновление модуля веб проверок, но пока его нет.

#zabbix
​​▶️ На канале RomNero вышла серия из двух видеороликов на тему HA Load Balancer. Очень рекомендую посмотреть тем, кому близка эта тема. Я там хоть и не узнал ничего нового, но с удовольствием посмотрел, так как материал сделан очень качественно.

В первом ролике даётся обзорная и наглядная информация по теории балансировки нагрузки на веб сервера и в целом на современные веб системы. Автор подготовил наглядную визуализацию и подробно всё описал. У него получается рассказывать просто, понятно и информативно. Хорошая речь и дикция, приятно слушать.

Во втором ролике рассмотрена практическая часть по настройке Load Balancer на базе HAproxy и Keepalived. Автор на наших глазах настраивает и демонстрирует работу двух балансировщиков нагрузки, подключенных к двум веб серверам. Используется один плавающий IP на базе vrrp протокола. Работу перехода IP адреса от одного балансировщика к другому автор демонстрирует на примере падения службы haproxy на одном из балансировщиков.

❗️В комментариях ко второму видео было много рекомендаций на панель управления HAProxy, про которую я неоднократно писал — Roxy-WI. С её помощью можно реализовать тот же функционал, что показал автор, только с помощью веб интерфейса.

Рекомендую канал автора, кто ещё не подписан. У меня здесь было много видео от него. Сам я их все смотрю. Там в основном база даётся, но мне всё равно нравится.

#webserver #haproxy
​​Существует непримечательная на первый взгляд программа под Windows — Open Hardware Monitor, которая показывает типовую информацию по загрузке системы, а также информацию с датчиков железа (температура, напряжение, обороты вентиляторов и т.д.).

Эта программа попала в поле моего зрения много лет назад, когда нужно было настроить мониторинг температуры железа на сервере под Windows. В Open Hardware Monitor нашлась консольная версия, которая передаёт показания в консоль, откуда их удобно забирать в Zabbix. Я реализовал это с помощью простых bat скриптов.

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

Есть свежий форк от 22 августа 2022 года, который можно использовать для этих же целей. К сожалению, в последних версиях я не увидел консольной программы, но вместо этого основная программа умеет работать как сервис и записывать показания сенсоров в csv файл. По идее, это даже удобнее в реализации мониторинга. CSV файл без проблем парсится. Помимо этого данный форк умеет запускать веб сервер и отображать все метрики через браузер, откуда их тоже можно тем или иным образом извлекать.

Конкретно для меня эта программа потеряла актуальность, потому что очень давно не настраивал Windows сервера на голое железо. К тому же чаще всего сервер имеет BMC (Baseboard Management Controller, т.е. ilo, idrac и подобное), откуда можно забрать все необходимые метрики либо по IPMI, либо по SNMP. Но если у вас обычный самосбор или простенький сервер без BMC, то эта программа может выручить. Я её использовал на самосборах под бесплатным Hyper-V, когда обслуживал офисы.

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

⇨ Сайт / Свежий форк / Форк консольной версии

#windows #мониторинг
Обычно, когда надо проверить какой-нибудь TCP порт, я беру telnet и отправляю запрос на этот порт. Синтаксис одинаковый на всех системах. Выглядит это примерно так:
# telnet 1.1.1.1 53
Connected to 1.1.1.1.
Escape character is '^]'.

Как вы знаете, telnet не работает с UDP, что логично. Установить соединение по UDP невозможно, так как по UDP пакеты просто отправляются, без подтверждения получения и установки соединения. Это не двусторонний обмен, как в TCP. Так что гарантированно и быстро проверить доступность UDP порта не всегда просто.

Отправить UDP пакет можно с помощью утилиты ncat:
# nc -z -v -u 212.193.62.10 53
По идее, она показывает статус open или closed, но я не знаю, как конкретно работает эта проверка. Зачастую отправляешь пакет в точно неиспользуемый порт, и получаешь в ответ, что он open. Можно быть уверенным только в том, что nc отправила тестовый пакет. Более надёжно можно сделать проверку через nmap, но сегодня не об этом.

Если нужно просто и быстро отправить какой-то UDP пакет, то сделать это можно через псевдо устройства Linux:
# echo -n "test" > /dev/udp/1.1.1.1/53
Эту команду удобно использовать, когда идёт отладка каких-то правил в firewall. Она гарантированно сразу же отправляет пакет, без каких-либо дополнительных параметров, проверок, ожиданий и т.д. Отправил пакет, он тут же на счётчик правила прилетел.

Вообще, с помощью /dev/tcp и /dev/udp можно делать всякие неочевидные штуки. Например, посмотреть точное время:
# cat </dev/tcp/time.nist.gov/13

Или получить ответ от веб сервера:
# exec 5<>/dev/tcp/eth0.me/80
# echo -e "GET / HTTP/1.0\n" >&5
# cat <&5
Мы связали файловый дескриптор с веб сервером eth0.me, отправили через дескриптор GET запрос и вывели ответ. Там будет ваш внешний ip адрес.

#linux #terminal
​​Вчера изучал тему веб панелей для почтовых серверов. Сам постоянно использую Roundсube, но хотелось поискать что-то более функциональное. Про SOGo знаю, мне она не нравится. С удивление обнаружил, что проект SquirrelMail всё ещё жив. Не так давно было обновление для поддержки php 8. Этот веб интерфейс я настраивал на первых своих почтовых серверах ещё под Freebsd 6.2, как сейчас помню эту версию.

На глаза попался проект Cypht, который сразу заинтересовал. Это web клиент для imap и rss. Отличительная особенность его в том, что в нём можно подключать много ящиков одновременно, и он умеет выводить письма из них в едином списке. Причём в этом списке можно сразу же отвечать от имени той учётной записи, на которую пришло письмо.

У меня самого очень много почтовых ящиков. Вопрос с чтением почты я решаю пересылкой из этих ящиков на один. В целом, нормально всё работает, но если вдруг какая-то пересылка отвалится, я об этом не узнаю. Так что функционал объединения кучи ящиков в единый веб интерфейс меня заинтересовал.

Я установил и попробовал эту веб панель. Сразу скажу, что интерфейс так себе. Не особо понравился. Но заявленный функционал реализован. Подключил три ящика и 2 rss ленты. Как я и сказал в начале, Cypht поддерживает rss, так что является по сути ещё и читалкой этих лент. При этом он умеет в единый список объединять события как из почты, так и из rss лент.

Проект не сказать, что сильно активный, но тем не менее, обновления выходят уже много лет. В github много issues. То есть люди пользуются и считают его полезным. Я провозился с ним пол дня. Вряд ли сам буду использовать. Помимо почты и rss там ещё можно вести календари, подключать контакты из того же gmail.

Интерфейс мобилен (написан на php, для работы нужна mysql база), так что можно со смартфона смотреть. Эта веб панель наверно будет более актуальна для тех, кто не только читает из кучи ящиков, но ещё и отвечает от них же. Там этот функционал реализован удобно. Либо сразу отвечаешь из общей ленты под конкретным аккаунтом, либо создаёшь новое письмо и выбираешь учётку, от которой оно будет отправлено, как в microsoft outlook.

Хотел поинтересоваться, какая веб панель для работы с почтой вам нравится больше всего?

Сайт / Исходники / Docker (неофициальный)

#mailserver
VPN, RDP, VDI — это прошлый век. Попробуйте ZTNA для удаленного доступа!

Избавьтесь от лишнего «железа» и сложных схем туннелирования, администрируйте из личного кабинета без привязки к офису, создайте безопасную и удобную среду для работы сотрудников всего за 10 минут.

Оставьте заявку на бесплатную презентацию сервиса до конца марта и получите 1 месяц демо-доступа ко всем функциям сервиса: https://clck.ru/33bZ2r

#реклама
У меня есть личная подборка скринов после некоторых аварий крупных хостеров. Парочку из них я застал лично. Это Ihor и Masterhost. Оба лежали несколько дней из-за войн собственников, которые сопровождались обесточиванием дата центров.

В этой же подборке ещё пару аварий уже не помню кого. Я читал форумы и немного поскринил то, что показалось интересным. К публикации только 10 картинок можно приложить, так что тут не все. Может потом ещё сделаю.

А у вас умирали хостеры? Кто-нибудь погорел в OVH в 2021? По-моему это самое эпичное было. Помню как там сгорела (из известных мне) инфраструктура Okmeter.

#мем