ServerAdmin.ru
31K subscribers
569 photos
46 videos
22 files
2.82K links
Авторская информация о системном администрировании.

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

Второй канал: @srv_admin_live
Сайт: serveradmin.ru

Регистрация в РКН: https://vk.cc/cG1Urj
Download Telegram
🔥 Тест по высоким нагрузкам на Linux проходят всего лишь 60% участников 🔥

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

За 5 месяцев курса вы научитесь решать 3 глобальные задачи:
- Виртуализация с помощью таких инструментов, как Proxmox, KVM, oVirt, Xen
- Кластеризация сервисов и построение дисковых кластеров
- Построение высоконагруженных систем на базе Nginx

Время прохождения теста ограничено 20 минут.

ПРОЙТИ ТЕСТ —
https://clck.ru/3MGaJU

💣 Прошедшим тест подарим бесплатный тематический урок и доступ к лучшим открытым урокам курса на сайте.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На днях столкнулся в небольшой ошибкой в скриптах для бэкапа, когда настраивал их работу через cron. Я уже не раз упоминал, что в скриптах лучше всегда писать полные пути. Я это обычно соблюдаю, особенно для исполняемых файлов. А тут ошибся немного в другом.

Делал большой скрипт, где было много разных операций, в том числе одна из них была с rsync. Строка выглядела примерно так:

/usr/bin/rsync --progress -av --delete --delete-excluded --exclude-from=$EXCLUDE_LST -e "ssh -p 31008" user@1.2.3.4:/home/bitrix/ext_www/site01 /mnt/backups/site01/www --backup --backup-dir=/mnt/backups/site01/www_increment/`date +%Y-%m-%d`/`date +%H-%M-%S` 2>&1 >> /mnt/backups/site01/log.txt

Я тут раскрыл все переменные, чтобы было понятно, о чём идёт речь, кроме одной - $EXCLUDE_LST. Это файл со списком исключений. Задал его вот так:

EXCLUDE_LST=exclude-site01.lst

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

Потом заглянул в системную почту, и там всё понятно:

rsync: [client] failed to open exclude file exclude-site01.lst: No such file or directory (2)
rsync error: error in file IO (code 11) at exclude.c(1481) [client=3.2.7]

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

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

#linux #cron
Закончил на днях настройку одиночного выделенного сервера для внешнего бэкапа. Расскажу кратко, как это сделал. Как обычно, поясняю, что это не руководство, как правильно и как делать вам. Рассказываю, как сделал я в сложившихся обстоятельствах.

Нужен был бюджетный дедик для хранения 2-3 ТБ данных. Я обычно в Селектеле бюджетные сервера заказываю, но там сейчас некоторые проблемы в этом плане. Они вывели из работы все бюджетные сервера, где можно было использовать 4 диска. Остались только платформы с двумя дисками. Под бэкапы это не очень подходит, так как там в основном установлены диски небольших объёмов. Долго прикидывал и решил попробовать сервер с двумя 2 ТБ NVME дисками. Мне только такая конфигурация по объёму подходила, поэтому решил обойтись без рейда. Это будет не единственная копия бэкапов.

Как обычно поставил туда Proxmox Virtual Environment (PVE). И в этот раз решил сюда же на железо установить Proxmox Backup Server (PBS). Я обычно его в виртуалку ставлю, но тут для более удобного управления дисковым пространством решил развернуть прямо на хосте. Соответственно, его же и подключил сразу к PVE. Забегая вперёд скажу, что это удобно и никаких проблем не не доставило.

В PBS собираются бэкапы виртуалок на отдельный диск. Так как на сервере быстрые диски, ОЧЕНЬ УДОБНО их тут же на PVE разворачивать из бэкапов и проверять или использовать для каких-то тестовых целей. Отдельно отмечаю скорость. Обычно под бэкапы отдаются большие медленные хранилища для экономии средств. Мне ни разу не приходилось работать с бэкапами на таких быстрых дисках.

Отдельно поднял LXC контейнер с Debian и добавил в него Mount Point с директорией с хоста. Это тоже для удобной утилизации дисков. Получается, что и PBS, и контейнер используют обычные хостовые директории на разных дисках. Этот контейнер ходит по серверам и забирает оттуда сырые данные в виде файлов с хранением инкрементов и дампы баз данных.

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

