«Ростелеком» снизил скорость интернета жителю Новосибирска за большой объём трафика
В компании объяснили это превышением лимита в 4 ТБ и сослались на пункт своих правил, позволяющий ограничивать скорость при аномально высоком потреблении для защиты сети и обеспечения равных условий для всех пользователей.
«Ростелеком» утверждает, что безлимитные тарифы для физических лиц не имеют жёстких ограничений по объёму трафика, однако при сильной нагрузке возможны временные замедления для проведения проверки.
Житель Новосибирска сообщил, что «Ростелеком» снизил ему скорость интернета с 500 Мбит/с до 20 Мбит/с после того, как за 13 дней он скачал около 6 ТБ данных.
В компании объяснили это превышением лимита в 4 ТБ и сослались на пункт своих правил, позволяющий ограничивать скорость при аномально высоком потреблении для защиты сети и обеспечения равных условий для всех пользователей.
«Ростелеком» утверждает, что безлимитные тарифы для физических лиц не имеют жёстких ограничений по объёму трафика, однако при сильной нагрузке возможны временные замедления для проведения проверки.
👎29💊14👏6🤔5❤3
GitOps для /etc: как сделать конфиги отслеживаемыми
Если хочется понимать, кто и когда правил /etc, есть проверенное решение:
etckeeper + Git = история изменений конфигов
etckeeper — утилита, которая автоматически сохраняет изменения в /etc в git-репозиторий.
Работает с apt, yum, dnf, pacman и другими пакетными менеджерами: каждый раз, когда вы устанавливаете или удаляете пакет, etckeeper делает git commit.
Установка:
После этого можно спокойно делать:
Защита от случайных изменений: pre-commit хуки
Добавь pre-commit хук, который будет проверять изменения перед коммитом: например, запрещать случайное удаление важных файлов (sshd_config, fstab, resolv.conf и т.п.) или напоминать о ручной проверке после merge.
Пример хука:
Какие плюсы?
➕ Всё /etc в git, можно откатиться к любой точке
➕ Автоматически коммитит после apt upgrade и dpkg-reconfigure
➕ Удобно проверять различия между серверами (git diff)
➕( Подходит для CI и GitOps-сценариев
Системные конфиги часто меняются вручную — и так же вручную теряются.
Если хочется понимать, кто и когда правил /etc, есть проверенное решение:
etckeeper + Git = история изменений конфигов
etckeeper — утилита, которая автоматически сохраняет изменения в /etc в git-репозиторий.
Работает с apt, yum, dnf, pacman и другими пакетными менеджерами: каждый раз, когда вы устанавливаете или удаляете пакет, etckeeper делает git commit.
Установка:
sudo apt install etckeeper # для Debian/Ubuntu
sudo etckeeper init
sudo etckeeper commit "Initial"
После этого можно спокойно делать:
cd /etc
git log # вся история изменений
git diff # сравнение версий
Защита от случайных изменений: pre-commit хуки
Добавь pre-commit хук, который будет проверять изменения перед коммитом: например, запрещать случайное удаление важных файлов (sshd_config, fstab, resolv.conf и т.п.) или напоминать о ручной проверке после merge.
Пример хука:
#!/bin/sh
if git diff --cached | grep -q "sshd_config"; then
echo "⚠️ Вы изменили sshd_config — проверьте доступность SSH!"
fi
Какие плюсы?
➕ Всё /etc в git, можно откатиться к любой точке
➕ Автоматически коммитит после apt upgrade и dpkg-reconfigure
➕ Удобно проверять различия между серверами (git diff)
➕( Подходит для CI и GitOps-сценариев
❤9👍5
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👎5🔥1
Часть 2. GitOps для /etc: отслеживаем конфигурации через etckeeper и pre-commit хуки
Чтобы избежать потери конфигов даже при сбое системы — добавим резервное копирование git-репозитория /etc в безопасное место.
1️⃣ Настроим удалённый репозиторий
Создаём bare-репозиторий на другом сервере или в GitLab/Gitea:
На основном сервере:
2️⃣ Добавим автоматический push после каждого commit
Можно прописать post-commit хук:
Теперь каждый раз, когда etckeeper фиксирует изменения, копия будет уходить на внешний сервер.
Проверка целостности и откат
Если кто-то случайно удалит или испортит конфиг — откат делается одной командой:
Также можно использовать:
Чтобы избежать потери конфигов даже при сбое системы — добавим резервное копирование git-репозитория /etc в безопасное место.
Создаём bare-репозиторий на другом сервере или в GitLab/Gitea:
git init --bare /srv/backup/etc.git
На основном сервере:
cd /etc
git remote add backup ssh://user@backup-host/srv/backup/etc.git
git push backup master
Можно прописать post-commit хук:
echo 'git push backup master' > /etc/.git/hooks/post-commit
chmod +x /etc/.git/hooks/post-commit
Теперь каждый раз, когда etckeeper фиксирует изменения, копия будет уходить на внешний сервер.
Проверка целостности и откат
Если кто-то случайно удалит или испортит конфиг — откат делается одной командой:
cd /etc
git checkout HEAD^ -- ssh/sshd_config
Также можно использовать:
git status # покажет, что поменялось
git log -p FILE # покажет кто и когда правил конкретный файл
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9👍5
Собственный mirror репозиториев APT или YUM в локальной сети
В изолированных средах, где серверы не имеют прямого выхода в интернет, или при массовом развёртывании машин, выгодно держать локальное зеркало репозиториев.
Это позволяет:
• ускорить установку пакетов и обновлений,
• исключить зависимость от внешних зеркал,
• обеспечить стабильность (все пакеты одной версии),
• работать в полностью оффлайн-среде.
Пример APT-репозитория (Ubuntu)
1️⃣ Установим apt-mirror:
2️⃣ Настроим зеркалирование:
Пример:
3️⃣ Синхронизируем:
4️⃣ Настроим доступ через apache2:
В изолированных средах, где серверы не имеют прямого выхода в интернет, или при массовом развёртывании машин, выгодно держать локальное зеркало репозиториев.
Это позволяет:
• ускорить установку пакетов и обновлений,
• исключить зависимость от внешних зеркал,
• обеспечить стабильность (все пакеты одной версии),
• работать в полностью оффлайн-среде.
Пример APT-репозитория (Ubuntu)
sudo apt install apt-mirror apache2
sudo nano /etc/apt/mirror.list
Пример:
set base_path /var/spool/apt-mirror
deb https://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
clean
sudo apt-mirror
sudo ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14👍6👎1
Что такое CNI в Kubernetes?
Anonymous Quiz
83%
Контейнерный сетевой интерфейс — плагин для организации сети внутри кластера
4%
Команда для обновления кластера
5%
Система хранения данных
8%
Тип контейнерного образа
🤣10❤1👍1
Собственный time-сервер (NTP) с хардварной синхронизацией
Когда в сети критично точное время (финансовые транзакции, логирование событий, биллинг, Kerberos) — не стоит полагаться только на внешние NTP-сервера.
Лучше настроить локальный time-сервер с аппаратным источником времени.
Как это сделать?
1️⃣ Аппаратный источник
• GPS-приёмник с поддержкой PPS (например, u-blox NEO, Garmin GPS 18x LVC)
• Или дешевле — USB RTC-модули с хардварными часами (DS3231 и аналоги)
2️⃣ Система: Linux + chronyd или ntpd
Chrony проще и точнее работает с нестабильными источниками (вроде GPS):
3️⃣ Пример конфигурации chrony.conf:
• SHM — данные от gpsd
• PPS — сигнал точной секунды
• local stratum — объявляем себя сервером
4️⃣ Проверка:
Должно появиться что-то вроде:
Когда в сети критично точное время (финансовые транзакции, логирование событий, биллинг, Kerberos) — не стоит полагаться только на внешние NTP-сервера.
Лучше настроить локальный time-сервер с аппаратным источником времени.
Как это сделать?
• GPS-приёмник с поддержкой PPS (например, u-blox NEO, Garmin GPS 18x LVC)
• Или дешевле — USB RTC-модули с хардварными часами (DS3231 и аналоги)
Chrony проще и точнее работает с нестабильными источниками (вроде GPS):
sudo apt install chrony gpsd gpsd-clients
refclock SHM 0 refid GPS precision 1e-1
refclock SOCK /var/run/chrony.ttyS0.sock refid PPS lock GPS
allow 192.168.0.0/16
local stratum 10
• SHM — данные от gpsd
• PPS — сигнал точной секунды
• local stratum — объявляем себя сервером
chronyc sources -v
Должно появиться что-то вроде:
#* GPS 0 10 377 123 +0.000123 +0.000001 0.000
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤6👎1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👎3🔥2
Восстановление root-пароля в Ubuntu
Забыли root-пароль в Ubuntu? Не паникуйте! Сбросить пароль можно за несколько минут. Мы рассмотрим два способа восстановления: через Recovery Mode и альтернативный метод через Grub.
Эти методы работают на обычных системах, а также в виртуальных машинах (VMware, VirtualBox).
Способ 1: Сброс пароля через Recovery Mode
Этот метод удобен, если у вас есть доступ к меню загрузки Grub.
⏺ Шаг 1: Вход в режим восстановления
1. Перезагрузите компьютер.
2. Если меню Grub не появляется автоматически, нажимайте Shift во время загрузки.
3. В меню выберите Advanced Options for Ubuntu.
4. Найдите вариант с (recovery mode) и выберите его.
После небольшой загрузки появится меню восстановления.
⏺ Шаг 2: Переход в командную строку root
1. В списке выберите Root (Drop to root shell prompt).
2. Нажмите Enter – вы попадете в терминал с root-доступом.
⏺ Шаг 3: Разрешение записи в корневой раздел
По умолчанию корневой раздел доступен только для чтения, поэтому перед изменением пароля нужно разрешить запись:
⏺ Шаг 4: Сброс пароля
1. Посмотрите список пользователей:
Здесь будут показаны все пользовательские папки – выберите нужного пользователя.
2. Сбросьте пароль:
(вместо username подставьте имя пользователя).
3. Дважды введите новый пароль.
⏺ Шаг 5: Перезагрузка системы
1. Введите команду выхода:
2. Вернетесь в меню восстановления – выберите Resume boot для загрузки системы.
3. После перезагрузки можно войти с новым паролем.
Способ 2: Сброс пароля через Grub
Этот метод подходит, если Recovery Mode недоступен или не работает.
Шаг 1: Изменение параметров в Grub
Перезагрузите компьютер и нажимайте Shift, пока не появится меню Grub.
Дальше выберите Ubuntu и нажмите E (редактировать параметры загрузки). И найдите строку, начинающуюся с linux, замените ro на rw и добавьте в конец:
Нажмите Ctrl + X, чтобы загрузиться в систему.
Теперь вы окажетесь в командной строке bash без пароля.
Шаг 2: Смена пароля
Введите команду:
Дважды введите новый пароль. И перезагрузите систему командой:
После перезагрузки вы сможете войти в систему с новым паролем.
Возможные ошибки и их решение
⏺ Ошибка “Authentication token manipulation error”
Проблема: Файловая система доступна только для чтения.
Решение: Разрешите запись перед изменением пароля:
⏺ Нет пункта “Recovery Mode” в Grub
Проблема: В меню загрузки отсутствует пункт Recovery Mode.
Решение:
• Выберите Ubuntu в Grub, нажмите E для редактирования параметров.
• В конце строки загрузки добавьте single.
• Нажмите Ctrl + X или F10, чтобы загрузиться в терминал суперпользователя.
⏺ Ошибка “end Kernel panic” при загрузке
Проблема: Ошибка загрузки ядра.
Решение: Удалите параметр splash boot при редактировании загрузки в Grub.
⏺ Ошибка “Failed to connect to bus” при перезагрузке
Проблема: Некорректное завершение системы после смены пароля.
Решение: Используйте команду:
Забыли root-пароль в Ubuntu? Не паникуйте! Сбросить пароль можно за несколько минут. Мы рассмотрим два способа восстановления: через Recovery Mode и альтернативный метод через Grub.
Эти методы работают на обычных системах, а также в виртуальных машинах (VMware, VirtualBox).
Способ 1: Сброс пароля через Recovery Mode
Этот метод удобен, если у вас есть доступ к меню загрузки Grub.
1. Перезагрузите компьютер.
2. Если меню Grub не появляется автоматически, нажимайте Shift во время загрузки.
3. В меню выберите Advanced Options for Ubuntu.
4. Найдите вариант с (recovery mode) и выберите его.
После небольшой загрузки появится меню восстановления.
1. В списке выберите Root (Drop to root shell prompt).
2. Нажмите Enter – вы попадете в терминал с root-доступом.
По умолчанию корневой раздел доступен только для чтения, поэтому перед изменением пароля нужно разрешить запись:
mount -rw -o remount /
1. Посмотрите список пользователей:
ls /home
Здесь будут показаны все пользовательские папки – выберите нужного пользователя.
2. Сбросьте пароль:
passwd username
(вместо username подставьте имя пользователя).
3. Дважды введите новый пароль.
1. Введите команду выхода:
exit
2. Вернетесь в меню восстановления – выберите Resume boot для загрузки системы.
3. После перезагрузки можно войти с новым паролем.
Способ 2: Сброс пароля через Grub
Этот метод подходит, если Recovery Mode недоступен или не работает.
Шаг 1: Изменение параметров в Grub
Перезагрузите компьютер и нажимайте Shift, пока не появится меню Grub.
Дальше выберите Ubuntu и нажмите E (редактировать параметры загрузки). И найдите строку, начинающуюся с linux, замените ro на rw и добавьте в конец:
init=/bin/bash
Нажмите Ctrl + X, чтобы загрузиться в систему.
Теперь вы окажетесь в командной строке bash без пароля.
Шаг 2: Смена пароля
Введите команду:
passwd username
Дважды введите новый пароль. И перезагрузите систему командой:
shutdown -r now
После перезагрузки вы сможете войти в систему с новым паролем.
Возможные ошибки и их решение
Проблема: Файловая система доступна только для чтения.
Решение: Разрешите запись перед изменением пароля:
mount -rw -o remount /
Проблема: В меню загрузки отсутствует пункт Recovery Mode.
Решение:
• Выберите Ubuntu в Grub, нажмите E для редактирования параметров.
• В конце строки загрузки добавьте single.
• Нажмите Ctrl + X или F10, чтобы загрузиться в терминал суперпользователя.
Проблема: Ошибка загрузки ядра.
Решение: Удалите параметр splash boot при редактировании загрузки в Grub.
Проблема: Некорректное завершение системы после смены пароля.
Решение: Используйте команду:
exec /sbin/init
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤7🤪1
Вышел Wireshark 4.4.8
В июле 2025 вышла стабильная версия Wireshark 4.4.8 — популярного open source сетевого анализатора. Обновление включает:
⏺ Исправления ошибок и уязвимостей
⏺ Улучшения графиков VoIP, TCP и интерфейсов
⏺ Обновления в поддержке протоколов: IPsec, DTLS, TETRA, KRB5, UDS и др.
⏺ Поддержку формата pcapng и улучшенную работу с UTF-8
Проект развивается с 2008 года и распространяется под GPLv2. Wireshark остаётся ключевым инструментом для специалистов по сетям и безопасности.
В июле 2025 вышла стабильная версия Wireshark 4.4.8 — популярного open source сетевого анализатора. Обновление включает:
Проект развивается с 2008 года и распространяется под GPLv2. Wireshark остаётся ключевым инструментом для специалистов по сетям и безопасности.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤3
IPv6 через туннели: 6to4 и WireGuard
Если ваш хостинг не даёт IPv6-адреса, это не повод отказываться от поддержки современного протокола.
Есть как минимум два способа получить IPv6-трафик — с помощью 6to4 или через VPN-туннель, например, WireGuard.
⏺ 6to4 — автоматический туннельный механизм, где IPv6 инкапсулируется в IPv4. Подходит, если у вас есть публичный IP, и позволяет быстро поднять IPv6 без внешних сервисов. Минус — нестабильность и устаревание технологии.
⏺ WireGuard + маршрутизация — более современный способ. Настраиваете второй VPS с IPv6 (например, на Hetzner или Vultr), поднимаете между ними WireGuard и прокидываете IPv6-префикс через маршрут. Внутри сети можно даже делить подсети и выдавать адреса локальным контейнерам.
Подойдёт для:
➕ тестирования IPv6-приложений;
➕ обхода ограничений провайдера;
➕ развёртывания публичных IPv6-сервисов.
⚡️ Плюс - вы контролируете туннель и сами задаёте маршруты. Минус — нужна ещё одна VPS или доверенный endpoint.
Как получить IPv6 на VPS, где его нет
Если ваш хостинг не даёт IPv6-адреса, это не повод отказываться от поддержки современного протокола.
Есть как минимум два способа получить IPv6-трафик — с помощью 6to4 или через VPN-туннель, например, WireGuard.
Подойдёт для:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2👎1
Для чего нужна команда journalctl -u nginx.service?
Anonymous Quiz
1%
Запускает nginx
92%
Показывает логи сервиса nginx
1%
Останавливает nginx
6%
Обновляет nginx
🤣11❤3👍3👎1💊1
Быстрый аудит безопасности Linux-системы с помощью Lynis
Когда нужно быстро проверить безопасность сервера или рабочего места, Lynis - удобный инструмент для первичного аудита и рекомендаций по улучшению защиты.
Как это сделать?
1️⃣ Установка
Для Debian/Ubuntu:
Для других дистрибутивов — через пакетный менеджер или с официального сайта.
2️⃣ Запуск аудита
Запускаем сканирование с правами root:
3️⃣ Анализ отчёта
⏺ В конце проверки Lynis выведет список предупреждений и рекомендаций.
⏺ Логи сохраняются в /var/log/lynis.log.
⏺ Особое внимание уделяем секциям warnings и suggestions.
4️⃣ Основные проверки Lynis
• Настройки ядра и безопасности
• Конфигурация SSH, sudo и PAM
• Права доступа к критичным файлам
• Установленные пакеты и их обновления
• Журналы и брандмауэр
Когда нужно быстро проверить безопасность сервера или рабочего места, Lynis - удобный инструмент для первичного аудита и рекомендаций по улучшению защиты.
Как это сделать?
Для Debian/Ubuntu:
sudo apt install lynis
Для других дистрибутивов — через пакетный менеджер или с официального сайта.
Запускаем сканирование с правами root:
sudo lynis audit system
• Настройки ядра и безопасности
• Конфигурация SSH, sudo и PAM
• Права доступа к критичным файлам
• Установленные пакеты и их обновления
• Журналы и брандмауэр
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤6👍2
Собственный mirror APT/YUM в локальной сети
Когда нужен быстрый доступ к пакетам без выхода в интернет — выручит локальное зеркало.
Это экономит трафик, ускоряет обновления и позволяет работать в air-gapped-сетях.
APT (Debian/Ubuntu)
Установим apt-mirror и любой HTTP-сервер (например, Apache):
Файл /etc/apt/mirror.list указывает, какие репозитории скачивать. После настройки запускаем:
Зеркало будет лежать в /var/spool/apt-mirror. Отдаём его через Apache по https://mirror.local/ubuntu.
YUM/DNF (RHEL/CentOS/AlmaLinux)
Для RedHat-систем используем reposync и createrepo:
Можно автоматизировать через cron и обновлять репо по расписанию.
✅ Проверка
На клиентских машинах указываем новый baseurl в .repo-файлах:
Для APT — добавляем строчку в sources.list:
Когда нужен быстрый доступ к пакетам без выхода в интернет — выручит локальное зеркало.
Это экономит трафик, ускоряет обновления и позволяет работать в air-gapped-сетях.
APT (Debian/Ubuntu)
Установим apt-mirror и любой HTTP-сервер (например, Apache):
sudo apt install apt-mirror apache2
Файл /etc/apt/mirror.list указывает, какие репозитории скачивать. После настройки запускаем:
sudo apt-mirror
Зеркало будет лежать в /var/spool/apt-mirror. Отдаём его через Apache по https://mirror.local/ubuntu.
YUM/DNF (RHEL/CentOS/AlmaLinux)
Для RedHat-систем используем reposync и createrepo:
reposync --gpgcheck -l --repoid=base --download_path=/var/www/html/yum
createrepo /var/www/html/yum
Можно автоматизировать через cron и обновлять репо по расписанию.
На клиентских машинах указываем новый baseurl в .repo-файлах:
baseurl=https://mirror.local/yum
enabled=1
gpgcheck=0
Для APT — добавляем строчку в sources.list:
deb https://mirror.local/ubuntu focal main restricted
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7🔥6
Разработчик потратил на Replit $600+, но сервис удалил базу данных несмотря на запреты
Джейсон Лемкин вложил в ИИ-платформу Replit более $600, используя её для вайб-кодинга.
Replit признал ошибку и восстановил данные, но ИИ продолжал игнорировать запреты, меняя код без разрешения.
Лемкин считает, что такие ИИ-инструменты пока нестабильны и требуют постоянного контроля.
Джейсон Лемкин вложил в ИИ-платформу Replit более $600, используя её для вайб-кодинга.
Сервис удалил его базу данных, хотя Лемкин запретил любые изменения без согласия.
Replit признал ошибку и восстановил данные, но ИИ продолжал игнорировать запреты, меняя код без разрешения.
Лемкин считает, что такие ИИ-инструменты пока нестабильны и требуют постоянного контроля.
❤5👍2
Построение отказоустойчивого 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/
❤9👍3
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.
Проверить текущее состояние THP можно командой:
cat /sys/kernel/mm/transparent_hugepage/enabled
Отключить, если они мешают:
echo never > /sys/kernel/mm/transparent_hugepage/enabledЯ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤5
Локальный Docker Registry в своей сети
Для ускорения работы CI/CD, уменьшения зависимости от внешних сервисов и повышения контроля над Docker-образами часто поднимают собственный приватный Docker Registry.
Официальный публичный реестр — Docker Hub, но для внутреннего использования лучше иметь локальный, чтобы экономить трафик, ускорять загрузки и обеспечивать безопасность.
Быстрый старт
Запускаем официальный образ Registry:
По умолчанию Registry доступен по HTTP на порту 5000.
Работа с локальным реестром
1️⃣ Тегируем локальный образ для отправки:
2️⃣ Отправляем образ:
3️⃣ На других хостах забираем образ:
Для ускорения работы CI/CD, уменьшения зависимости от внешних сервисов и повышения контроля над Docker-образами часто поднимают собственный приватный Docker Registry.
Docker Registry — это сервис хранения и распространения контейнерных образов.
Официальный публичный реестр — Docker Hub, но для внутреннего использования лучше иметь локальный, чтобы экономить трафик, ускорять загрузки и обеспечивать безопасность.
Быстрый старт
Запускаем официальный образ Registry:
docker run -d -p 5000:5000 --restart=always --name registry registry:2
По умолчанию Registry доступен по HTTP на порту 5000.
Работа с локальным реестром
docker tag myimage localhost:5000/myimage
docker push localhost:5000/myimage
docker pull localhost:5000/myimage
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥2