Вчера в публикации про сетевые проблемы в комментариях подписчик упомянул проблемы с сетевой картой Realtek. Я сталкивался с ними несколько раз и прилично натерпелся, так что мне есть что сказать. Возможно кому-то это сэкономит время, если столкнётся с похожими проблемами.
Проблема эта всплывает, когда ставишь Proxmox на десктопное железо. Я нередко его использовал для различных вспомогательных задач – тестирование бэкапов, временный запасной гипервизор и т.д. В прод ставить не рекомендую, хоть и будет работать, и может показаться это выгодным. Я всегда настаивал на покупке хоть какого, старого, бушного, но сервера на полноценной серверной платформе с IPMI.
Итак, проблемы могут возникнуть, когда у вас будет примерно такая сетевая карта:
По умолчанию у вас будет установлен драйвер r8169. Проверить так:
С ним сетевая карта может быть как вообще недоступна, так и на вид полностью рабочей, но с вероятностью непрогнозируемого зависания. Причём зависать она может очень редко, например, раз в месяц в момент сильной сетевой загрузки. Выглядит это так, что сеть как-будто вообще не работает. Причём проявляться это может как на гипервизоре, так и в каких-то отдельных виртуальных машинах. Они перестают быть доступны по сети.
Проблема может через 10 минут пройти сама, а может и нет, и поможет только перезагрузка. В логах могут быть какие-то упоминания проблем с сетевой картой, типа таких:
А может и вообще ничего не быть. Известное мне решение только одно – использовать драйвер r8168. Это решение широко освещено на официальном форуме Proxmox. Там можно найти множество веток с обсуждением подобной проблемы.
Драйвер можно скачать самому и собрать его. Взять можно, например, тут. Там есть инструкция по сборке, она несложная. Можно взять готовый пакет для Debian из non-free репозитория: r8168-dkms. Установить его можно так. Добавляем себе в систему репозитории non-free и non-free-firmware. То есть в файле
Ставим необходимые пакеты:
Во время установки r8168-dkms должен собраться и установиться драйвер r8168, а предыдущий r8169 отключиться и добавиться к заблокированным во время загрузки.
Есть ещё один пакет с этим драйвером, собранный специально под PVE. Я не знаю, чем он отличается от обычного дебиановского. Брать тут. Его достаточно просто скачать и установить:
Описанные выше действия могут как помочь, так и нет. Например, на одном сервере я вообще не видел сетевой карты. После установки драйвера r8168, она определялась в системе и начинала нормально работать. А иногда ничего не менялось и сеть как отваливалась периодически, так и продолжала отваливаться. Тогда приходилось делать что-то типа такого:
Ставил подобный bash скрипт в cron на исполнение каждую минуту. В моменты редких зависаний он перезапускал сеть и всё продолжало нормально работать.
☝️ А резюме всего этого такое. Если у вас сетевая карта Realtek, то либо замените её, либо не ставьте туда Proxmox. Есть высокая вероятность, что нормально он всё равно работать не будет, а вы только время потеряете на отладку и решение проблем.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox #ошибка
Проблема эта всплывает, когда ставишь Proxmox на десктопное железо. Я нередко его использовал для различных вспомогательных задач – тестирование бэкапов, временный запасной гипервизор и т.д. В прод ставить не рекомендую, хоть и будет работать, и может показаться это выгодным. Я всегда настаивал на покупке хоть какого, старого, бушного, но сервера на полноценной серверной платформе с IPMI.
Итак, проблемы могут возникнуть, когда у вас будет примерно такая сетевая карта:
# lspci | grep Ethernet
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
По умолчанию у вас будет установлен драйвер r8169. Проверить так:
# lsmod | grep r81
r8169
С ним сетевая карта может быть как вообще недоступна, так и на вид полностью рабочей, но с вероятностью непрогнозируемого зависания. Причём зависать она может очень редко, например, раз в месяц в момент сильной сетевой загрузки. Выглядит это так, что сеть как-будто вообще не работает. Причём проявляться это может как на гипервизоре, так и в каких-то отдельных виртуальных машинах. Они перестают быть доступны по сети.
Проблема может через 10 минут пройти сама, а может и нет, и поможет только перезагрузка. В логах могут быть какие-то упоминания проблем с сетевой картой, типа таких:
[01448.532276] r8169 0000:09:00.0 enp3s0: rtl_rxtx_empty_cond == 0 (loop: 42, delay: 100).
А может и вообще ничего не быть. Известное мне решение только одно – использовать драйвер r8168. Это решение широко освещено на официальном форуме Proxmox. Там можно найти множество веток с обсуждением подобной проблемы.
Драйвер можно скачать самому и собрать его. Взять можно, например, тут. Там есть инструкция по сборке, она несложная. Можно взять готовый пакет для Debian из non-free репозитория: r8168-dkms. Установить его можно так. Добавляем себе в систему репозитории non-free и non-free-firmware. То есть в файле
/etc/apt/sources.list
должна быть строка:deb http://ftp.ru.debian.org/debian bookworm main contrib non-free non-free-firmware
Ставим необходимые пакеты:
# apt install pve-headers r8168-dkms
Во время установки r8168-dkms должен собраться и установиться драйвер r8168, а предыдущий r8169 отключиться и добавиться к заблокированным во время загрузки.
Есть ещё один пакет с этим драйвером, собранный специально под PVE. Я не знаю, чем он отличается от обычного дебиановского. Брать тут. Его достаточно просто скачать и установить:
# wget https://github.com/nathanhi/r8168/releases/download/pve8%2F8.054.00-1-bpo12/r8168-dkms_8.054.00-1-bpo12_all.deb
# dpkg -i r8168-dkms_8.054.00-1-bpo12_all.deb
Описанные выше действия могут как помочь, так и нет. Например, на одном сервере я вообще не видел сетевой карты. После установки драйвера r8168, она определялась в системе и начинала нормально работать. А иногда ничего не менялось и сеть как отваливалась периодически, так и продолжала отваливаться. Тогда приходилось делать что-то типа такого:
#!/bin/bash
IP="10.20.1.2"
if ! ping -c 1 -W 5 "$IP" > /dev/null 2>&1; then
echo "$(date): $IP недоступен. Перезапуск сетевой службы..."
systemctl restart networking
else
echo "$(date): $IP доступен."
fi
Ставил подобный bash скрипт в cron на исполнение каждую минуту. В моменты редких зависаний он перезапускал сеть и всё продолжало нормально работать.
☝️ А резюме всего этого такое. Если у вас сетевая карта Realtek, то либо замените её, либо не ставьте туда Proxmox. Есть высокая вероятность, что нормально он всё равно работать не будет, а вы только время потеряете на отладку и решение проблем.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#proxmox #ошибка
GitHub
GitHub - mtorromeo/r8168: Linux device driver for Realtek Ethernet controllers (unofficial mirror)
Linux device driver for Realtek Ethernet controllers (unofficial mirror) - mtorromeo/r8168
Просматривал на днях блог Zabbix. Обратил внимание на статью про интерактивные дашборды. Они вроде бы в 7-й версии появились. Может чуть раньше, уже точно не помню. Я анонсы и картинки посмотрел, немного потыкался у себя, но настраивать ничего не стал. Нужды особой не было. А тут понравились картинки, решил всё же разобраться и настроить.
В итоге всё получилось и это действительно удобно. Сделал себе основной дашборд с тремя страницами. Расскажу про каждую.
1️⃣ Страница с проблемами. У меня она всегда основная. Все проблемы на виду. Тут никаких изменений. Это старый виджет, появившийся с незапамятных времён.
2️⃣ Навигатор хостов. С ним немного повозился, так как не сразу понял, как всё это должно работать.
▪️Первый виджет - Навигатор по узлам сети с группировкой по группам.
▪️Второй - Навигатор по элементам данных. Сначала никак не мог понять, как их связать между собой, чтобы навигатор элементов отображал элементы того хоста, который выбран в навигаторе хостов. В итоге догадался, что в виджете с элементами, там где мы выбираем хост, к которому он должен быть привязан, надо выбрать не хост, а предыдущий виджет с текущей страницы.
▪️Третий виджет - Карточка хоста. Там тоже в качестве хоста указываем виджет с навигатором хостов.
▪️Четвёртый виджет - Значение элемента данных. В качестве элемента данных выбираем виджет с навигатором элементов.
▪️Пятый виджет - Топ узлов сети, отсортированных по потреблению CPU. Он сам по себе, ни к чему не привязан.
В итоге прямо на дашборде я получил обзор всех хостов с группировкой по группам. При выборе хоста я тут же получаю основную информацию по нему со ссылками на настройки хоста, последние данные, проблемы, а также навигатор по всем его элементам данных. При выборе элемента данных я получаю информацию по нему с графиком изменений. При нажатии на этот элемент, открывается график из последних данных, где можно оценить исторические изменения.
Теперь нет необходимости через меню перемещаться к списку хостов в разделе Мониторинг ⇨ Узлы сети. Из дашборда быстрее и удобнее посмотреть всю информацию по узлу. И нет необходимости отдельно ходить в Последние данные. Опять же быстрее попасть туда из дашборда, сразу получив информацию по нужному элементу данных.
3️⃣ Третья страница у меня такая же, как вторая, но в навигаторе хостов сортировка по важности триггеров. Сразу видно все активные триггеры и их хосты. При выборе хоста в отдельном виджете отображается список активных триггеров. На этой странице удобно пробежаться по всем проблемам и оценить их.
Не зря потратил время на разбирательства. Интерактивные дашборды в Zabbix реально удобны. Мало того, что они действительно неплохо выглядят, но лично я для красоты обычно ничего не настраиваю, но и добавляют функциональность, которая упрощает эксплуатацию мониторинга. Так что ещё немного поковыряюсь с интерактивными виджетами и скорее всего распространю их на все серверы. Надо будет немного попользоваться и подумать, как их можно улучшить и сделать более удобными.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#zabbix
В итоге всё получилось и это действительно удобно. Сделал себе основной дашборд с тремя страницами. Расскажу про каждую.
▪️Первый виджет - Навигатор по узлам сети с группировкой по группам.
▪️Второй - Навигатор по элементам данных. Сначала никак не мог понять, как их связать между собой, чтобы навигатор элементов отображал элементы того хоста, который выбран в навигаторе хостов. В итоге догадался, что в виджете с элементами, там где мы выбираем хост, к которому он должен быть привязан, надо выбрать не хост, а предыдущий виджет с текущей страницы.
▪️Третий виджет - Карточка хоста. Там тоже в качестве хоста указываем виджет с навигатором хостов.
▪️Четвёртый виджет - Значение элемента данных. В качестве элемента данных выбираем виджет с навигатором элементов.
▪️Пятый виджет - Топ узлов сети, отсортированных по потреблению CPU. Он сам по себе, ни к чему не привязан.
В итоге прямо на дашборде я получил обзор всех хостов с группировкой по группам. При выборе хоста я тут же получаю основную информацию по нему со ссылками на настройки хоста, последние данные, проблемы, а также навигатор по всем его элементам данных. При выборе элемента данных я получаю информацию по нему с графиком изменений. При нажатии на этот элемент, открывается график из последних данных, где можно оценить исторические изменения.
Теперь нет необходимости через меню перемещаться к списку хостов в разделе Мониторинг ⇨ Узлы сети. Из дашборда быстрее и удобнее посмотреть всю информацию по узлу. И нет необходимости отдельно ходить в Последние данные. Опять же быстрее попасть туда из дашборда, сразу получив информацию по нужному элементу данных.
Не зря потратил время на разбирательства. Интерактивные дашборды в Zabbix реально удобны. Мало того, что они действительно неплохо выглядят, но лично я для красоты обычно ничего не настраиваю, но и добавляют функциональность, которая упрощает эксплуатацию мониторинга. Так что ещё немного поковыряюсь с интерактивными виджетами и скорее всего распространю их на все серверы. Надо будет немного попользоваться и подумать, как их можно улучшить и сделать более удобными.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#zabbix
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Расскажу про парочку инструментов, которые упростят обслуживание сервера PostgreSQL. Начну с наиболее простого - pgBadger. Это анализатор лога, который на его основе генерирует отчёты в формате html. На выходе получаются одиночные html файлы, которые можно просто открыть в браузере. Сделано всё аккуратно и добротно, легко настраивается, отчёты наглядные и информационные.
🔹Чтобы было что анализировать, необходимо включить логирование интересующих вас событий. Для разовой отладки это всё можно включать на ходу, либо постоянно через файл конфигурации
Вся включенная статистика стала писаться в общий лог-файл
Анализируем лог файл:
Тут же в директории, где его запускали, увидите файл out.html. Забирайте его к себе и смотрите. Там будет информация с общей статистикой сервера, информация по запросам и их типам, времени исполнения, подключениям, по пользователям, базам и хостам откуда подключались и много всего остального.
PgBadger удобен тем, что по сути это одиночный скрипт на Perl. Можно включить логирование в конфигурации, применить её через
🔹Второй инструмент - PgHero, он показывает примерно то же самое, только в режиме реального времени и работает в виде веб сервиса. Для него уже надо создавать пользователя, настраивать доступ, отдельную базу. Немного другой подход. Надо будет дёргать сервер с СУБД.
Надо перейти в консоль и создать необходимые сущности:
Разрешаем этому пользователю подключаться. Добавляем в
172.17.0.0/24 - подсеть, из которой будет подключаться PgHero. В данном случае это Docker контейнер, запущенный на этом же хосте. PostgreSQL должен принимать запросы с локального IP адреса, к которому будет доступ из Docker сети. Можно добавить в конфиг
Перезапускаем PotgreSQL:
Запускаем PgHero в Docker контейнере:
Идём на порт севера 8080, где запущен контейнер и смотрим информацию о PostgreSQL. Если у вас не настроено расширение pg_stat_statements, которое использует PgHero для сбора статистики, то установите его. Для этого в конфигурацию
Перезапустите Postgresql и выполните в консоли СУБД:
Теперь можно возвращаться в веб интерфейс и смотреть информацию. По умолчанию, пользователь pghero не будет видеть запросы других пользователей, если ему не дать права superuser. Это можно исправить, выдав ему набор прав и ролей из этой инструкции.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#postgresql
🔹Чтобы было что анализировать, необходимо включить логирование интересующих вас событий. Для разовой отладки это всё можно включать на ходу, либо постоянно через файл конфигурации
postgresql.conf
и перезапуск сервера. Он обычно хорошо прокомментирован. Вас будут интересовать параметры, начинающие с log_*
. Они собраны все в отдельном блоке. Для примера я включил почти всё:log_min_duration_statement = 0
log_checkpoints = on
log_connections = on
log_disconnections = on
log_duration = on
log_line_prefix = '%m [%p] %q%u@%d '
log_lock_waits = on
log_temp_files = 0
log_timezone = 'Europe/Moscow'
Вся включенная статистика стала писаться в общий лог-файл
/var/log/postgresql/postgresql-17-main.log
. С ним и будем работать. Устанавливаем pgBadger:# wget https://github.com/darold/pgbadger/archive/refs/tags/v13.1.tar.gz
# tar xzvf v13.1.tar.gz
# cd pgbadger-*
# apt install make
# make && make install
Анализируем лог файл:
# pgbadger /var/log/postgresql/postgresql-17-main.log
Тут же в директории, где его запускали, увидите файл out.html. Забирайте его к себе и смотрите. Там будет информация с общей статистикой сервера, информация по запросам и их типам, времени исполнения, подключениям, по пользователям, базам и хостам откуда подключались и много всего остального.
PgBadger удобен тем, что по сути это одиночный скрипт на Perl. Можно включить логирование в конфигурации, применить её через
SELECT pg_reload_conf();
без перезапуска сервера СУБД. Пособирать некоторое время данные, забрать лог и анализировать его. Логирование отключить и снова перечитать конфиг. В итоге всё будет сделано без перезапуска сервера.🔹Второй инструмент - PgHero, он показывает примерно то же самое, только в режиме реального времени и работает в виде веб сервиса. Для него уже надо создавать пользователя, настраивать доступ, отдельную базу. Немного другой подход. Надо будет дёргать сервер с СУБД.
Надо перейти в консоль и создать необходимые сущности:
# su postgres
# psql
> CREATE USER pghero WITH PASSWORD 'pgheropass';
> CREATE DATABASE pgherodb OWNER pghero;
> \q
Разрешаем этому пользователю подключаться. Добавляем в
pg_hba.conf
строку:host pgherodb pghero 172.17.0.0/24 md5
172.17.0.0/24 - подсеть, из которой будет подключаться PgHero. В данном случае это Docker контейнер, запущенный на этом же хосте. PostgreSQL должен принимать запросы с локального IP адреса, к которому будет доступ из Docker сети. Можно добавить в конфиг
postgresql.conf
параметр:listen_addresses = 'localhost,172.17.0.1'
Перезапускаем PotgreSQL:
# systemctl restart postgresql
Запускаем PgHero в Docker контейнере:
# docker run -ti -e DATABASE_URL=postgres://pghero:pgheropass@172.17.0.1:5432/pgherodb -p 8080:8080 ankane/pghero
Идём на порт севера 8080, где запущен контейнер и смотрим информацию о PostgreSQL. Если у вас не настроено расширение pg_stat_statements, которое использует PgHero для сбора статистики, то установите его. Для этого в конфигурацию
postgresql.conf
добавьте параметры:shared_preload_libraries = 'pg_stat_statements'
pg_stat_statements.track = all
pg_stat_statements.max = 10000
track_activity_query_size = 2048
Перезапустите Postgresql и выполните в консоли СУБД:
> CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
> GRANT pg_read_all_stats TO pghero;
Теперь можно возвращаться в веб интерфейс и смотреть информацию. По умолчанию, пользователь pghero не будет видеть запросы других пользователей, если ему не дать права superuser. Это можно исправить, выдав ему набор прав и ролей из этой инструкции.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#postgresql
Учебный центр Галс Софтвэр приглашает на летнюю серию тренингов-интенсивов по Zabbix, Elasticsearch и OpenSearch.
📅 ElasticSearch База 2-4 июня 2025
📅 OpenSearch База 9-11 июня 2025
📅 Zabbix сертифицированный специалист 7.0 (ZCS 7.0) 16-20 июня 2025
📅 Zabbix сертифицированный профессионал 7.0 (ZCP 7.0) 14-16 июля 2025
Интенсивы, в отличие от многомесячных тренингов, позволяют максимально быстро погрузиться в тему и начинать работу с соответствующей системой сразу после прохождения тренинга.
Мы опросили участников предыдущих потоков и сформулировали основные преимущества от прохождения тренингов:
📖 устранить пробелы. Часто знания по соответствующей системе ограничиваются эпизодическим изучением документации и фрагментарны. Интенсивы помогут систематизировать знания и откроют для вас новые возможности уже знакомой системы.
📖 делать своими силами. Участие подрядчиков в проектах внедрения подразумевает предоставление доступа в ваше окружение. Прохождение официальных тренингов позволит вам выполнять работы силами штатных сотрудников.
📖 распространять знания. Сотрудники, прошедшие тренинг, не просто совершенствуют свои собственные технические навыки — они привносят полученные знания в коллектив и делятся ими со своими коллегами.
Подробную информацию вы можете запросить, написав @galssoftware или через почту welcome@gals.software.
❗️Полное расписание тренингов.
Подписывайтесь на наши телеграм-каналы:
🚀 @zabbix_ru — Zabbix и ничего кроме Zabbix
🚀 @elasticstack_ru — ElasticSearch/OpenSearch и логирование
🚀 @usr_bin_linux — лайфхаки по работе с Linux-системами
🚀 @monitorim_it — мониторинг ИТ-систем
Реклама, ООО "ГАЛС СОФТВЭР", ИНН 5047195298, erid: 2SDnjcF1BkZ
📅 ElasticSearch База 2-4 июня 2025
📅 OpenSearch База 9-11 июня 2025
📅 Zabbix сертифицированный специалист 7.0 (ZCS 7.0) 16-20 июня 2025
📅 Zabbix сертифицированный профессионал 7.0 (ZCP 7.0) 14-16 июля 2025
Интенсивы, в отличие от многомесячных тренингов, позволяют максимально быстро погрузиться в тему и начинать работу с соответствующей системой сразу после прохождения тренинга.
Мы опросили участников предыдущих потоков и сформулировали основные преимущества от прохождения тренингов:
📖 устранить пробелы. Часто знания по соответствующей системе ограничиваются эпизодическим изучением документации и фрагментарны. Интенсивы помогут систематизировать знания и откроют для вас новые возможности уже знакомой системы.
📖 делать своими силами. Участие подрядчиков в проектах внедрения подразумевает предоставление доступа в ваше окружение. Прохождение официальных тренингов позволит вам выполнять работы силами штатных сотрудников.
📖 распространять знания. Сотрудники, прошедшие тренинг, не просто совершенствуют свои собственные технические навыки — они привносят полученные знания в коллектив и делятся ими со своими коллегами.
Подробную информацию вы можете запросить, написав @galssoftware или через почту welcome@gals.software.
❗️Полное расписание тренингов.
Подписывайтесь на наши телеграм-каналы:
🚀 @zabbix_ru — Zabbix и ничего кроме Zabbix
🚀 @elasticstack_ru — ElasticSearch/OpenSearch и логирование
🚀 @usr_bin_linux — лайфхаки по работе с Linux-системами
🚀 @monitorim_it — мониторинг ИТ-систем
Реклама, ООО "ГАЛС СОФТВЭР", ИНН 5047195298, erid: 2SDnjcF1BkZ
⇨ Как запустить ИИ локально на любом компьютере
Запуск локальных моделей через LM Studio. Чисто обзорное видео на тему того, как это выглядит. Ничего сложного в установке и запуска нет. Фактически это ИИ для домохозяек. Скачиваешь программу под любую систему и в GUI всё настраиваешь.
⇨ Excalidraw, my favorite whiteboard / tech diagram app
Обзор на сервис для рисования схем Excalidraw. Много раз о нём писал на канале. И сам его же использую для рисования схем.
⇨ Часть 1. Построение инфраструктуры на ALT Linux 11. Установка гипервизора Proxmox 8.4
⇨ Часть 2. Построение инфраструктуры на ALT Linux 11. Расширенный тюнинг гипервизора.
⇨ Часть 3. Построение инфраструктуры на ALT Linux 11. iptables, DNS, DHCP.
⇨ Часть 4. Построение инфраструктуры на ALT Linux 11. Контроллер домена.
⇨ Часть 5. Построение инфраструктуры на ALT Linux 11. Рабочая станция.
Структурированная последовательная серия уроков по настройке инфраструктуры. Даётся подробная база от разбивки диска и настроек сети с практическими примерами. То есть автор не только рассказывает, а берёт и делает. Я на перемотке посмотрел, потому что почти всё это и так знаю. Но сделано качественно со схемами и пояснениями, поэтому рекомендую. Отдельно внимательно посмотрел только тюнинг гипервизора.
⇨ ALT Linux XFCE 4.20 сборка из минималки
Сисадмин Михалыч (чувствуется старая школа) рассказывает, как собрать своё окружение для простой рабочей станции на базе дистрибутива Alt.
⇨ Зачем мне экран в мини пк? крутые экраны для твоего домашнего сервера обзор firebat s1 / acemagic s1
Обзор необычного бюджетного MiniPC. Мне лично такие маломощные устройства неинтересны, но это понравилось за счёт небольшого строенного экрана. Раньше вообще не встречал таких.
⇨ Почему стоит переходить на Angie
Обзор веб сервера Angine: история появления, отличия от Nginx, плюсы по сравнению с ним, обзор отличительной функциональности, типа веб панели и т.д.
⇨ Как включить сервер удаленно? будим pve через wol (wake on lan)
Подробное описание работы WAL. Я свою домашнюю инфраструктуру так запускаю через Mikrotik. Что-то вручную запускается по необходимости, а что-то автоматически по расписанию через микротиковские скрипты.
⇨ All the open source software i use in 2025!
Автор описал кучу софта, который он использует. Я давно подписан на этот канал, смотрю почти все видео на интересующие меня темы. Автор делает хорошие обзоры и почти всё из его списка было в том или ином виде у него на канале, и частично у меня. Например, Netbird, Beszel, Minarca Backup, Wazuh, Apache Guacamole и т.д.
⇨ JitsiMeet with Authentication for more secure Meetings
Очень подробное видео на тему настройки open source проекта Jitsi для онлайн конференций с аутентификацией через LDAP на примере FreeIPA.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Как запустить ИИ локально на любом компьютере
#ии #genai
Join this channel to get access to perks:
https://www.youtube.com/channel/UC-sAMvDe7gTmBbub-rWljZg/join
Join this channel to get access to perks:
https://www.youtube.com/channel/UC-sAMvDe7gTmBbub-rWljZg/join
В рамках публикации выходного дня хочу опять затронуть тему рабочего места, спины и профилактики заболеваний. Тех, кто не читал мои прошлые публикации на тему сидячей работы и болей в спине, отправляю в прошлые заметки по тэгу #спина. Повторяться не хочу. Отмечу только, что у меня большой стаж хронических болей в мышцах, которые привели к осложнениям в виде миофиброза, протрузий и грыж. Сейчас живу относительно нормально, ничего особо не болит, научился делать простую профилактику, которая мне помогает.
Постоянно возвращаюсь к этой теме, потому что она реально многих беспокоит. Мне и в личку писали люди по этой теме, и с некоторыми голосом общался. Надеюсь, я кому-то смог помочь своими советами. Недавно в коворкинге заметил человека, который сидит в кресле с поддержкой для поясницы. Мне прям резанула эта картинка, потому что сам сидел с точно такой же подкладкой, купленной на Озоне, которую в итоге просто выкинул, потому что стала не нужна. Надо лечиться, а не подпорки покупать. Это путь в никуда.
Пару недель назад купил себе массажёр в формате массажной подушки. Я вообще всегда прохладно относился к массажёрам, считая их бесполезными игрушками. Последнее время стал присматриваться к массажным креслам. Пробовал некоторые из них, но не особо понравились. Слабо массируют, лечебного эффекта практически нет, чисто полежать, расслабиться. Покупать себе такое не увидел смысла.
Знакомый посоветовал конкретную модель массажёра ещё год назад. Я послушал и забил. А тут вспомнил и решил попробовать. Основная идея этого массажёра в том, что его можно куда угодно положить и подстроиться к нему так, чтобы массировать именно то место, которое тебе нужно и с нужным усилием.
Изначально он рассчитан на то, чтобы прикрепить его к креслу, сеть и массажировать. В таком формате он тоже не особо хорошо мнёт, потому что слабое давление. Я использую его по-другому. Например, чтобы промассировать шею, кладу его на пол и ложусь на него. Могу ещё руки на голову положить, чтобы усилить давление. В таком режиме, в отличие от кресла, ты давишь всей своей массой, мотор работает с значительным напряжением, но всё же крутит. По идее это нештатная его работа и фиг знает, сколько он выдержит так работать.
Подобных массажёров очень много за разную цену. Я купил конкретную модель от известного бренда в фирменном магазине в надежде на то, что он будет мощнее и долговечнее условных аналогов из Китая, которые могут быть в 2-3 раза дешевле. Я не буду приводить примеры моделей, чтобы это не считалось рекламой. Конкретно мой тренажёр внизу на картинке. По названию его нетрудно найти.
Я купил его как подспорье, когда жена не сможет сделать нормальную прессуру. Меня сейчас она для профилактики мнёт локтями 2-3 раза в неделю. В принципе, мне этого хватает. Я уже научился чувствовать, где копится напряжение в мышцах и точечно их расслаблять с её помощью. Но массажёр на удивление в некоторых моментах оказался удобнее. Ты точно чувствуешь, где нужно размять, прилаживаешь его каким-то образом, чтобы было посильнее давление, и мнёшь проблемное место 10-15 минут. Получается очень эффективно.
Я теперь каждый день им пользуюсь. Особенно хорошо шею расслабляет. Если чувствуешь, что за день устал, хочется размять шею, покрутить голову из стороны в сторону и т.д. В общем, обычная усталось. Лежу на этом тренажёре минут 15, кручу головой в разные стороны, чтобы проработать всю шею. Становится значительно легче.
Для поясницы он слаб, тут без человека не обойтись, но местами спину выше поясницы тоже им проминаю. Помогает немного. Так же им массирую икры и голени.
В общем, штука полезная, рекомендую, кто чувствует какую-то усталость и напряжение в мышцах. В качестве лечения он вряд ли поможет, если у вас запущенная стадия и есть сильные боли, ограничения в движении и т.д. А в качестве профилактики самое то в дополнение к другим. Мне лично хватает его, прессуры жены и регулярных пеших прогулок. Больше ничего не делаю, сижу по 8-10 часов в день 🤷♂️
#спина
Постоянно возвращаюсь к этой теме, потому что она реально многих беспокоит. Мне и в личку писали люди по этой теме, и с некоторыми голосом общался. Надеюсь, я кому-то смог помочь своими советами. Недавно в коворкинге заметил человека, который сидит в кресле с поддержкой для поясницы. Мне прям резанула эта картинка, потому что сам сидел с точно такой же подкладкой, купленной на Озоне, которую в итоге просто выкинул, потому что стала не нужна. Надо лечиться, а не подпорки покупать. Это путь в никуда.
Пару недель назад купил себе массажёр в формате массажной подушки. Я вообще всегда прохладно относился к массажёрам, считая их бесполезными игрушками. Последнее время стал присматриваться к массажным креслам. Пробовал некоторые из них, но не особо понравились. Слабо массируют, лечебного эффекта практически нет, чисто полежать, расслабиться. Покупать себе такое не увидел смысла.
Знакомый посоветовал конкретную модель массажёра ещё год назад. Я послушал и забил. А тут вспомнил и решил попробовать. Основная идея этого массажёра в том, что его можно куда угодно положить и подстроиться к нему так, чтобы массировать именно то место, которое тебе нужно и с нужным усилием.
Изначально он рассчитан на то, чтобы прикрепить его к креслу, сеть и массажировать. В таком формате он тоже не особо хорошо мнёт, потому что слабое давление. Я использую его по-другому. Например, чтобы промассировать шею, кладу его на пол и ложусь на него. Могу ещё руки на голову положить, чтобы усилить давление. В таком режиме, в отличие от кресла, ты давишь всей своей массой, мотор работает с значительным напряжением, но всё же крутит. По идее это нештатная его работа и фиг знает, сколько он выдержит так работать.
Подобных массажёров очень много за разную цену. Я купил конкретную модель от известного бренда в фирменном магазине в надежде на то, что он будет мощнее и долговечнее условных аналогов из Китая, которые могут быть в 2-3 раза дешевле. Я не буду приводить примеры моделей, чтобы это не считалось рекламой. Конкретно мой тренажёр внизу на картинке. По названию его нетрудно найти.
Я купил его как подспорье, когда жена не сможет сделать нормальную прессуру. Меня сейчас она для профилактики мнёт локтями 2-3 раза в неделю. В принципе, мне этого хватает. Я уже научился чувствовать, где копится напряжение в мышцах и точечно их расслаблять с её помощью. Но массажёр на удивление в некоторых моментах оказался удобнее. Ты точно чувствуешь, где нужно размять, прилаживаешь его каким-то образом, чтобы было посильнее давление, и мнёшь проблемное место 10-15 минут. Получается очень эффективно.
Я теперь каждый день им пользуюсь. Особенно хорошо шею расслабляет. Если чувствуешь, что за день устал, хочется размять шею, покрутить голову из стороны в сторону и т.д. В общем, обычная усталось. Лежу на этом тренажёре минут 15, кручу головой в разные стороны, чтобы проработать всю шею. Становится значительно легче.
Для поясницы он слаб, тут без человека не обойтись, но местами спину выше поясницы тоже им проминаю. Помогает немного. Так же им массирую икры и голени.
В общем, штука полезная, рекомендую, кто чувствует какую-то усталость и напряжение в мышцах. В качестве лечения он вряд ли поможет, если у вас запущенная стадия и есть сильные боли, ограничения в движении и т.д. А в качестве профилактики самое то в дополнение к другим. Мне лично хватает его, прессуры жены и регулярных пеших прогулок. Больше ничего не делаю, сижу по 8-10 часов в день 🤷♂️
#спина
На тему LA (Load Average) написано очень много материалов. Про неё любят спрашивать на собеседованиях, писать тематические статьи и проводить уроки различные онлайн школы. Это прям горячая тема. Я когда-то давно в одной переведённой с иностранного материала статье на хабре увидел очень хорошую аналогию LA с загрузкой шоссе машинами и сразу запомнил её. Не встречал с тех пор наглядных объяснений в таком контексте. Расскажу кратко тем, кто до конца не понимает, что эта загрузка означает.
Пара примеров, почему LA неоднозначна. Можно зайти на сервер, увидеть LA под 100, но при этом процессор будет не нагружен вообще. Это тупит примонтированный сетевой диск, например, по NFS или iSCSI. Или LA в 30 может показаться запредельно большой, но если на сервере 36 ядер и нагрузка хоть и большая, но в целом сервер её вывозит.
Для однопроцессорной системы понять логику измерения Load Average можно с помощью картинки во вложении. Для простоты восприятия LA сравнивают с транспортным потоком на мосту. Значение более 1 означает наличие очереди на въезде на мост. Размер этой очереди будет равен превышению единицы. Например, значение 1,7 показывает, что в очереди стоит 70% от числа машин, находящихся на мосту.
В ядре Linux процессы, выполняющиеся в данный момент, это машины на мосту, а процессы, ожидающие очереди на исполнение, это машины в пробке на въезде на мост. Причем очередь из процессов может образовываться не только из-за загруженности процессора, но и других компонентов системы. Например, подсистемы ввода-вывода (диск, сеть).
Идеально, когда пробки нет, никто никого не ждёт, есть запас по пропускной способности моста. Многопроцессорная система - это сумма таких мостов. Каждый увеличивает пропускную способность на единицу. Загрузка 1 для двух мостов означает нагрузку на мосты в 50%, для трёх на 33%. Ну и так далее. Очень просто и наглядно.
Если кто-то знает более простые и наглядные аналогии, расскажите.
И в продолжении этой темы добавлю ссылку на мою недавнюю заметку на тему метрики IOWait. Она тоже очень неоднозначна и может своими показаниями вводить в заблуждение, если не знаешь нюансов. Там, к сожалению, нет простой аналогии, нужно вчитаться и понять без аналогий, о чём идёт речь. Но информация важная, если вам приходится разбираться с производительностью систем на базе Linux.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #perfomance
Пара примеров, почему LA неоднозначна. Можно зайти на сервер, увидеть LA под 100, но при этом процессор будет не нагружен вообще. Это тупит примонтированный сетевой диск, например, по NFS или iSCSI. Или LA в 30 может показаться запредельно большой, но если на сервере 36 ядер и нагрузка хоть и большая, но в целом сервер её вывозит.
Для однопроцессорной системы понять логику измерения Load Average можно с помощью картинки во вложении. Для простоты восприятия LA сравнивают с транспортным потоком на мосту. Значение более 1 означает наличие очереди на въезде на мост. Размер этой очереди будет равен превышению единицы. Например, значение 1,7 показывает, что в очереди стоит 70% от числа машин, находящихся на мосту.
В ядре Linux процессы, выполняющиеся в данный момент, это машины на мосту, а процессы, ожидающие очереди на исполнение, это машины в пробке на въезде на мост. Причем очередь из процессов может образовываться не только из-за загруженности процессора, но и других компонентов системы. Например, подсистемы ввода-вывода (диск, сеть).
Идеально, когда пробки нет, никто никого не ждёт, есть запас по пропускной способности моста. Многопроцессорная система - это сумма таких мостов. Каждый увеличивает пропускную способность на единицу. Загрузка 1 для двух мостов означает нагрузку на мосты в 50%, для трёх на 33%. Ну и так далее. Очень просто и наглядно.
Если кто-то знает более простые и наглядные аналогии, расскажите.
И в продолжении этой темы добавлю ссылку на мою недавнюю заметку на тему метрики IOWait. Она тоже очень неоднозначна и может своими показаниями вводить в заблуждение, если не знаешь нюансов. Там, к сожалению, нет простой аналогии, нужно вчитаться и понять без аналогий, о чём идёт речь. Но информация важная, если вам приходится разбираться с производительностью систем на базе Linux.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#linux #perfomance
🔥 Тест по высоким нагрузкам на Linux проходят всего лишь 60% участников 🔥
Ответьте на 9 вопросов и проверьте, насколько вы умеете решать задачи, связанные с высокими нагрузками, и насколько готовы к обучению на курсе — «Инфраструктура высоконагруженных систем».
За 5 месяцев курса вы научитесь решать 3 глобальные задачи:
- Виртуализация с помощью таких инструментов, как Proxmox, KVM, oVirt, Xen
- Кластеризация сервисов и построение дисковых кластеров
- Построение высоконагруженных систем на базе Nginx
Время прохождения теста ограничено 20 минут.
ПРОЙТИ ТЕСТ — https://clck.ru/3MGaJU
💣 Прошедшим тест подарим бесплатный тематический урок и доступ к лучшим открытым урокам курса на сайте.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Ответьте на 9 вопросов и проверьте, насколько вы умеете решать задачи, связанные с высокими нагрузками, и насколько готовы к обучению на курсе — «Инфраструктура высоконагруженных систем».
За 5 месяцев курса вы научитесь решать 3 глобальные задачи:
- Виртуализация с помощью таких инструментов, как Proxmox, KVM, oVirt, Xen
- Кластеризация сервисов и построение дисковых кластеров
- Построение высоконагруженных систем на базе Nginx
Время прохождения теста ограничено 20 минут.
ПРОЙТИ ТЕСТ — https://clck.ru/3MGaJU
💣 Прошедшим тест подарим бесплатный тематический урок и доступ к лучшим открытым урокам курса на сайте.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На днях столкнулся в небольшой ошибкой в скриптах для бэкапа, когда настраивал их работу через cron. Я уже не раз упоминал, что в скриптах лучше всегда писать полные пути. Я это обычно соблюдаю, особенно для исполняемых файлов. А тут ошибся немного в другом.
Делал большой скрипт, где было много разных операций, в том числе одна из них была с rsync. Строка выглядела примерно так:
Я тут раскрыл все переменные, чтобы было понятно, о чём идёт речь, кроме одной -
То есть просто указал на файл, который лежит тут же в директории. Когда отлаживаешь и запускаешь вручную - всё работает. А через cron - нет. А так как в скрипте было много различных действий, я сходу не смог понять, почему не работает конкретно эта синхронизация. Несколько раз глазами пробежал, не пойму, где ошибка и почему всё работает, а конкретно это не синхронизируется. Вывод rsync направлен в лог, обычно там его ошибки видно, но не в этот раз. Он просто не запускался.
Потом заглянул в системную почту, и там всё понятно:
Rsync просто даже не запускался из-за того, что не видел этот файл. В общем, очередное напоминание, что в скриптах лучше всегда всё писать с полными путями, чтобы потом не тратить время на отладку.
Кто-то может подсказать, как сделать так, чтобы в скрипте был относительный путь на файл, лежащий в этой же директории, и чтобы он корректно работал в cron. Я не могу сообразить, как это сделать. Всегда в списке переменных в самом начале пишу актуальные пути под конкретный сервер, чтобы потом с этим не разбираться.
#linux #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
Нужен был бюджетный дедик для хранения 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
После регистрации мы отправим вам подарок! Вы сможете найти его в ответном письме.
👉Регистрация
Время проведения:
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
К примеру, у моих пожилых родителей до сих пор 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
И тут же получил рабочее решение. Идём в директорию
После этого при подключении к этому же серверу выскакивает предупреждение, где можно принять все риски на себя и таки подключиться.
Раньше уже сталкивался с такими проблемами, но решал их каким-то более сложным путём. Искал другие машины, какие-то старые версии скачивал. Просто в голову не приходило загуглить решение. Не думал, что настройками можно обойтись.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#ошибка
Клиент для подключения тут на 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
Если хочешь понять, какие технологии учить, как устроен рынок и как не застрять в вечной подготовке — забирай нашу матрицу компетенций 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, типа такой:
Вам нужно выложить на сайт с тем же доменом, что и почтовый, картинку в формате 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
Все те изображения, что вы видите у себя в почтовых клиентах – функциональность именно клиентов. Веб интерфейсы почты Яндекса, Мейла, Гугла отображают картинки, которые добавили сами пользователи в своих учётных записях. И если пользователь 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