Ещё раз отмечу скорость дисков. Очень удобно работать с бэкапами на быстрых дисках. Сравнение бэкапов, распаковка, проверка объёма, восстановление виртуалок. Всё происходит очень быстро. Сами сервера на обычных SSD дисках работают. Когда смотришь размер директории на пару сотен тысяч файлов и объёмом в 300-400 ГБ разница в подсчёте занимаемого места по времени раз в 5 отличается.

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

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

Ниже на скрине пример восстановления виртуалки с диском на 450 ГБ, где занято примерно 85% места. Она восстановилась за 16 минут из инкрементной копии прошлой недели. На момент восстановления пришлось создание бэкапов с одного из серверов, которое длилось 4,5 минуты в то же время, когда восстанавливалась виртуалка. Это немного затормозило процесс.

#backup
Открытый практикум Linux by Rebrain: Практика работы с RAID массивами

После регистрации мы отправим вам подарок! Вы сможете найти его в ответном письме.

👉Регистрация

Время проведения:


4 июня (среда) в 20:00 по МСК

Программа практикума:

▫️Сборка RAID массива
▪️Перенос данных на другой сервер
▫️Сборка RAID массива при отсутствии диска
▪️Восстановление RAID5

Кто ведёт?

Андрей Буранов — специалист по UNIX-системам в компании VK, входит в топ 3 лучших преподавателей образовательных порталов. 10+ лет опыта работы с ОС Linux и 8+ лет опыта преподавания.

Бесплатные практикумы по DevOps, Linux, Networks и Golang от REBRAIN каждую неделю. Подключайтесь!

Реклама. ООО "РЕБРЕИН", ИНН: 7727409582, erid: 2W5zFH5qE2t
Если у вас где-то всё ещё используется ОС Windows 7, то могу порекомендовать для неё современный браузер на базе Chromium, который до сих пор поддерживается и регулярно обновляется.

К примеру, у моих пожилых родителей до сих пор Windows 7 на их старом домашнем ноуте. Он их полностью устраивает. Для них, да и для меня, замена там системы будет большим стрессом, так как в их возрасте привыкать к новому сложно. А в контексте их потребностей и бессмысленно, так как придётся заменить сам ноут. Для оплаты коммуналки, просмотра фоток с Яндекс.Диска или видео с видеохостингов им и текущего устройства хватает.

Заметил, что у них Яндекс.Браузер давно перестал обновляться. Решил поискать замену. Нашёл open source проект supermium. Там есть сборки как под 64 так и 32 бита, с установщиком или портабельная версия в архиве.

Браузер работает нормально, никаких проблем на сайтах не заметил. Поддерживает стандартные расширения для Chrome. Можно пройти аутентификацию в Google, как в Chrome, и использовать синхронизацию. Автор регулярно обновляет браузер. Последняя сборка от 7-го мая.

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

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

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#windows
Вчера нужно было оперативно подключиться к консоли сервера Supermicro через его BMC (Baseboard Management Controller), чего я не делал уже очень давно. Даже не помню, сколько лет. Если сам покупаю или арендую сервера, то всегда предпочитаю другие бренды. Больше всего нравится Dell. В современных серверах вроде бы уже давно нет Java в BMC

Клиент для подключения тут на Java. Думаю, уже понятно, с чем я столкнулся 😁. Как меня парит эта фигня со старыми железками. Если постоянно с ними работаешь, то можно что-то придумать, типа виртуалки, где будет настроено всё необходимое. Для разовых задач мне сейчас такое не надо, так что у меня нет.

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

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

java unsigned application requesting unrestricted access

И тут же получил рабочее решение. Идём в директорию C:\Program Files\Java\jre1.8.0_361\lib\security. Находим файл java.security и комментируем в нём параметры, где упоминается disabled. В них речь идёт об устаревших алгоритмах и механизмах аутентификации. Именно они на старой железке не позволяют с ней работать на современных версиях ПО.

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

Раньше уже сталкивался с такими проблемами, но решал их каким-то более сложным путём. Искал другие машины, какие-то старые версии скачивал. Просто в голову не приходило загуглить решение. Не думал, что настройками можно обойтись.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#ошибка
🔥 Новый гайд для тех, кто строит карьеру в DevOps

Если хочешь понять, какие технологии учить, как устроен рынок и как не застрять в вечной подготовке — забирай нашу матрицу компетенций DevOps в 2025 году.

