Ребята сделали крутейший канал про Linux, где на простых картинках и понятном языке обучают работе с этой ОС, делятся полезными фишками и инструментами
Подписывайтесь: @linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤪1
Релиз Zorin OS 17.3 на базе Ubuntu 22.04
В марте 2025 года вышла версия Zorin OS 17.3, основанная на Ubuntu 22.04, ориентированная на пользователей, переходящих с Windows и macOS.
Размер ISO-образа варьируется от 3,4 до 7,1 ГБ.
В этой версии улучшена интеграция с мобильными устройствами через Zorin Connect и добавлена поддержка Flatpak, AppImage и Snap для установки приложений.
Zorin OS 17.3 доступна в трёх версиях: Pro, Core и Education.
Улучшена работа с сенсорными экранами и добавлены новые функции удалённого ввода.
В марте 2025 года вышла версия Zorin OS 17.3, основанная на Ubuntu 22.04, ориентированная на пользователей, переходящих с Windows и macOS.
Размер ISO-образа варьируется от 3,4 до 7,1 ГБ.
В этой версии улучшена интеграция с мобильными устройствами через Zorin Connect и добавлена поддержка Flatpak, AppImage и Snap для установки приложений.
Браузер Brave заменяет Firefox, а база данных установщиков Windows-программ расширена до 150+ приложений.
Zorin OS 17.3 доступна в трёх версиях: Pro, Core и Education.
Улучшена работа с сенсорными экранами и добавлены новые функции удалённого ввода.
👍10❤2👎1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
erid: 2W5zFHxWZoW
Присоединяйся к сообществу современной ИТ-компании. Проходи бесплатные стажировки, знакомься с экспертами, участвуй в активностях и найди работу мечты!
Лига — это:
— Более 6 000 сотрудников по всей России
— Удобный график: удаленка, гибрид или офис
— Полный соцпакет, ДМС, корпоративная связь
— Компенсация фитнеса
— И многое другое
Хочешь расти как профессионал, работать в дружной команде, отдыхать в компании единомышленников, участвовать в масштабных корпоративах? Тогда тебе к нам!
https://tglink.io/6b16620f2dca
Реклама. ООО "ЭЙТИ КОНСАЛТИНГ". ИНН 7715744096.
Присоединяйся к сообществу современной ИТ-компании. Проходи бесплатные стажировки, знакомься с экспертами, участвуй в активностях и найди работу мечты!
Лига — это:
— Более 6 000 сотрудников по всей России
— Удобный график: удаленка, гибрид или офис
— Полный соцпакет, ДМС, корпоративная связь
— Компенсация фитнеса
— И многое другое
Хочешь расти как профессионал, работать в дружной команде, отдыхать в компании единомышленников, участвовать в масштабных корпоративах? Тогда тебе к нам!
https://tglink.io/6b16620f2dca
Реклама. ООО "ЭЙТИ КОНСАЛТИНГ". ИНН 7715744096.
👍3
Как проверить, настроить и использовать SWAP?
Проверка SWAP
Перед настройкой SWAP важно проверить его текущее состояние:
Linux
⏺ free -m — отображает общий объём, доступный и используемый SWAP в мегабайтах.
⏺ swapon --show — показывает список активных файлов и разделов подкачки.
⏺ cat /proc/swaps — выводит детали всех SWAP-разделов.
⏺ top или htop — отображает загрузку памяти и использование SWAP в реальном времени.
Windows
• systeminfo — показывает основные параметры виртуальной памяти.
• Панель управления → Система → Дополнительные параметры системы → Виртуальная память.
macOS
• top — аналогично Linux.
• Мониторинг системы → вкладка Память → Использование своп (Swap Used).
Настройка SWAP в Linux
Если SWAP отсутствует или его объёма недостаточно, его можно настроить вручную.
Создание и настройка файла подкачки
1️⃣ Проверить текущие SWAP-разделы:
2️⃣ Отключить текущий SWAP:
3️⃣ Создать новый файл SWAP (например, 4 ГБ):
Если fallocate не поддерживается:
4️⃣ Назначить нужные права:
5️⃣ Создать файл подкачки:
6️⃣ Включить SWAP:
7️⃣ Добавить SWAP в автозагрузку:
Настройка параметра swappiness
swappiness определяет, как активно система использует SWAP.
• 0-10 — минимальное использование (актуально для SSD).
• 30-60 — сбалансированный режим.
• 60-100 — агрессивное использование SWAP (рекомендуется для малых объёмов ОЗУ).
Проверить текущее значение:
Временно изменить параметр (до перезагрузки):
Сохранить настройку навсегда:
Проверка SWAP
Перед настройкой SWAP важно проверить его текущее состояние:
Linux
Windows
• systeminfo — показывает основные параметры виртуальной памяти.
• Панель управления → Система → Дополнительные параметры системы → Виртуальная память.
macOS
• top — аналогично Linux.
• Мониторинг системы → вкладка Память → Использование своп (Swap Used).
Настройка SWAP в Linux
Если SWAP отсутствует или его объёма недостаточно, его можно настроить вручную.
Создание и настройка файла подкачки
swapon --show
sudo swapoff -a
sudo fallocate -l 4G /swapfile
Если fallocate не поддерживается:
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo "/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
Настройка параметра swappiness
swappiness определяет, как активно система использует SWAP.
• 0-10 — минимальное использование (актуально для SSD).
• 30-60 — сбалансированный режим.
• 60-100 — агрессивное использование SWAP (рекомендуется для малых объёмов ОЗУ).
Проверить текущее значение:
cat /proc/sys/vm/swappiness
Временно изменить параметр (до перезагрузки):
sudo sysctl vm.swappiness=30
Сохранить настройку навсегда:
echo "vm.swappiness=30" | sudo tee -a /etc/sysctl.conf
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Основные принципы работы:
— Шина сообщений: процессы подписываются на D-Bus и могут отправлять или получать сообщения через централизованный демонт (dbus-daemon).
— Две основные шины: System Bus используется для взаимодействия системных сервисов (например, systemd-logind), а Session Bus обслуживает пользовательские приложения.
— Методы и сигналы: процессы могут вызывать методы в других сервисах или подписываться на сигналы для получения уведомлений.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3
rConfig – резервное копирование конфигураций сетевого оборудования
rConfig – это бесплатное программное обеспечение для автоматического резервного копирования конфигураций сетевого оборудования.
Оно работает на CentOS 7, поддерживает SSH и интеграцию с LDAP, а также позволяет планировать задачи на автоматический бэкап.
Установка rConfig
1. Устанавливаем CentOS 7 и подключаемся по SSH.
2. Скачиваем и запускаем установочный скрипт:
3. Установка займет 20-30 минут. Проверять процесс можно командой:
4. После завершения установки перезагружаем сервер:
Настройка rConfig
1. Создаем базу данных:
2. Открываем веб-интерфейс по адресу:
3. Проходим установку, указываем данные для БД и нажимаем Install Settings.
4. Удаляем каталог установки:
rConfig – это бесплатное программное обеспечение для автоматического резервного копирования конфигураций сетевого оборудования.
Оно работает на CentOS 7, поддерживает SSH и интеграцию с LDAP, а также позволяет планировать задачи на автоматический бэкап.
Установка rConfig
1. Устанавливаем CentOS 7 и подключаемся по SSH.
2. Скачиваем и запускаем установочный скрипт:
cd /home
curl -O https://files.rconfig.com/downloads/scripts/install_rConfig.sh
chmod +x install_rConfig.sh
./install_rConfig.sh
3. Установка займет 20-30 минут. Проверять процесс можно командой:
tail -f /home/install.log
4. После завершения установки перезагружаем сервер:
/home/centos7_postReboot.sh
Настройка rConfig
1. Создаем базу данных:
mysql -u root -p
mysql> CREATE DATABASE rconfig_db;
mysql> GRANT ALL ON rconfig_db.* TO 'username'@'localhost' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
2. Открываем веб-интерфейс по адресу:
https://yourhostname/install
3. Проходим установку, указываем данные для БД и нажимаем Install Settings.
4. Удаляем каталог установки:
rm -fr /home/rconfig/www/install/
👍13
Куда пропали все, кто хочет открыть своё AI-агентство по автоматизации?
С вероятностью 99.99% вы ещё не подписаны на StartDuck — один из самых быстрорастущих образовательных каналов по автоматизации бизнес-процессов на базе n8n и Make.com.
А здесь делятся:
🟧 Не только готовыми инструкциями и файлами — скачал, указал креденшиалы и запустил,
🟧 Но и советами по созданию собственного агентства — учись и продавай готовые автоматизации вместе со StartDuck!
🔥 К примеру, сейчас наше цифровое решение «Джарвис на Steroid’ах» уже входит в топ поисковых запросов в сфере Ai.
Виртуальный ассистент как у Тони Старка из «Железного человека» — он знает всё, управляет технологиями и помогает своему создателю работать в разы эффективнее. Теперь такой помощник может быть и у тебя!
🦢 Подписывайся – в канале тебя ждёт масса полезного:
👉
🟧 Твой личный Jarvis в Telegram
🟧 Автоматизация RSS для YouTube в n8n
🟧 Автоматизация обработки YouTube-видео для Telegram в n8n
🟧 RSS Автопостинг Youtube
👉
🟧 Автоматизация и рост эффективности косметологического салона
🟧 Рост прибыли для Бадов
🟧 Рост вовлечения для строительной компании
👉
🟧 Подключаем Instagram через BigDuck
🟧 Подключаем Facebook (Messenger) через BigDuck
🟧 Как подключить AI-Агента в WhatsApp
С вероятностью 99.99% вы ещё не подписаны на StartDuck — один из самых быстрорастущих образовательных каналов по автоматизации бизнес-процессов на базе n8n и Make.com.
А здесь делятся:
Виртуальный ассистент как у Тони Старка из «Железного человека» — он знает всё, управляет технологиями и помогает своему создателю работать в разы эффективнее. Теперь такой помощник может быть и у тебя!
[N8N]
[Кейсы с действующими клиентами]
[BigDuck.ai]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2😁2
Почему в sysctl.conf параметр net.ipv4.tcp_tw_reuse = 1 может быть небезопасным?
Anonymous Quiz
25%
Он отключает таймер ожидания TCP-соединений
56%
Он может привести к использованию старых соединений с неверными данными
4%
Он снижает пропускную способность сети
15%
Он отключает контрольную сумму TCP
👍5
Ansible в действии: развернем кластер с Kuberspray и запустим AI-приложение 🚀
Приглашаем на бесплатный вебинар от Слёрма, на котором расскажем и покажем:
🔸 Как развернуть нейронную сеть в контейнере и сделать её доступной для всего мира?
🔸 Как быстро настроить кластер и управлять им?
🔸 Как Kubernetes управляет AI-приложениями?
🔸 Как Docker работает в Kubernetes?
🎁 Бонус: каждый зритель получит репозиторий для собственного Kubernetes-кластера с AI-приложением и полную инструкцию по развертыванию.
Дата: 9 апреля 19:00
Занять место — через бота 👈
erid: 2W5zFK3BE24
Приглашаем на бесплатный вебинар от Слёрма, на котором расскажем и покажем:
🔸 Как развернуть нейронную сеть в контейнере и сделать её доступной для всего мира?
🔸 Как быстро настроить кластер и управлять им?
🔸 Как Kubernetes управляет AI-приложениями?
🔸 Как Docker работает в Kubernetes?
🎁 Бонус: каждый зритель получит репозиторий для собственного Kubernetes-кластера с AI-приложением и полную инструкцию по развертыванию.
Дата: 9 апреля 19:00
Занять место — через бота 👈
erid: 2W5zFK3BE24
👍2
Предсказание отказов HDD/SSD: как мониторить диски и избегать аварий
Зная, какие параметры мониторить, можно заранее выявить проблемы и заменить диск за недели до его полной поломки. В этом разберемся сегодня.
Какие параметры критичны?
Самый простой способ оценить состояние диска — анализ S.M.A.R.T.-атрибутов. Вот ключевые показатели, на которые стоит обратить внимание:
⏺ Reallocated Sectors Count – количество переназначенных секторов. Рост этого значения — первый тревожный сигнал.
⏺ Pending Sectors – секторы, ожидающие перераспределения. Если диск не может их исправить, он может скоро выйти из строя.
⏺ Uncorrectable Sectors – необратимо поврежденные сектора, которые диск не может ни исправить, ни перенести.
⏺ CRC Errors – ошибки интерфейса SATA/NVMe, указывают на проблемы с кабелем или контроллером.
⏺ Power-On Hours – возраст диска. HDD редко живут больше 5-7 лет, SSD – до 3-5 лет при высокой нагрузке.
⏺ SSD Wear Leveling Count – степень износа ячеек памяти у SSD. Если значение приближается к 100%, диск скоро выйдет из строя.
Эти параметры можно отслеживать вручную, но лучше автоматизировать процесс.
Мониторинг S.M.A.R.T. в Linux
Чтобы проверить диск вручную, можно использовать smartmontools:
Но вручную это делать неудобно, поэтому подключаем мониторинг в Zabbix и Prometheus.
Автоматический мониторинг дисков в Zabbix
В Zabbix есть готовые шаблоны для S.M.A.R.T. Чтобы подключить мониторинг:
1️⃣ Устанавливаем Zabbix Agent (если он еще не установлен):
Для CentOS/RHEL:
2️⃣ Добавляем модуль для работы с S.M.A.R.T.
3️⃣ Настраиваем Zabbix Agent для сбора данных о дисках. Добавляем в /etc/zabbix/zabbix_agentd.conf:
4️⃣ Перезапускаем агент:
5️⃣ Импортируем шаблон “SMART Monitoring” в Zabbix и привязываем к хосту.
Теперь Zabbix будет автоматически отслеживать состояние дисков и присылать алерты при критических изменениях.
В следующем посте продолжим!
Жесткие диски и SSD рано или поздно выходят из строя, но их отказ редко бывает внезапным.
Зная, какие параметры мониторить, можно заранее выявить проблемы и заменить диск за недели до его полной поломки. В этом разберемся сегодня.
Какие параметры критичны?
Самый простой способ оценить состояние диска — анализ S.M.A.R.T.-атрибутов. Вот ключевые показатели, на которые стоит обратить внимание:
Эти параметры можно отслеживать вручную, но лучше автоматизировать процесс.
Мониторинг S.M.A.R.T. в Linux
Чтобы проверить диск вручную, можно использовать smartmontools:
smartctl -a /dev/sda
Но вручную это делать неудобно, поэтому подключаем мониторинг в Zabbix и Prometheus.
Автоматический мониторинг дисков в Zabbix
В Zabbix есть готовые шаблоны для S.M.A.R.T. Чтобы подключить мониторинг:
sudo apt install zabbix-agent
Для CentOS/RHEL:
sudo yum install zabbix-agent
sudo apt install smartmontools
UserParameter=smartctl.discovery, sudo /usr/local/bin/smartctl_discovery.sh
UserParameter=smartctl.info[*], sudo smartctl -A /dev/$1 | grep "$2" | awk '{print $10}'
sudo systemctl restart zabbix-agent
Теперь Zabbix будет автоматически отслеживать состояние дисков и присылать алерты при критических изменениях.
В следующем посте продолжим!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28
Релиз открытой утилиты GNU patch 2.8
Решение позволяет применить к файлам патчи, включающие списки изменений, созданные программой diff. Исходный код проекта написан на языке C и распространяется под лицензией GPLv3+. Версия GNU patch 2.7 вышла в сентябре 2012 года.
В новую версию проекта вносили изменения одиннадцать разработчиков в ходе подготовки релиза.
По информации OpenNET, основные изменения и доработки в GNU patch 2.8:
⏺ решена проблема 2038 года — утилита теперь корректно обрабатывает данные о времени файлов, созданных после 2038 года, даже на платформах с 32-разрядным типом time_t;
⏺ опция «‑follow‑symlinks» теперь распространяется не только на входные файлы, но и на создаваемые файлы;
⏺ в соответствии с требованиями стандарта POSIX.1–2024 запрещено использование символа перевода строки в именах файлов;
⏺ запрещено использование нулевых байтов ('\0') в строках с директивами diff;
⏺ разрешено указание пробелов и табуляций перед значениями с номерами строк и после них;
⏺ проведена работа по исключению неопределённого или некорректного поведения в нештатных ситуациях, например при обработке очень больших размеров полей, ошибках ввода/вывода, нехватке памяти, состояниях гонки и отправке сигналов в неподходящие моменты;
⏺ удалён старый код «Plan B», созданный для систем с 16-разрядными указателями;
⏺ повышены требования к компилятору, который теперь должен поддерживать стандарт C99 (ранее требовался C89);
⏺ добавлена поддержка новых версий GCC, Autoconf и Gnulib.
В конце марта 2025 года состоялся релиз открытой утилиты GNU Patch 2.8.
Решение позволяет применить к файлам патчи, включающие списки изменений, созданные программой diff. Исходный код проекта написан на языке C и распространяется под лицензией GPLv3+. Версия GNU patch 2.7 вышла в сентябре 2012 года.
В новую версию проекта вносили изменения одиннадцать разработчиков в ходе подготовки релиза.
По информации OpenNET, основные изменения и доработки в GNU patch 2.8:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
Предсказание отказов HDD/SSD: как мониторить диски и избегать аварий
Часть 2
Продолжим обсуждение мониторинга жестких дисков
Мониторинг дисков в Prometheus + Grafana
Если в инфраструктуре уже есть Prometheus, можно использовать node_exporter с поддержкой S.M.A.R.T.:
1️⃣ Устанавливаем node_exporter:
2️⃣ Добавляем в конфиг Prometheus новый таргет (prometheus.yml):
3️⃣ Настраиваем Grafana для визуализации
В Grafana импортируем готовый Dashboard 12430 “SMART Monitoring”.
Теперь мы видим наглядную динамику параметров S.M.A.R.T. и можем заранее предсказать сбои.
Использование AI для предсказания отказов
Если нужно автоматически анализировать аномалии, можно использовать AI-модель для предсказания отказов.
1. Собираем данные за 6-12 месяцев с проблемных и рабочих дисков.
2. Обучаем ML-модель на основе реальных данных.
3. Настраиваем прогнозирование аномалий через TensorFlow/Scikit-Learn и уведомления в Telegram/Slack.
Пример простого скрипта на Python, который анализирует S.M.A.R.T. и ищет аномалии:
Часть 2
Продолжим обсуждение мониторинга жестких дисков
Мониторинг дисков в Prometheus + Grafana
Если в инфраструктуре уже есть Prometheus, можно использовать node_exporter с поддержкой S.M.A.R.T.:
wget https://github.com/prometheus/node_exporter/releases/latest/download/node_exporter-linux-amd64.tar.gz
tar xvf node_exporter-linux-amd64.tar.gz
cd node_exporter-linux-amd64
sudo ./node_exporter --collector.smartmon
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']
В Grafana импортируем готовый Dashboard 12430 “SMART Monitoring”.
Теперь мы видим наглядную динамику параметров S.M.A.R.T. и можем заранее предсказать сбои.
Использование AI для предсказания отказов
Если нужно автоматически анализировать аномалии, можно использовать AI-модель для предсказания отказов.
1. Собираем данные за 6-12 месяцев с проблемных и рабочих дисков.
2. Обучаем ML-модель на основе реальных данных.
3. Настраиваем прогнозирование аномалий через TensorFlow/Scikit-Learn и уведомления в Telegram/Slack.
Пример простого скрипта на Python, который анализирует S.M.A.R.T. и ищет аномалии:
import pandas as pd
from sklearn.ensemble import IsolationForest
# Загружаем данные S.M.A.R.T.
df = pd.read_csv("smart_data.csv")
# Выбираем критичные параметры
features = ["Reallocated_Sectors", "Pending_Sectors", "Uncorrectable_Sectors"]
# Обучаем модель аномалий
model = IsolationForest(contamination=0.01)
model.fit(df[features])
# Предсказываем аномалии
df["anomaly"] = model.predict(df[features])
# Выводим проблемные диски
print(df[df["anomaly"] == -1])
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥7❤1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Основные возможности:
— Изоляция: FUSE работает в user-space, снижая риски сбоев и уязвимостей в ядре.
— Гибкость: можно монтировать файлы из облака, архивов или даже из базы данных.
— Применение: SSHFS (удаленная файловая система через SSH), EncFS (шифрованные каталоги), rclone (доступ к облачным хранилищам).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤1
Policy-Based Routing (PBR) в Linux: Как разделять трафик по приложениям и протоколам
Обычно маршрутизация в Linux строится по таблице маршрутов, но что если нужно разделять трафик не просто по IP-адресу, а по приложению, порту или протоколу?
Здесь на помощь приходит Policy-Based Routing (PBR) – механизм, позволяющий задавать гибкие правила маршрутизации.
Когда это нужно?
⏺ Выводить разный трафик через разные каналы – например, HTTP/S через VPN, а SSH и RDP напрямую.
⏺ Разграничивать нагрузку между несколькими провайдерами – балансировка трафика между двумя интернет-каналами.
⏺ Ограничивать взаимодействие сервисов – запрет доступа контейнеров в интернет, но разрешение выхода в локальную сеть.
Настройка PBR в Linux
Создаём дополнительные таблицы маршрутов
По умолчанию в Linux есть таблица main, но для PBR нам нужны дополнительные. Добавим их в /etc/iproute2/rt_tables:
Добавляем маршруты в новые таблицы
Предположим, что у нас два выхода:
• eth0 – основной интернет,
• tun0 – VPN-интерфейс.
Добавим маршруты:
Создаём правила для выбора таблицы
Теперь направим трафик определённых приложений в нужные таблицы.
Например, весь трафик от процесса firefox через VPN:
Или весь SSH-трафик (порт 22) напрямую:
Проверяем настройки
Убедимся, что правила работают:
Обычно маршрутизация в Linux строится по таблице маршрутов, но что если нужно разделять трафик не просто по IP-адресу, а по приложению, порту или протоколу?
Здесь на помощь приходит Policy-Based Routing (PBR) – механизм, позволяющий задавать гибкие правила маршрутизации.
Когда это нужно?
Настройка PBR в Linux
Создаём дополнительные таблицы маршрутов
По умолчанию в Linux есть таблица main, но для PBR нам нужны дополнительные. Добавим их в /etc/iproute2/rt_tables:
echo "100 vpn_table" >> /etc/iproute2/rt_tables
echo "200 direct_table" >> /etc/iproute2/rt_tables
Добавляем маршруты в новые таблицы
Предположим, что у нас два выхода:
• eth0 – основной интернет,
• tun0 – VPN-интерфейс.
Добавим маршруты:
ip route add default via 192.168.1.1 dev eth0 table direct_table
ip route add default via 10.8.0.1 dev tun0 table vpn_table
Создаём правила для выбора таблицы
Теперь направим трафик определённых приложений в нужные таблицы.
Например, весь трафик от процесса firefox через VPN:
iptables -t mangle -A OUTPUT -m owner --uid-owner firefox -j MARK --set-mark 1
ip rule add fwmark 1 table vpn_table
Или весь SSH-трафик (порт 22) напрямую:
iptables -t mangle -A OUTPUT -p tcp --dport 22 -j MARK --set-mark 2
ip rule add fwmark 2 table direct_table
Проверяем настройки
Убедимся, что правила работают:
ip rule show
ip route show table vpn_table
ip route show table direct_table
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥4❤1👎1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34😁11❤1🥱1
Тонкая настройка TCP-стека в Linux: уменьшаем RTT и ускоряем соединения
Linux по умолчанию настроен на универсальный сценарий работы с сетью, но если вам нужна максимальная скорость соединений и минимальная задержка (RTT), стоит детальнее поработать с параметрами TCP-стека через sysctl.
Что влияет на скорость TCP:
1️⃣ Размер буферов – слишком маленькие буферы ограничивают скорость, а слишком большие приводят к задержкам.
2️⃣ Алгоритмы контроля перегрузок – некоторые из них более агрессивны и подходят для быстрой сети.
3️⃣ Обработка ACK – частота отправки подтверждений влияет на задержку.
4️⃣ Настройка SYN и TIME_WAIT – влияет на скорость установки и закрытия соединений.
Оптимизация через sysctl
Увеличиваем размеры буферов
Это позволяет использовать больше памяти для TCP-соединений, снижая потери пакетов при высоких скоростях.
Отключаем медленные алгоритмы управления перегрузками
BBR (Bottleneck Bandwidth and RTT) — алгоритм, который ускоряет TCP-соединения и минимизирует RTT, особенно в нестабильных сетях.
Оптимизируем обработку ACK
Это уменьшает задержки на медленных соединениях, но нужно тестировать для вашей сети.
Ускоряем установку соединений
Применение изменений
Чтобы сохранить настройки, добавьте их в /etc/sysctl.conf и примените командой:
Linux по умолчанию настроен на универсальный сценарий работы с сетью, но если вам нужна максимальная скорость соединений и минимальная задержка (RTT), стоит детальнее поработать с параметрами TCP-стека через sysctl.
Что влияет на скорость TCP:
Оптимизация через sysctl
Увеличиваем размеры буферов
sysctl -w net.core.rmem_max=67108864 # Макс. размер буфера приёма
sysctl -w net.core.wmem_max=67108864 # Макс. размер буфера отправки
sysctl -w net.ipv4.tcp_rmem="4096 87380 33554432" # Буферы TCP для чтения
sysctl -w net.ipv4.tcp_wmem="4096 65536 33554432" # Буферы TCP для записи
Это позволяет использовать больше памяти для TCP-соединений, снижая потери пакетов при высоких скоростях.
Отключаем медленные алгоритмы управления перегрузками
sysctl -w net.ipv4.tcp_congestion_control=bbr
BBR (Bottleneck Bandwidth and RTT) — алгоритм, который ускоряет TCP-соединения и минимизирует RTT, особенно в нестабильных сетях.
Оптимизируем обработку ACK
sysctl -w net.ipv4.tcp_delack_min=10 # Минимальная задержка перед ACK (в мс)
sysctl -w net.ipv4.tcp_adv_win_scale=2 # Улучшение работы с окнами
Это уменьшает задержки на медленных соединениях, но нужно тестировать для вашей сети.
Ускоряем установку соединений
sysctl -w net.ipv4.tcp_syncookies=1 # Включаем защиту от SYN-флуда
sysctl -w net.ipv4.tcp_syn_retries=2 # Уменьшаем число повторных SYN-запросов
sysctl -w net.ipv4.tcp_fin_timeout=10 # Быстро закрываем неактивные соединения
Применение изменений
Чтобы сохранить настройки, добавьте их в /etc/sysctl.conf и примените командой:
sysctl -p
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤2😱2
Почему использование swapoff -a может привести к зависанию системы?
Anonymous Quiz
4%
Все процессы будут немедленно завершены
20%
Ядро начнёт принудительно освобождать кеш страниц
71%
Если в системе недостаточно RAM, процессы не смогут выгружать данные в swap
4%
Операционная система переключится в аварийный режим
👍6🔥1
Построение отказоустойчивого DHCP через Kea и HA-режим
Если вы всё ещё используете классический ISC DHCP, самое время обратить внимание на Kea от ISC.
Это DHCP-сервер нового поколения, который поддерживает как IPv4, так и IPv6, имеет полноценный REST API, масштабируется горизонтально и умеет работать в отказоустойчивом режиме.
В отличие от старого ISC DHCP, Kea может синхронизировать lease’ы между двумя серверами почти в реальном времени.
Поддерживаются разные режимы работы:
• Load-balancing (Active-Active) – оба сервера обслуживают клиентов
• Hot-standby (Active-Standby) – один сервер активен, второй в резерве
• Partner-down – сценарий, когда один сервер считается временно недоступным
Вот пример простой конфигурации HA-модуля (kea-ctrl-agent + ha-hooks):
В режиме load-balancing оба сервера делят пул между собой и сразу же переключаются в случае отказа одного из них. Всё это можно мониторить и управлять через HTTP-запросы.
Ключевые преимущества Kea:
• JSON-конфигурация, удобная для автоматизации
• Управление через curl или kea-shell
• Интеграция с MySQL/PostgreSQL
• Поддержка хуков, логирование, экспорт метрик в Prometheus
Примеры команд управления через API:
Проверить статус HA-кластера:
Перевести сервер в ручной режим:
Получить список lease’ов:
Если вы всё ещё используете классический ISC DHCP, самое время обратить внимание на Kea от ISC.
Это DHCP-сервер нового поколения, который поддерживает как IPv4, так и IPv6, имеет полноценный REST API, масштабируется горизонтально и умеет работать в отказоустойчивом режиме.
В отличие от старого ISC DHCP, Kea может синхронизировать lease’ы между двумя серверами почти в реальном времени.
Поддерживаются разные режимы работы:
• Load-balancing (Active-Active) – оба сервера обслуживают клиентов
• Hot-standby (Active-Standby) – один сервер активен, второй в резерве
• Partner-down – сценарий, когда один сервер считается временно недоступным
Вот пример простой конфигурации HA-модуля (kea-ctrl-agent + ha-hooks):
{
"ha-server": {
"mode": "load-balancing",
"this-server-name": "dhcp1",
"peers": [
{
"name": "dhcp1",
"url": "https://192.168.1.10:8000/",
"role": "primary"
},
{
"name": "dhcp2",
"url": "https://192.168.1.11:8000/",
"role": "secondary"
}
],
"auto-failover": true
}
}
В режиме load-balancing оба сервера делят пул между собой и сразу же переключаются в случае отказа одного из них. Всё это можно мониторить и управлять через HTTP-запросы.
Ключевые преимущества Kea:
• JSON-конфигурация, удобная для автоматизации
• Управление через curl или kea-shell
• Интеграция с MySQL/PostgreSQL
• Поддержка хуков, логирование, экспорт метрик в Prometheus
Примеры команд управления через API:
Проверить статус HA-кластера:
curl -X POST -H "Content-Type: application/json" \
-d '{ "command": "ha-heartbeat" }' \
https://127.0.0.1:8000/
Перевести сервер в ручной режим:
curl -X POST -H "Content-Type: application/json" \
-d '{ "command": "ha-maintenance-start" }' \
https://127.0.0.1:8000/
Получить список lease’ов:
curl -X POST -H "Content-Type: application/json" \
-d '{ "command": "lease4-get-all" }' \
https://127.0.0.1:8000/
👍16❤1
Хочешь прокачать навыки работы с Kubernetes®?
Тогда приходи 10 апреля в 12:00 (мск) на вебинар от Yandex Cloud и Rebrain.
В программе вебинара:
— Как облачные сервисы Yandex Cloud упрощают работу с Kubernetes®.
— Разбор реальных кейсов, типичных ошибок и решения сложных задач.
— Лайфхаки для быстрого погружения в контейнерную инфраструктуру.
— Как администрировать Managed Kubernetes®, не теряя времени и нервов.
💡 Бесплатный вебинар уже дает кучу полезной инфы. Представь, сколько всего будет на полном кастомном обучении Kubernetes: Yandex Cloud и Rebrain 👉 Регистрируйся и присоединяйся.
Тогда приходи 10 апреля в 12:00 (мск) на вебинар от Yandex Cloud и Rebrain.
В программе вебинара:
— Как облачные сервисы Yandex Cloud упрощают работу с Kubernetes®.
— Разбор реальных кейсов, типичных ошибок и решения сложных задач.
— Лайфхаки для быстрого погружения в контейнерную инфраструктуру.
— Как администрировать Managed Kubernetes®, не теряя времени и нервов.
💡 Бесплатный вебинар уже дает кучу полезной инфы. Представь, сколько всего будет на полном кастомном обучении Kubernetes: Yandex Cloud и Rebrain 👉 Регистрируйся и присоединяйся.
👍1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Применение eBPF:
— Сетевой фильтр: ускоряет обработку пакетов, применяется в XDP и Cilium.
— Мониторинг и трассировка: инструменты вроде BCC и bpftrace используют eBPF для анализа работы ядра в реальном времени.
— Безопасность: используется в системе защиты, такой как Falco, для обнаружения аномалий.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12