Сегодня на конференции Kuber Conf by AOT можно было посмотреть новое решение Stackland. Оно помогает управлять микросервисной архитектурой и AI-нагрузками внутри корпоративных сред — где важны безопасность, изоляция и контроль инфраструктуры.
В основе подхода — автоматизация и оркестрация через Kubernetes. Stackland объединяет управление сервисами, мониторинг и CI/CD-процессы в единой среде.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2⚡1👾1
Регулярные бэкапы — то, о чем вспоминают, когда уже поздно.
Вот базовый пример скрипта, который архивирует директорию в tar.gz с таймстэмпом в имени и складывает в заданное место:
import shutil
import time
def backup_directory(source, destination):
timestamp = time.strftime("%Y%m%d%H%M%S")
backup_file = f"{destination}/backup_{timestamp}.tar.gz"
# shutil.make_archive ожидает путь без расширения
shutil.make_archive(backup_file.replace(".tar.gz", ""), "gztar", source)
print(f"Backup completed: {backup_file}")
backup_directory("/path/to/important/data", "/path/to/backup/location")
Что делает скрипт:
• Берёт путь к исходной директории source и каталогу для бэкапов destination.
• Генерирует имя файла по текущему времени, чтобы каждый бэкап был уникальным.
• Создаёт архив в формате tar.gz с помощью shutil.make_archive.
• Печатает путь к созданному бэкапу.
Как использовать в продакшене:
• Положить скрипт в репозиторий инфраструктуры или ansible/helm-роль.
• Прописать запуск через cron, systemd timer или CI-пайплайн.
• Добавить логирование в файл и алерт при ошибке
Минимальная доработка под боевое окружение:
• Проверка существования директорий.
• Конфиг через переменные окружения или .env.
• Отправка бэкапа в S3 / объектное хранилище / удалённый сервер.
Такой небольшой скрипт закрывает базовую задачу резервного копирования важных директорий без лишних зависимостей.
🔹 Программирование на языке Python
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Когда вы разворачиваете Kubernetes кластер вручную, нужно на каждый узел установить куча компонентов: kubeadm, kubelet, kubectl, добавить репозитории, настроить сеть, включить необходимые модули ядра.
На одном узле это полчаса работы. На десяти узлах — это часы монотонной, однообразной работы, где легко что-то забыть или неправильно сделать.
Подготовили для вас такой плейбук:
- name: Configure Kubernetes node
hosts: nodes
become: yes
tasks:
- name: Install kubeadm, kubelet, and kubectl
apt:
name: "{{ item }}"
state: present
loop:
- kubeadm
- kubelet
- kubectl
hosts: nodes — плейбук выполняется на всех серверах, которые помечены как узлы (nodes) в вашем инвентаре Ansible.become: yes — нужны права администратора для установки пакетов и системных изменений.apt: — модуль для управления пакетами в Debian/Ubuntu. Установит из стандартных репозиториев.loop: — устанавливает три компонента:• kubeadm — инструмент для инициализации и управления кластером
• kubelet — агент, который запускает контейнеры на узле
• kubectl — команда для управления Kubernetes кластером
state: present — пакеты должны быть установлены.После установки этих компонентов узел будет готов присоединиться к кластеру Kubernetes.
🔹 Математика для разработки AI-моделей
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 Вышла FreeBSD 15.0
Вышел стабильный релиз FreeBSD 15.0. Образы уже доступны для amd64, aarch64, armv7, powerpc64, powerpc64le и riscv64, а также в форматах для виртуализации и облаков
Главное: 15.x окончательно про 64‑битные системы. Поддержка 32‑битных платформ в ядре прекращена, но до конца жизни 16.x останется возможность собирать 32‑битные приложения и запускать их через COMPAT_FREEBSD32 в 64‑битном окружении.
Теперь базовую систему можно ставить и обновлять через пакетный менеджер pkg, а классический монолитный подход через freebsd-update помечен как устаревающий и планируется к удалению к 16 версии.
Часть старых компонентов объявлена устаревшими или удалена: gvinum, ftpd, shar, fdisk, syscons и ряд старых драйверов
➡️ Анонс релиза
🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#пульс_индустрии
Вышел стабильный релиз FreeBSD 15.0. Образы уже доступны для amd64, aarch64, armv7, powerpc64, powerpc64le и riscv64, а также в форматах для виртуализации и облаков
Главное: 15.x окончательно про 64‑битные системы. Поддержка 32‑битных платформ в ядре прекращена, но до конца жизни 16.x останется возможность собирать 32‑битные приложения и запускать их через COMPAT_FREEBSD32 в 64‑битном окружении.
Теперь базовую систему можно ставить и обновлять через пакетный менеджер pkg, а классический монолитный подход через freebsd-update помечен как устаревающий и планируется к удалению к 16 версии.
Часть старых компонентов объявлена устаревшими или удалена: gvinum, ftpd, shar, fdisk, syscons и ряд старых драйверов
🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
MLOps — это не только Docker и K8s
Чтобы эффективно деплоить и мониторить модели, нужно понимать природу данных и метрик. DevOps, знающий математику ML, стоит на рынке x1.5.
Присоединяйтесь к курсу «Математика для разработки AI-моделей». Мы добавили живые вебинары.
Что прокачаем:
— понимание матричных операций (нагрузка на железо);
— логику линейной регрессии (как модель учится);
— SVD и сжатие данных (оптимизация хранения и передачи).
Первый вебинар уже в записи.
Регистрация до 9 декабря:
https://clc.to/LojFzw
Чтобы эффективно деплоить и мониторить модели, нужно понимать природу данных и метрик. DevOps, знающий математику ML, стоит на рынке x1.5.
Присоединяйтесь к курсу «Математика для разработки AI-моделей». Мы добавили живые вебинары.
Что прокачаем:
— понимание матричных операций (нагрузка на железо);
— логику линейной регрессии (как модель учится);
— SVD и сжатие данных (оптимизация хранения и передачи).
Первый вебинар уже в записи.
Регистрация до 9 декабря:
https://clc.to/LojFzw
На MacBook Pro 2019 с чипом T2 ставить Linux непросто. Но Fedora 42 запускается полностью, с Wi-Fi, звуком и тачпадом, если подготовиться заранее.
Если кратко, то раз-раз и готово, а подробности в статье.
🔹 ML для старта в Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚1
🐳 Почему секреты в Dockerfile остаются навсегда
Хардкодить ключи и пароли в Dockerfile кажется быстрым решением, но в контейнерном мире это почти гарантированная утечка. Даже если потом удалить секрет, он уже может остаться в слоях образа, логах, кэше сборки и сторонних регистрах.
Docker строит образ послойно, и каждый слой можно просмотреть через docker history или инструменты анализа образов.
Если на каком то шаге в Dockerfile задать ENV с токеном или скопировать файл с секретами, этот слой останется в истории образа даже после последующих RUN rm и похожих команд. В результате любой, кто получил образ или доступ к реестру, может восстановить эти данные.
Надежное правило для повседневной работы простое — в Dockerfile никогда не должно быть токенов, паролей и ключей. Секреты передаются только в рантайме через env file или встроенные механизмы секретов платформы, а процесс сборки остается максимально слепым к конфиденциальным данным.
🔹 Алгоритмы и структуры данных
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#root@prompt
Хардкодить ключи и пароли в Dockerfile кажется быстрым решением, но в контейнерном мире это почти гарантированная утечка. Даже если потом удалить секрет, он уже может остаться в слоях образа, логах, кэше сборки и сторонних регистрах.
Docker строит образ послойно, и каждый слой можно просмотреть через docker history или инструменты анализа образов.
Если на каком то шаге в Dockerfile задать ENV с токеном или скопировать файл с секретами, этот слой останется в истории образа даже после последующих RUN rm и похожих команд. В результате любой, кто получил образ или доступ к реестру, может восстановить эти данные.
Надежное правило для повседневной работы простое — в Dockerfile никогда не должно быть токенов, паролей и ключей. Секреты передаются только в рантайме через env file или встроенные механизмы секретов платформы, а процесс сборки остается максимально слепым к конфиденциальным данным.
🔹 Алгоритмы и структуры данных
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
Сегодня Let’s Encrypt выдаёт сертификаты на 90 дней, но постепенно этот срок урежут до 45 дней для всех публично доверенных сертификатов.
Меняется не только срок действия сертификата, но и период повторного использования авторизации домена: сейчас домен‑валидация может переиспользоваться 30 дней, к 2028 году это окно сократят до 7 часов. То есть подтверждать контроль над доменом придётся намного чаще.
Если у вас автоматизированный выпуск и продление сертификатов, скорее всего менять ничего не придётся, но автоматизация должна выдерживать более частые обновления.
🔹 Математика для Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
📰 Новости первой недели декабря
Новый Год всё ближе, а мы с новостями.
— Solus 4.8
— Опасное «обновление» винды
— MiniOS v5.1.0
— Linux 6.18
— Let's Encrypt будет выпускать сертификаты на 45 дней
🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#дайджест_недели
Новый Год всё ближе, а мы с новостями.
— Solus 4.8
— Опасное «обновление» винды
— MiniOS v5.1.0
— Linux 6.18
— Let's Encrypt будет выпускать сертификаты на 45 дней
🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#дайджест_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5👍3🤩2
🖇 Как быстро узнать публичный IP сервера
Узнать публичный айпи можно за одну строку:
Эта команда отправляет запрос к сервису ifconfig.me, который возвращает текущий внешний IP вашего сервера. Ключ -s отключает лишний вывод, чтобы показать только сам IP.
🔹 Программирование на языке Python
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#root@prompt
Узнать публичный айпи можно за одну строку:
curl -s ifconfig.me
Эта команда отправляет запрос к сервису ifconfig.me, который возвращает текущий внешний IP вашего сервера. Ключ -s отключает лишний вывод, чтобы показать только сам IP.
🔹 Программирование на языке Python
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Вот несколько вещей, которые стоит сделать уже сейчас, чтобы не ловить прод ночью без HTTPS.
Для локального PEM‑файла:
openssl x509 -enddate -noout -in /path/to/cert.pem
Для сертификата, который уже стоит на сервере (через SNI):
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -enddate
Удобно обернуть это в скрипт и повесить на мониторинг, который будет ругаться, если до истечения меньше, скажем, 7 дней.
Если вы используете certbot, базовый cron может выглядеть так:
0 2 * * * /usr/bin/certbot renew --quiet --post-hook "systemctl reload nginx"
• Запускайте чаще, чем раз в 30 дней: certbot сам решит, нужно ли обновлять, но у него будет больше попыток.
• post-hook важен: Nginx (или другой веб‑сервер) должен перечитать новый сертификат.
Для тех, кто предпочитает acme.sh за лёгкость и поддержку разных провайдеров DNS:
0 0 * * * "/home/user/.acme.sh"/acme.sh --cron --home "/home/user/.acme.sh" > /dev/null
Обратите внимание
• acme.sh сам следит за сроком и обновляет вовремя.
• После выпуска не забудьте один раз прописать перезагрузку сервиса, например:
/home/user/.acme.sh/acme.sh --install-cert -d example.com
--key-file /etc/ssl/example.com.key
--fullchain-file /etc/ssl/example.com.fullchain.pem
--reloadcmd "systemctl reload nginx"
Даже при настроенном cron бывает, что что‑то ломается: права, DNS, лимиты CA. Хорошая практика
• В мониторинг (Prometheus, Zabbix, Grafana Agent, любой другой) добавить проверку срока сертификата.
• Завести оповещение, если осталось меньше N дней или срок истёк.
Избегайте жёстких «обновлять раз в 60 дней»
При 45‑дневных сертификатах такая логика приведёт к просрочке. Без ARI или «умных» клиентов используйте правило: обновлять примерно на 2/3 срока жизни сертификата. Для 45 дней это где‑то на 30‑й день.
Если у вас уже есть боевой контур на Let’s Encrypt, самое важное сейчас — убедиться, что:
• продление полностью автоматизировано
• веб‑сервер корректно перечитывает новые сертификаты
• есть мониторинг и алерты на срок действия
Тогда переход на более короткий срок будет почти незаметен для вас и ваших пользователей.
🔹 Математика для Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩7
🌐 Как найти все открытые сетевые порты
Чтобы понять, какие порты на вашем компьютере сейчас прослушиваются и ждут подключения, можно быстро проверить все активные сетевые точки с помощью команды:
Она показывает все открытые порты и процессы, которые их используют.
•
•
🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#root@prompt
Чтобы понять, какие порты на вашем компьютере сейчас прослушиваются и ждут подключения, можно быстро проверить все активные сетевые точки с помощью команды:
netstat -tulnp | grep LISTEN
Она показывает все открытые порты и процессы, которые их используют.
•
netstat -tulnp выводит список TCP и UDP портов, которые прослушиваются, а также PID соответствующих процессов.•
grep LISTEN отфильтровывает этот список, показывая только порты, которые на самом деле слушают входящие соединения.🔹 Специалист по ИИ
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Ghostty теперь работает под финансовым зонтиком Hack Club, который зарегистрирован как некоммерческая организация в США.
Для пользователей и контрибьюторов важны два момента:
Ghostty остаётся бесплатным и с той же MIT лицензией, но при этом у проекта появляется прозрачная модель финансирования и защита от сценариев вроде продажи продукта или тихой смены миссии.
Все торговые марки и права на название переданы некоммерческой структуре, а деньги из донатов могут тратиться только на задачи проекта и его сообщества.
Библиотека devops'a
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
Летим зимовать ✈️
Когда холодает, айтишники пакуют чемоданы, а мы разыгрываем ваучер на 50 000 рублей в Островке.
Поехать к морю или остаться среди снежных пейзажей — выбирайте сами!
Чтобы участвовать, нужно оставить любую реакцию под этим постом и подписаться на каналы ниже:
😎 Типичный программист
🐸 Библиотека программиста
🟢 Ostrovok! Tech
Теперь осталось нажать на кнопку участия под этим постом и вы в игре!
Итоги подведём 12 декабря. Победителя выберем с помощью бота. Подробнее с правилами можно ознакомиться здесь.
Всем удачи!
Участников: 111
Призовых мест: 1
Дата розыгрыша: 19:00, 12.12.2025 MSK (3 дня)
Когда холодает, айтишники пакуют чемоданы, а мы разыгрываем ваучер на 50 000 рублей в Островке.
Поехать к морю или остаться среди снежных пейзажей — выбирайте сами!
Чтобы участвовать, нужно оставить любую реакцию под этим постом и подписаться на каналы ниже:
Теперь осталось нажать на кнопку участия под этим постом и вы в игре!
Итоги подведём 12 декабря. Победителя выберем с помощью бота. Подробнее с правилами можно ознакомиться здесь.
Всем удачи!
Участников: 111
Призовых мест: 1
Дата розыгрыша: 19:00, 12.12.2025 MSK (3 дня)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Когда Grafana была просто красивым дашбордом поверх Prometheus и прочих источников метрик.
Сейчас из лёгкой панели это выросло в полноценную платформу наблюдаемости с Loki, Tempo, Mimir и облачным сервисом Grafana Cloud и вместе с этим подтянулись сложность и ценники очень похожие на историю ELK.
Для небольших команд такая платформа часто оказывается избыточной и опасной в деньгах, особенно если нет чёткого понимания что именно нужно мониторить и сколько это будет стоить.
🔹 Программирование на языке Python
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
Пример плейбука для Ansible, который устанавливает Jenkins на группу серверов:
- name: Install Jenkins
hosts: cicd_servers
become: yes
tasks:
- name: Install Java
apt:
name: openjdk-11-jdk
state: present
- name: Add Jenkins repository and install
shell: |
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
echo "deb http://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list
apt update && apt install -y jenkins
Что делает этот плейбук:
• Устанавливает нужную версию Java, обязательную для работы Jenkins.
• Добавляет официальный репозиторий Jenkins и его ключ для безопасной установки.
• Обновляет списки пакетов и устанавливает Jenkins.
🔹 ML для старта в Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🧑💻 Дебаг Kubernetes без kubectl
k9sight это лёгкий open source интерфейс для k8s который работает прямо в терминале и управляется только с клавиатуры. Инструмент заточен под дебаг: быстро показывает workloads логи и состояние подов без постоянного набора kubectl.
Можно на лету переключаться между deployment и pod, раскрывать контейнеры, смотреть логи, делать exec и port forward одной клавишей. Работает поверх обычного kubeconfig, ставится как один Go бинарник и не требует агентов в кластере.
➡️ Репозиторий проека
🔹 Математика для Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека devops'a
#арсенал_инженера
k9sight это лёгкий open source интерфейс для k8s который работает прямо в терминале и управляется только с клавиатуры. Инструмент заточен под дебаг: быстро показывает workloads логи и состояние подов без постоянного набора kubectl.
Можно на лету переключаться между deployment и pod, раскрывать контейнеры, смотреть логи, делать exec и port forward одной клавишей. Работает поверх обычного kubeconfig, ставится как один Go бинарник и не требует агентов в кластере.
🔹 Математика для Data Science
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Самая частая ошибка в K8s: Pods без CPU/memory requests/limits конкурируют несправедливо. Без лимитов один Pod может сожрать все ресурсы ноды, вызывая голодание или вытеснение других подов под нагрузкой.
Реальный кейс: Java-приложение без limits во время GC жрёт 4GB и выкидывает важные сервисы.
Плохо (нет ресурсов):
containers:
- name: app
image: myapp:latest
# а где...
Правильно. Requests для планирования, limits для защиты:
resources:
requests:
memory: "256Mi" # минимум для scheduler
cpu: "250m" # 0.25 CPU
limits:
memory: "512Mi" # максимум памяти
cpu: "500m" # максимум CPU
Ставьте ресурсы везде. Это спасёт от 90% проблем с нестабильностью кластера.
🔹 AI-агенты для DS-специалистов
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
#root@prompt
Please open Telegram to view this post
VIEW IN TELEGRAM