Что внутри:

▪️ Матрица компетенций DevOps-инженера — от Linux и CI/CD до GitOps и облаков
▪️ ТОП-10 технологий с подробным разбором, зачем каждая нужна
▪️ Главные тренды 2025 года
▪️ Пошаговая дорожная карта — как перейти в DevOps без опыта или из другой IT-роли

Всё основано на исследовании с 4100+ специалистами + анализ вакансий на hh + опыт инженеров Rebrain

🎁 И бонус — в гайде есть ссылки на бесплатные демо-дни и открытые практикумы. Можно сразу тестировать свои силы!

📥 Скачать гайд бесплатно: https://clck.ru/3MJNF5

Реклама. ООО "РЕБРЕИН", ИНН: 7727409582, erid: 2W5zFHbWf5S
Я уже когда-то вскользь упоминал про особенность работы почтовых клиентов, связанную с отображением аватаров отправителей. Конкретно о том, что нет какого-то единого стандарта и возможности указать свой аватар для всех получателей. В протоколах SMTP и IMAP вообще ничего не существует на эту тему. Многие, кто настраивают свои почтовые сервера не знают и не понимают этого. Точнее их пользователи, и просят сделать что-то подобное, но это невозможно.

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

То же самое умеет делать Outlook, подтягивая добавленные заранее аватары либо вручную пользователем для каждого отправителя, либо автоматически из AD. Насчёт последнего не уверен на 100%, но вроде бы видел такую информацию. Какие-то клиенты могут автоматически использовать favicon с сайта домена отправителя, если он там есть. Яндекс когда-то давно заявлял, что ищет и добавляет фото отправителя из соцсетей. Кто-то берёт изображения из сервиса Gravatar.

Когда последний раз упоминал об этом, мне в комментариях написали, что есть же стандарт BIMI (Brand Indicators for Message Identification), который как раз отвечает за отображение аватара почтового отправителя. Решил разобраться с этой темой и посмотреть, как она работает на практике. Забегая вперёд скажу, что стандарт этот скорее мёртв, чем жив.

Работает BIMI относительно просто. Он является частью настроек DMARC. Вы просто добавляете ещё одну TXT запись в DNS, типа такой:

default._bimi.example.com. IN TXT "v=BIMI1; l=https://example.com/logo.svg; a=https://example.com/vmc.pem"

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

В принципе, в таком виде это уже было бы удобно, но есть несколько важных нюансов. Для того, чтобы привязать изображение к вашему домену, вы должны получить VMC-сертификат (Verified Mark Certificate), подтверждающий, что вы реально имеете право использовать указанное изображение. По сути вам нужно зарегистрировать товарный знак и получить на него сертификат, выпущенный доверенным центром сертификации. Сделать его может, к примеру, тот же DigiCert, что выпускает обычные TLS сертификаты.

Требование получения VMC необязательное. В стандарте BIMI это опция. Но, к примеру, Gmail требует его наличие, чтобы отображать логотип у пользователей в почте. Мало того, что регистрация товарного знака и получение VMC – это значительная трата времени и денег, смыла в этом большого нет, потому что стандарт BIMI почти никто не поддерживает.

Ни один локальный почтовый клиент типа Thunderbird или Outlook его не поддерживают. Из крупных почтовых сервисов поддержка заявлена только у Gmail и Yahoo Mail и у некоторых небольших провайдеров. При этом Gmail требует VMC, который стоит ~$1,200 в год.

В общем, с аватарами в почте всё плохо. От BIMI толку почти нет, настраивать хлопотно, хотя для крупных западных компаний, сидящих плотно на Gmail, может и имеет смысл заморочиться.

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

#mailserver
Ранее я упоминал про различные движки, которые позволяют описывать диаграммы кодом. Они все собраны на сайте kroki.io, где их удобно оценить по визуальному оформлению и попробовать на готовых примерах что-то нарисовать.

Для движков с этого сайта есть расширение для VSCode - Markdown Kroki. С его помощью удобно рисовать схемы, так как тут же в соседнем окне можно открыть preview в режиме реального времени. Я попробовал, как это работает на наиболее актуальном по моему мнению движку для рисования схем сети - nwdiag.

