Библиотека девопса | DevOps, SRE, Sysadmin
Все самое полезное для девопсера в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/25874ec4 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/6798b4e4509aba56522d1787
Ko'proq ko'rsatish📈 Telegram kanali Библиотека девопса | DevOps, SRE, Sysadmin analitikasi
Библиотека девопса | DevOps, SRE, Sysadmin (@devopsslib) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 10 429 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 11 851-o'rinni va Rossiya mintaqasida 62 903-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 10 429 obunachiga ega bo‘ldi.
11 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni 3 ga, so‘nggi 24 soatda esa 0 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 8.62% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 5.58% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 899 marta ko‘riladi; birinchi sutkada odatda 582 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 4 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent devops'a, навигация, скрипт, docker, git kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Все самое полезное для девопсера в одном канале.
По рекламе: @proglib_adv
Учиться у нас: https://proglib.io/w/25874ec4
Для обратной связи: @proglibrary_feeedback_bot
РКН: https://gosuslugi.ru/snet/6798b4e4509aba56522d1787”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 12 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
grep -i "network\|eth0\|link" /var/log/messages | tail -50
Что искать:
• link down / link up — интерфейс терял линк
• firmware — проблемы с firmware сетевой карты
• dropped — kernel отбрасывал пакеты
• OOM — Out of Memory, могло убить сетевые процессы
➡️ journalctl — современный способ
journalctl -n 100 # Последние 100 записей
journalctl -f # Следить в реальном времени (как tail -f)
journalctl -p err # Только ошибки
Фильтр по юниту (сервису):
journalctl -u NetworkManager -n 100
journalctl -u systemd-networkd -n 100
Фильтр по времени:
journalctl --since "10 minutes ago"
journalctl --since "2025-02-03 14:00" --until "2025-02-03 15:00"
➡️ NetworkManager и systemd-networkd
Современные Linux-дистрибутивы используют один из этих сервисов для управления сетью.
Проверка статуса:
systemctl status NetworkManager
systemctl status systemd-networkd
Ищите:
- Active: active (running) — всё ОК
- Active: failed — сервис упал
- Ошибки в выводе
Логи в реальном времени:
journalctl -u NetworkManager -f
Запустите эту команду, затем воспроизведите проблему — увидите, что происходит.
➡️ Перезапуск сетевых сервисов
На удалённом сервере это может разорвать SSH соединение!Используйте
screen или tmux перед перезапуском:
screen
systemctl restart NetworkManager
Если потеряли соединение, screen сохранит сессию. Переподключитесь и вернётесь в неё командой screen -r.
Альтернатива: at команда для отложенного восстановления сети:
echo "systemctl restart NetworkManager" | at now + 2 minutes
Если что-то пойдёт не так, через 2 минуты сеть автоматически перезапустится.
➡️ Мониторинг ресурсов
Иногда сетевые проблемы вызваны нехваткой ресурсов.
Проверка памяти:
free -h
Если своп активно используется — система испытывает нехватку RAM. Сетевые процессы могут тормозить или падать.
Проверка CPU:
top
htop
Высокая загрузка CPU может замедлять обработку пакетов.
Проверка дискового I/O:
iostat -x 1
Если диск перегружен, логирование замедляется, конфигурационные файлы читаются медленно.
Типичные находки в логах
NetworkManager: device disconnected
- Интерфейс потерял линк
- Проверьте физику (кабель, порт)
dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval X
- Не может получить IP от DHCP сервера
- DHCP сервер недоступен или перегружен
kernel: Out of memory: Killed process X (name)
- OOM killer убил процесс
- Возможно, убил NetworkManager или systemd-networkd
iptables: DROP IN=eth0 SRC=X.X.X.X
- Firewall блокирует пакеты
- Найдено блокирующее правило
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженераnc -zv example.com 80
Флаги:
• -z — только проверка, без отправки данных
• -v — подробный вывод
Результаты:
Connection to example.com 80 port [tcp/http] succeeded! — порт открыт, сервис слушает
Connection refused — порт закрыт, сервис не запущен
Connection timed out — пакеты не доходят, firewall или сеть
Проверьте, слушает ли приложение:
ss -tulpn | grep :80
или старая версия:
netstat -tulpn | grep :80
Должны увидеть строку типа:
tcp LISTEN 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1234))
0.0.0.0:80 означает слушает на всех интерфейсах. 127.0.0.1:80 — только локально и не доступен снаружи.
Если ничего нет — сервис не запущен или слушает на другом порту.
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженераmount подключает файловую систему с устройства к каталогу — точке монтирования.
Файл /etc/fstab — сердце автоматизации
Каждая строка файла описывает одну файловую систему с параметрами:
• Устройство: путь, UUID или метка (например, /dev/sdb1, UUID=xxxxxxxx)
• Точка монтирования: каталог назначения (/mnt/data, /home)
• Тип файловой системы: ext4, xfs, ntfs, nfs, cifs
• Опции: defaults, rw, ro, noauto, nofail и др.
• Dump: для утилиты резервного копирования (обычно 0 или 1)
• Pass: порядок проверки через fsck (0 — отключена, 1 — корневая ФС, 2 — остальные)
Пример:
UUID=a1b2c3d4-e5f6-7890 /mnt/backup ext4 defaults,nofail 0 2
Команда mount -a (mount all) монтирует все файловые системы из /etc/fstab, которые:
• Имеют опцию auto
• Ещё не смонтированы
Записи с опцией noauto пропускаются — они монтируются только вручную.
Зачем это нужно
Init-система запускает mount -a, автоматически монтируя все необходимые файловые системы: корневую, /home, /var, сетевые шары.
После правки /etc/fstab не нужно перезагружаться или монтировать всё вручную — достаточно одной команды.
Добавление нового раздела:
# Создаём точку монтирования
sudo mkdir /data
# Добавляем в /etc/fstab
/dev/sdc1 /data ext4 defaults 0 2
# Применяем изменения
sudo mount -a
# Проверяем
df -h /data
mount -a — избавляет от рутины и обеспечивает применение конфигурации монтирования.
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#root_promptping 8.8.8.8 работает, но ping google.com выдаёт "Name or service not known" — это проблема с DNS. Современные приложения используют доменные имена для всего, поэтому DNS критичен.
Файл /etc/resolv.conf:
cat /etc/resolv.conf
Содержит адреса DNS серверов:
nameserver 8.8.8.8 nameserver 8.8.4.4Если файл пустой или содержит неправильные адреса — резолвинг не работает. Проверьте доступность DNS сервера:
ping 8.8.8.8
nc -zv 8.8.8.8 53
Порт 53 — это DNS. Если порт закрыт или недоступен — сервер не может отвечать на DNS запросы.
dig — детальная DNS диагностика:
dig google.com
Показывает весь процесс разрешения имени:
• Какой DNS сервер ответил
• Сколько времени занял запрос
• Полученные A записи — IP адреса
Типичные ошибки в dig:
status: NXDOMAIN — домен не существует. Опечатка или домен удалён
status: SERVFAIL — DNS сервер столкнулся с ошибкой. Проблема на стороне DNS
status: REFUSED — сервер отказался обрабатывать запрос. ACL блокирует ваш IP
connection timed out — DNS сервер недоступен. Проверьте firewall
nslookup — альтернатива dig:
nslookup google.com
Проще, чем dig, но менее информативен. Полезен для быстрой проверки.
Проблемы с DNS в контейнерах
В Kubernetes и Docker DNS часто предоставляется внутренним сервисом.
Kubernetes:
• CoreDNS или kube-dns
• Проверьте: kubectl get pods -n kube-system | grep dns
• Логи: kubectl logs -n kube-system coredns-xxx
Docker:
• Встроенный DNS на 127.0.0.11
• Проблемы при неправильной конфигурации сети контейнера
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженераless помогает листать большие текстовые файлы в терминале, не загружая их целиком в память.
Запуск: less filename
Клавиши для движения
• Стрелка вниз/Enter/j – на строку вперёд
• Стрелка вверх/k – на строку назад
• Пробел/Page Down – страница вперед
• Page Up/b – страница назад.
• g – в начало, G – в конец.
Поиск: /текст для поиска вперед, ?текст для поиска назад. n – следующий, N – предыдущий.
Полезные флаги:
• -N – номера строк
• -s – сжимает пустые строки
• -i – поиск без учета регистра
• +F – следит за изменениями, как tail -f
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженераping gateway работает, но связь всё равно не работает. Вероятно, виноват файрволл. Он может молча блокировать пакеты, не оставляя очевидных следов.
Linux может использовать несколько систем: iptables, nftables, firewalld.
iptables — классическая система:
iptables -L -n -v
Флаги:
-L — list, показывает правила
-n — numeric, не резолвит имена
-v — verbose, показывает счётчики пакетов
Вывод показывает три основные цепочки:
- INPUT — входящие пакеты
- OUTPUT — исходящие пакеты
- FORWARD — транзитные (для маршрутизатора)
Политика по умолчанию:
Chain INPUT (policy DROP)Policy DROP — всё блокируется по умолчанию, разрешено только то, что явно указано в правилах выше. Безопасно, но легко сломать связность. Policy ACCEPT — всё разрешено по умолчанию, блокируется только указанное. Менее безопасно, но проще в отладке.
iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
1523 128K DROP tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Смотрите на колонку pkts (packets). Если правило с DROP/REJECT показывает большое количество — оно активно блокирует трафик.
В примере выше: 1523 пакета на порт 22 (SSH) были отброшены.
Временное отключение файерволла:
iptables -F # Очистить все правила
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
Если после этого всё заработало — проблема точно в правилах. Восстановите их и ищите конкретное блокирующее правило.
firewalld — современная альтернатива:
firewall-cmd --list-all
Показывает активную зону и все правила в ней. Firewalld работает с концепцией зон: public, internal, trusted, dmz и т.д.
Проверьте:
- Какая зона активна для вашего интерфейса
- Какие сервисы разрешены в этой зоне
- Какие порты открыты
Какие зоны активны и на каких интерфейсах:
firewall-cmd --get-active-zones
Добавление правил firewalld
Разрешить сервис (HTTP):
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
Разрешить порт:
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
Флаг --permanent делает правило постоянным. Без него — только до перезагрузки firewalld.
Если правил много, найти виновника сложно. Добавьте логирование для отброшенных пакетов:
iptables:
iptables -I INPUT -j LOG --log-prefix "DROPPED: "
Теперь все отброшенные пакеты будут логироваться в /var/log/messages с префиксом "DROPPED:".
firewalld:
firewall-cmd --set-log-denied=all
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера--memory хорошо, но нужно вспомнить про --memory-swap.
Вопрос:
Как работает memory-swap в Docker?Ключевой момент: swap — это не дополнительная память, а ответ в канале с вопросами 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека devops'a #задача_со_звёздочкой
AgentOps: инструменты для трассировки и мониторинга цепочек вызовов;
— безопасность: как избежать инъекций и утечек данных;
— оптимизация: работа с токенами, кэширование и стоимость запросов;
— деплой мультиагентных систем (архитектура, интеграции).
Курс на Python, но понимание принципов работы LangGraph и векторных БД критически важно для современной инфраструктуры.
Записаться на курс
Смотреть первую лекцию
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
