Anonymous Poll
32%
certbot / acme.sh
72%
Grafana + Loki/Prometheus
47%
Jenkins + Ansible
63%
kubectl
55%
cron задачи
29%
rsync
💻 Проверка доступности порта на удалённом хосте
Иногда нужно быстро убедиться, что определённый порт на удалённом сервере доступен и принимает подключения. Это нужно для диагностики сетевых проблем и проверки работы файрвола.
Используйте команду:
Такой тест помогает быстро понять, почему клиент не подключается, и выявить проблемы с сетью или настройками безопасности.
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#root@prompt
Иногда нужно быстро убедиться, что определённый порт на удалённом сервере доступен и принимает подключения. Это нужно для диагностики сетевых проблем и проверки работы файрвола.
Используйте команду:
nc -zv example.com 443
nc (netcat) с ключами -zv проверяет открытость порта без передачи данных.-z означает «сканировать без отправки данных».-v включает подробный вывод, чтобы видеть результат проверки.Такой тест помогает быстро понять, почему клиент не подключается, и выявить проблемы с сетью или настройками безопасности.
📍 Навигация: Вакансии • Задачи • Собесы
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑💻 Когда сервис есть, а эндпоинтов ноль
В Kubernetes сервис живет за счет совпадения селектора и меток у pod’ов. Стоит им разъехаться сервис останется без эндпоинтов и трафик просто перестанет доходить.
Классика сервис ищет pod’ы по селектору
Пример:
Такая мелочь превращает все реплики в осиротевшие поды. Сервис их не видит и не проксирует к ним трафик. Диагностика всегда начинается с
Чтобы не ловить тихие простои держите правило селекторы и метки описываются в одном месте и копируются, а не набираются с клавиатуры плюс при любом изменении сразу проверяйте
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера
В Kubernetes сервис живет за счет совпадения селектора и меток у pod’ов. Стоит им разъехаться сервис останется без эндпоинтов и трафик просто перестанет доходить.
Классика сервис ищет pod’ы по селектору
app: frontend, а Deployment размечает их как component: frontend или app: ui. В итоге сервис существует, DNS работает, но kubectl get endpoints my-service показывает пустой список, а наружу это выглядит как «все крутится, но запросы висят».Пример:
# Service
spec:
selector:
app: frontend
---
# Deployment pod labels
metadata:
labels:
app: ui
Такая мелочь превращает все реплики в осиротевшие поды. Сервис их не видит и не проксирует к ним трафик. Диагностика всегда начинается с
kubectl get endpoints <svc> и проверки kubectl get pods -l key=value.Чтобы не ловить тихие простои держите правило селекторы и метки описываются в одном месте и копируются, а не набираются с клавиатуры плюс при любом изменении сразу проверяйте
kubectl get endpoints и kubectl describe svc прежде чем считать rollout успешным.📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
CI/CD для твоих скиллов
DevOps — это вечное обучение. Инструменты меняются, подходы устаревают. Чтобы твой пайплайн развития не упал, нужно вовремя накатывать обновления.
Спецпредложение 1 + 2:
Берешь один курс, получаешь три. Платишь только за самый дорогой, остальные деплоятся бесплатно.
Что пригодится инженеру:
— программирование на Python (для автоматизации всего);
— основы IT (структурировать хаос).
Настроить пайплайн
До 31 декабря.
Саппорт: @manager_proglib
DevOps — это вечное обучение. Инструменты меняются, подходы устаревают. Чтобы твой пайплайн развития не упал, нужно вовремя накатывать обновления.
Спецпредложение 1 + 2:
Берешь один курс, получаешь три. Платишь только за самый дорогой, остальные деплоятся бесплатно.
Что пригодится инженеру:
— программирование на Python (для автоматизации всего);
— основы IT (структурировать хаос).
Настроить пайплайн
До 31 декабря.
Саппорт: @manager_proglib
❤1
🔄 Вышел Kali Linux 2025.4
Kali выкатили релиз 2025.4. Главное изменение — GNOME обновили до версии 49, полностью перевели на Wayland и выкинули X11 сессии. Заодно чуть причесали UX заменили Totem на Showtime, научили грид приложений складывать Kali tools в папки.
Live образ стал жертвой роста всего подряд его размер окончательно пробил лимит Cloudflare CDN в районе 5 ГБ, поэтому команда официально перевела доставку Live ISO исключительно на BitTorrent.
На стороне тулзов добавили bpf-linker, evil-winrm-py и hexstrike-ai и заодно подтянули ядро до 6.16. NetHunter получил поддержку Android 16 для нескольких устройств, обновленный Terminal с поддержкой новых версий Magisk, косметику в UI и новые шаблоны для WiFi атак.
➡️ Release Notes
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Kali выкатили релиз 2025.4. Главное изменение — GNOME обновили до версии 49, полностью перевели на Wayland и выкинули X11 сессии. Заодно чуть причесали UX заменили Totem на Showtime, научили грид приложений складывать Kali tools в папки.
Live образ стал жертвой роста всего подряд его размер окончательно пробил лимит Cloudflare CDN в районе 5 ГБ, поэтому команда официально перевела доставку Live ISO исключительно на BitTorrent.
На стороне тулзов добавили bpf-linker, evil-winrm-py и hexstrike-ai и заодно подтянули ядро до 6.16. NetHunter получил поддержку Android 16 для нескольких устройств, обновленный Terminal с поддержкой новых версий Magisk, косметику в UI и новые шаблоны для WiFi атак.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Настройка балансировщика нагрузки — важная задача для любого масштабируемого сервиса. Автоматизация с помощью Playbook помогает быстро и без ошибок развернуть HAProxy на нужных серверах.
Пример Ansible плейбука для установки и настройки HAProxy:
- name: Install and configure HAProxy
hosts: lb_servers
become: yes
tasks:
- name: Install HAProxy
apt:
name: haproxy
state: present
- name: Configure HAProxy
template:
src: haproxy.cfg.j2
dest: /etc/haproxy/haproxy.cfg
Пример шаблона haproxy.cfg.j2 с базовыми настройками:
log /dev/log local0
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
user haproxy
group haproxy
daemon
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
frontend http_front
bind *:80
default_backend http_back
backend http_back
balance roundrobin
server web1 192.168.1.101:80 check
server web2 192.168.1.102:80 check
📍 Навигация: Вакансии • Задачи • Собесы
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
🧑💻 Появилась дорожная карта по DevSecOps
roadmap.sh дропнули новую роадмапу по DevSecOps. Если думали перейти, но не было внятного плана, то это отличный и продуманный путь на 2026 год.
Можно быстро прикинуть, чего не хватает от secure coding и контейнерной безопасности до мониторинга, инцидент респонса и комплаенс.
➡️ Начать путь секьюрщика
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#архитектура_на_салфетке
roadmap.sh дропнули новую роадмапу по DevSecOps. Если думали перейти, но не было внятного плана, то это отличный и продуманный путь на 2026 год.
Можно быстро прикинуть, чего не хватает от secure coding и контейнерной безопасности до мониторинга, инцидент респонса и комплаенс.
📍 Навигация: Вакансии • Задачи • Собесы
#архитектура_на_салфетке
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👾1
Когда вы создаёте файл в Linux, вы думаете, что указываете ему права доступа. Но на самом деле происходит кое-что более сложное. umask — это скрытый охранник, который удаляет права из ваших файлов без вашего ведома.
Проблема: Файл создался, но прав меньше, чем ожидалось
Представьте ситуацию:
$ touch myfile.txt
$ ls -l myfile.txt
-rw-r--r-- 1 user user 0 Dec 16 10:00 myfile.txt
Вы ожидали, что файл будет доступен для записи группе и другим пользователям. Но этого не произошло. Вместо ожидаемых 0666
rw-rw-rw- вы получили 0644 rw-r--r--.umask — это маска вычитания прав доступа. Это не то, что добавляет права, а то, что их удаляет.
Выглядит это примерно так:
Желаемые права файла: 0666 (rw-rw-rw-)
Текущий umask: 0022 (----w--w-)
Результат (0666 & ~0022): 0644 (rw-r--r--)
Как узнать текущий umask:
$ umask
0022
Как изменить umask в текущей сессии:
$ umask 0077
$ touch secret.txt
$ ls -l secret.txt
-rw------- 1 user user 0 Dec 16 10:00 secret.txt
Постоянно: добавить в
~/.bashrc или ~/.zshrc📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩5
Для девопсов важно оперативно отслеживать загрузку CPU и использование памяти, чтобы вовремя реагировать на проблемы с производительностью.
Небольшой Python-скрипт с библиотекой psutil поможет быстро контролировать эти показатели:
import psutil
def check_system_resources():
cpu_usage = psutil.cpu_percent(interval=1)
memory_usage = psutil.virtual_memory().percent
if cpu_usage > 80:
print(f"High CPU usage: {cpu_usage}%")
if memory_usage > 80:
print(f"High Memory usage: {memory_usage}%")
check_system_resources()
Что делает скрипт:
• Измеряет загрузку процессора за 1 секунду
• Проверяет процент занятой оперативной памяти
• При использовании CPU или памяти выше 80% выводит предупреждение
Такой скрипт можно запускать вручную или интегрировать в систему мониторинга для быстрого реагирования на перегрузки.
📍 Навигация: Вакансии • Задачи • Собесы
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3❤2🌚1
DevOps Engineer — от 175 000 ₽ в Санкт-Петербург.
DevOps-инженер — от 300 000 ₽ в Москву.
Lead DevOps Specialist — до 350 000 ₽ на удалёнку. Хотели стать лидом? Это ваш шанс.
#вакансия_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳 Локальные LLM на винде
Docker добавили поддержку vLLM в Docker Model Runner на Windows через Docker Desktop с WSL2 и NVIDIA GPU. Теперь можно гонять высокопроизводительный inference LLMов локально почти теми же командами, что и в Linux.
Базовый сценарий: включаете Model Runner, ставите backend vLLM с CUDA и запускаете подготовленные образы с суффиксом
➡️ Блог разработчиков
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера
Docker добавили поддержку vLLM в Docker Model Runner на Windows через Docker Desktop с WSL2 и NVIDIA GPU. Теперь можно гонять высокопроизводительный inference LLMов локально почти теми же командами, что и в Linux.
Базовый сценарий: включаете Model Runner, ставите backend vLLM с CUDA и запускаете подготовленные образы с суффиксом
-vllm:docker desktop enable model-runner --tcp 12434
docker model install-runner --backend vllm --gpu cuda
docker model run ai/smollm2-vllm "Tell me about Docker."
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1