Удобство такого подхода в том, что схема и все её изменения можно хранить в git репозитории. Я сделал для этого тестовый репо в gitflic, установил расширение, создал в репозитории файл в формате .md. Начал рисовать схему сети. Что получилось, можно посмотреть в репозитории или ниже на картинке. Попробовал основные возможности по оформлению.

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

Из-за его простоты ограничены возможности. Например, нельзя указать цвет фона. Из-за этого пришлось изменить тему VSCode с тёмной на светлую, иначе на тёмном фоне не видно чёрный шрифт, для которого тоже нельзя изменить ни размер, ни цвет. Это возможно только при экспорте в формат SVG. Там уже можно свои стили использовать.

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

Расширение только отображает схему в preview. Экспорт в картинку не делает, так что не получится её положить рядом с кодом. Смотреть придётся в редакторе или делать простенький пайплайн, создавай картинку на каком-то своём сервер с загрузкой в репозиторий.

Nwdiag можно установить через pip:

# pip install nwdiag

И потом из кода рисовать картинки:

# nwdiag diagram.diag

При коммите нужно будет забрать код md файла, обрезать первую и последнюю строки, где указан тип движка для расширения. То есть убрать нужно строки:

```nwdiag

и

```

А потом уже рисовать картинку через nwdiag. Можно там же и некоторую красоту навести, например, сразу изменяя шрифт:

# nwdiag -f /usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf diagram.diag

Из подобных сервисов есть Graphviz и Mermaid, но они более сложные в освоении и без акцента на сети. Там нужно будет заморочиться, чтобы оформить такую же наглядную схему сети, которая в nwdiag создаётся за 10 минут.

Ещё отдельно напомню, что схемы, нарисованные вручную в excalidraw тоже могут храниться в git репозитории и автоматически рендериться в картинки, на которые можно указывать ссылки в различных документах.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#схемы
⚡️ Itentis Cloud — не просто облако. Это адреналиновая инъекция для твоей инфраструктуры. Когда конкуренты сожрут тебя завтра, а свистопляска с настройками вымотает до трухи — мы твой огнетушитель в цифровом аду.

Чем дышит платформа:

🔥 Архитектура-терминатор
Не «безопасность», а бронированный сейф. Закрой рот на замок 2FA, отстреливай угрозы встроенными файрволами. Попробуй пробить — смешно будет.

💥 Контроль? Да ты здесь бог!
Рви шаблоны. Взламывай правила. Поднимай VPC, ломай сети через VNF, кроши лимиты AutoScaling-ом. Хочешь Kubernetes? Держи Managed — но уже с ножом в зубах.

🚑 Старт за 120 секунд или вернём бабки
Пока другие ковыряются с Docker’ом, ты уже рвёшь продакшн. Полноценный кластер быстрее, чем доставка пиццы. Не успел — мы чек сожжём.

🩹 Чем залили раны системы:

▪️ VPC — твоё цифровое гетто с колючей проволокой
▪️ VNF — NAT, балансировщики, файрволы как кувалда по цене скальпеля
▪️ IaC — инфраструктура кодом. Git push — и сервера горят синим пламенем
▪️ S3 — хранилище, где данные переживут ядерную зиму
▪️ Snapshots — откатывай косяки как в GTA чит-кодами

🗡 Хватит сосать лапшу провайдеров:
➔ 14 дней демо — не нравится? Свалим без вопросов. Привязка карты? Нет, это не мы.
➔ Миграция бесплатно — вырвем твои данные из лап гигантов. С кровью? Бесплатно.
➔ Инженер на линии — не болтовня, а технарь с SSH-ключом и ядром Linux в голове.

☠️ Не ной про «сложно». Жми → itentis.cloud
☢️ Канал с дозированной жестью → t.me/itentis

P.S. Если через 2 недели не захочешь убивать за legacy — мы сами отключимся. Стыдно не будет.

Реклама, ООО "АВАНГАРД", ИНН 7729648547, erid: 2SDnjd5n4Hs
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
В начале мая попался необычный канал, где автор с помощью ИИ озвучивает ролики в основном на тему преимущества C++ перед всеми остальными языками программирования. Я посмотрел несколько пародий, не особо понравилось, кроме вот этой с Лениным. Делюсь с вами. Оригинал тут:

▶️ https://www.youtube.com/watch?v=WPrSZvvt9Ow

Автор песни Папа может в СИ поспорил бы с текущей пародией:

Си плюс плюс или си шарп, это юнцам по вкусу
За решеткой есть жизнь и на кладбище есть плюсы
Но мой папа не любит эти модные приколы
Только чистый си по заветам старой школы


Так что Ленин тут не совсем прав, хоть и топит за права трудящихся программистов.

#юмор
Please open Telegram to view this post
VIEW IN TELEGRAM
Перебирал свои очень старые записи. У меня во времена, когда я учился и изучал новое, была привычка сохранять целиком html страницы с сайтов. Они так с тех пор и лежат все в одном архиве. Распаковал, посмотрел, с чего я всё начинал. В те времена это была система Freebsd. Я где-то с 5-й версии начал.

Для отказоустойчивости на уровне дисков использовались:

◽️gmirror
◽️atacontrol
◽️zfs

Меня постоянно спрашивают, почему я не использую zfs. Редко о нём пишу. На самом деле я его использую. И использовать начал очень давно ещё на Freebsd. Ставил на него системы. И это было очень удобно, так как zfs без проблем переживала аварийные отключения, в отличие от стандартной ufs. У меня был один шлюз на производстве, где постоянно были проблемы с электричеством, упсами. И аварийные отключения случались нередко. Шлюз на zfs очень хорошо их переживал. Всегда поднимался, не нужно было никого отправлять к консоли, проверять, почему не загрузился шлюз, не бились данные. Я считаю zfs нишевым продуктом и по умолчанию не использую, ставлю только там, где это действительно нужно и оправданно.

Первую почтовую систему собирал на связке Postfix + Courier-imap + Apache + Postfixadmin + Squirrelmail. В архиве будут две очень подробные статьи. Я по ним почти ничего не зная про почтовые сервера всё собрал и отладил.

В качестве файрвола использовался ipfw или pf. Последний не любил, казался более запутанным и нелогичным. Это пока не узнал про iptables 😁. Для контроля за трафиком пользователей использовался прокси сервер Squid и веб интерфейс к нему Sams.

До сих пор помню, что в составе Freebsd всегда был скрипт /usr/local/etc/ipfw_change_rules, позволяющий безопасно менять правила файрвола. Ты его запускаешь, открывается текстовый редактор правил. Меняешь правила, применяешь их. Скрипт задаёт тебе вопрос, всё ли ОК, применяем правила? Если тебя не отключило и ты подтверждаешь, то правила окончательно применяются, если подтверждения не дал, то через несколько минут правила откатываются обратно. В Linux в базе ничего подобного до сих пор нет. Надо либо какие-то свои скрипты колхозить, либо дополнительные пакеты ставить.

Первый свой мониторинг, ещё до знакомства с Zabbix, настраивал на базе rrdtool и базы Round Robin Database (RRD). Получались красивые графики. Красивее, чем в том время были в Zabbix. Да они и сейчас там, те, что устаревшие, а не на дашбордах.

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

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

Ниже отправляю архив. Может кому-то будет интересно поностальгировать, посмотреть старые инструкции. Скоро их не будет, писать некому, все у ИИ спрашивают. На чём только этот ИИ будет учиться новому пока не понятно. Может как в нейросети Natasha 😁 Сейчас почти все сайты, с которых сохранялись статьи, не работают. Исключение - lissyara и opennet.

#разное
WAICORE — хостинг, который не подведёт, со скидкой 25%

Для сисадминов, которые ценят:

— AMD Ryzen 9 9950X, а так же EPYC 9454— никаких тормозов
— NVMe-диски
— 5-10 Гбит/c — ширина канала зависит от тарифной линейки
— Надежная Германия — стабильные дата-центры

Преимущества:
- Быстрая поддержка
- Мгновенная активация
- Гибкая оплата. Crypto, СБП, PayPal

👉 Попробовать со скидкой 25%
👉 Написать нам для обратной связи:
@waicore_help
👉 Телеграм
канал @waicore
Подписчик прислал ссылку на очередной проект по мониторингу сайтов и TLS сертификатов к ним - Simple Site Monitor. Название полностью соответствует описанию. Ничего кроме кода ответа веб сервера и проверки содержимого страницы по заданному шаблону он не умеет. Разве что время жизни сертификата ещё проверяет. Больше ничего.

Проект собран в Docker, так что я его очень быстро развернул и попробовал:

# git clone https://github.com/DarthTigerson/Simple-Site-Monitor
# cd Simple-Site-Monitor
# docker compose up -d --build

Можно идти на порт сервера 8000 и проверять. Настраивать мониторинг можно как через файл конфигурации в директории ./data, так и через веб интерфейс. В целом, ничего особенного. Работает и работает. Не знаю, что мотивирует людей писать такие мониторинги. Их уже есть, много, хороших, бесплатных, более функциональных. Тут мне не понравилось то, что уведомления возможны только в Discord и Slack. Хоть и заявлен тип Custom с возможностью указать свой webhook, но с Telegram он не заработал. Пишет, что поддерживает только домены в зоне discord и slack.

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

📌UptimeRobot - это вообще сервис, но там есть бесплатный тарифный план, которого лично мне хватает. Использую его из-за удобного бесплатного приложения на Android.

📌Uptime Kuma - это наверное лидер среди подобных простых мониторингов, в которых не надо разбираться, а можно развернуть и сразу настроить. На него полно обзоров. Наверное каждый месяц какой-нибудь блогер пишет на него обзор. Можно развернуть у себя и пользоваться.

📌Gatus - этот мониторинг активно использую и по сей день. Писал про него, в том числе про то, как обновляю его конфигурацию с помощью простого пайплайна. Настроил там все интересующие меня проверки. Уведомления шлю в Telegram. Он у меня дублирует основные мониторинги на Zabbix, проверят их самих, плюс точки входа в наблюдаемые инфраструктуры, чтобы быстро узнать, что там всё отвалилось и лежит без внешнего доступа. Ну и по мелочи свои личные ресурсы. Мне он лично нравится за его дашборд-стартовую страницу, которая наглядна и не требует особой настройки. Просто по группам там всё скомпоновал.

А кто не видел, предлагаю свою сборную статью, где я собрал вообще все публикации о бесплатных мониторингах, которые были на обзоре в этом Telegram канале:

Топ бесплатных систем мониторинга

Если кто-то знает ещё интересные и функциональные мониторинги, поделитесь информацией.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#мониторинг
Выгодная инфраструктура с GPU для проектов любого масштаба

Если вы создаете приложения на базе ИИ, занимаетесь анализом данных и сложными вычислениями, вам знакома проблема нехватки ресурсов GPU. С Selectel о ней можно забыть. Здесь есть мощные серверы с видеокартами для решения задач любой сложности всего от 29 ₽/час: https://slc.tl/dy8vz

Почему стоит выбрать аренду серверов с GPU в Selectel:

Широкий выбор видеокарт: Более 20 моделей карт — от GTX 1080 до профессиональных H100 и А100 (40 и 80 ГБ).
Гибкость и масштабируемость: Мгновенное масштабирование под растущие нагрузки, стандартные и индивидуальные конфигурации с нужной видеокартой.
Высокий уровень безопасности: серверы Selectel соответствуют международным и российским стандартам безопасности, включая 152-ФЗ (УЗ-1), PCI DSS, ISO 27001, 27017 и 27018.

Разверните ваш проект на серверах с GPU в Selectel от 29 ₽/час: https://slc.tl/dy8vz

Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqwxphjb
🔝 ТОП постов за прошедший месяц. Все самые популярные публикации по месяцам можно почитать со соответствующему хэштэгу #топ. Отдельно можно посмотреть ТОП за прошлые года: 2023 и 2024.

Пользуясь случаем, хочу попросить проголосовать за мой канал, так как это открывает некоторые дополнительные возможности по настройке: https://t.me/boost/srv_admin.

📌 Больше всего пересылок:
◽️Статья про кластер на базе Proxmox VE (474)
◽️Набор правил iptables для защиты от небольшого DDOS (390)
◽️Добавление новых дисков в сервер (375)

📌 Больше всего комментариев:
◽️Примеры вранья ИИ (136)
◽️Странные сетевые ошибки на сервере (94)
◽️Подключение к старому железу с Java (90)

📌 Больше всего реакций:
◽️Статья про кластер на базе Proxmox VE (382)
◽️Добавление новых дисков в сервер (237)
◽️Bash-трюк для grep вывода из stderr (231)
◽️Проблемы с сетевухами Realtek в Linux (197)

📌 Больше всего просмотров:
◽️Подборка видео на тему IT (12544)
◽️Набор правил iptables для защиты от небольшого DDOS (11007)
◽️Ограничения на отправку почты в Postfix (10920)

#топ
Уже не первый раз сталкиваюсь с ситуацией, что получаешь арендную VPS, а там по умолчанию уже настроены сетевые интерфейсы и ipv4, и ipv6. Делаешь обновление системы через apt, он подключается по ipv6 и ничего не качает, пишет, что no longer has a Release file. Столкнулся вчера лично с репозиторием от Яндекса:

http://mirror.yandex.ru/debian bookworm main

В рунете он популярен. Я и сам всегда его использую. Не знаю, кто тут виноват, сам провайдер или Яндекс (позже выяснилось, что Яндекс, подробности в конце). Не вижу смысла разбираться и тратить время. В данном случае проще отключить ipv6. Это можно сделать разными способами. Можно конкретно apt заставить работать через ipv4. У него есть параметр для этого:

# apt -o Acquire::ForceIPv4=true upgrade

Постоянно так писать не будешь, можно добавить в конфигурацию, создав файл /etc/apt/apt.conf.d/disable-ipv6 следующего содержания:

Acquire::ForceIPv4 "true";

Я лично поступил проще. Отключил ipv6 на уровне системы. Добавил в /etc/sysctl.conf пару параметров:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

И применил их:

# sysctl -p

Настройки ipv6 на сетевом интерфейсе сразу пропали, apt успешно заработал по ipv4.

Более радикальный способ отключения через GRUB, но тогда придётся обновлять загрузчик, пересобирать initramfs. Плюс, понадобится перезагрузка. Для этого в его конфиг /etc/default/grub, конкретно в параметр GRUB_CMDLINE_LINUX, нужно добавить значение ipv6.disable=1. Если там уже указаны другие значения, то перечислены они должны быть через пробел. Примерно так:

GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet ipv6.disable=1"

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

# dpkg-reconfigure grub-pc

Заметил ещё такую особенность. До того, как отключил ipv6, заметил, что apt работает то по ipv4, то по ipv6. Можно было несколько раз его запустить и получить желаемый результат. Не знаю, с чем это может быть связано. Возможно первый резолв доменного имени идёт на DNS запись AAAA, а если подключение неудачно, то потом на A. Но не уверен, что это так. Просто догадки.

Уже после написания заметки решил повнимательнее разобраться, что реально происходит в apt при обращении по ipv6 и ipv4. Для этого сделал два отдельных запроса по разным протоколам:

# apt -o Debug::Acquire::http=true -o Acquire::ForceIPv4=true update
# apt -o Debug::Acquire::http=true -o Acquire::ForceIPv6=true update

Первый нормально отрабатывает и загружает файл InRelease. А во втором случае репозиторий Яндекса отвечает:

Answer for: http://mirror.yandex.ru/debian/dists/bookworm/InRelease
HTTP/1.1 404 Not Found
Server: nginx/1.24.0 (Ubuntu)
............................................................
Err:2 http://mirror.yandex.ru/debian bookworm Release
 404 Not Found [IP: 2a02:6b8::183 80]

То есть DNS запись для mirror.yandex.ru есть:

# dig +short mirror.yandex.ru AAAA
2a02:6b8::183

Но Nginx, который раздаёт контент, не настроен для работы по ipv6. Не знаю, зачем так сделали. Если не настроили Nginx, зачем настроили ipv6? 🤷‍♂️ Может какие-то временные проблемы.

☝️В целом, с ipv6 такое бывает, поэтому если не используете, лучше сразу отключить.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#linux #network #ipv6
⭐️🚀 Хотите прокачаться в работе с Linux? Пора проверить, готовы ли вы к следующему шагу!

Пройдите короткое тестирование и узнайте, готовы ли вы к повышению квалификации на курсе «Administrator Linux. Professional». Мы обучаем продвинутым навыкам администрирования Linux: от установки и настройки ОС до оптимизации работы и управления безопасностью.

🎁 Успешное прохождение вступительного теста — это ваш пропуск к записям открытых уроков и скидке на большое обучение.

❗️Доступ к записям откроется для тех кто успешно пройдет тест. Уроки находятся на лендинге курса.

👉 Оцените свой уровень знаний прямо сейчас: https://clck.ru/3MQasb

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576