Кому: подписчики DevOps FM
Тема: средовый дайджест
📩 2 октября празднуется день рождения электронной почты. Именно в этот день в 1971 году инженер Рэй Томлинсон отправил первое в истории человечества сообщение по e-mail. Пс-с-с: у нас есть своя рассылка.
⚫️ Зарелизили новую стабильную ветку PostgreSQL 17.
Обновления для этой версии будут выходить в течение пяти лет, вплоть до ноября 2029 года. Из тех, что имеются сейчас:
• ускорили выполнение операции
VACUUM и сократили потребление совместно используемых ресурсов благодаря новой структуре данных;• добавили утилиту
pg_createsubscriber, которая преобразует физическую реплику в новую логическую;• обновили
pg_upgrade: теперь она сохраняет слоты репликации как у издателей, так и у пользователей. Посмотреть все нововведения можно тут.
Кстати, поддержка ветки PostgreSQL 12 будет прекращена 14 ноября.
🟡 Ещё один релиз — MongoDB 8.0. Благодаря архитектурным улучшениям эта версия работает более чем на 30% быстрее предыдущих. Ещё появились новые варианты использования зашифрованных данных. Подробности — по ссылке.
⚫️ На InfoQ рассказали, как минимизировать задержку и стоимость в распределённых системах. Если очень коротко: вам поможет маршрутизация с учётом зоны.
🟡 На Dev разобрали ротацию резервных копий с помощью nxs-backup.
#devops #PostgreSQL #MongoDB #nxsbackup
❤8👍8🔥8
На ваших экранах — свежие новости из мира DevOps и системного администрирования.
🤩 В России возникла проблема с доступом к сайтам, использующих ECH Protocol от Cloudflare. Среди них — opensource.org, gitlab.io, doxygen.org.
ECH (Encrypted Client Hello) — это технология для TLS 1.3, которая позволяет скрывать от интернет-провайдеров адреса посещённых пользователем сайтов.
Протокол пришёл на замену менее надёжному ESNI. В отличие от ESNI, ECH шифрует не только SNI (Server Name Indication), а сразу всё сообщение ClientHello целиком. Эта функция была ненадолго активирована на серверах Cloudflare в 2023 году и стала снова доступна в октябре этого года.
В ночь с 5 по 6 ноября Роскомнадзор начал блокировать трафик, который шифруется через новую версию защиты от Cloudflare. При этом сайты версиями TLS 1.2 и ниже до сих пор работают без перебоев.
Почитать о костыльных решениях проблемы можно здесь.
upd: 7 ноября подведомственный Роскомнадзору ЦМУ ССOП порекомендовал отказаться от Cloudflare и перейти на российские решения. Центр отметил, что использование ECH нарушает российское законодательство.
⚫️ Опубликовали патч для ядра Linux, который ускоряет прохождение теста
В патче используется маскирование указателей, что позволяет снизить количество медленных вызовов функции barrier_nospec(), применяемой в 64-битной версии функции copy_from_user().
🟡 GitHub выпустил Octoverse 2024 — ежегодный отчёт о состоянии индустрии open sourse. Если коротко:
• Разработчики со всего мира внесли более 1 миллиарда изменений в проекты с открытым исходным кодом. Из них — более 5,2 миллиарда изменений в 518 миллионов проектов на GitHub.
• Python впервые стал самым популярным языком на GitHub.
• Ожидается, что к 2028 году Индия обойдёт США по количеству разработчиков.
⚫️ В блоге Percona Пётр Зайцев высказался о проблемах MySQL и рассказал, как ей стать конкурентноспособной PostgreSQL. Спойлер:он предложил объединить усилия всех ключевых фигур проекта и создать альтернативу MySQL под новым брендом. Если вы не согласны, то можете поспорить с этим мнением в комментариях.
#devops #linux #cloudflare #github #mysql #postgresql
ECH (Encrypted Client Hello) — это технология для TLS 1.3, которая позволяет скрывать от интернет-провайдеров адреса посещённых пользователем сайтов.
Протокол пришёл на замену менее надёжному ESNI. В отличие от ESNI, ECH шифрует не только SNI (Server Name Indication), а сразу всё сообщение ClientHello целиком. Эта функция была ненадолго активирована на серверах Cloudflare в 2023 году и стала снова доступна в октябре этого года.
В ночь с 5 по 6 ноября Роскомнадзор начал блокировать трафик, который шифруется через новую версию защиты от Cloudflare. При этом сайты версиями TLS 1.2 и ниже до сих пор работают без перебоев.
Почитать о костыльных решениях проблемы можно здесь.
upd: 7 ноября подведомственный Роскомнадзору ЦМУ ССOП порекомендовал отказаться от Cloudflare и перейти на российские решения. Центр отметил, что использование ECH нарушает российское законодательство.
Рекомендуем владельцам информационных ресурсов отключить расширение TLS ECH или, что правильнее, использовать отечественные CDN-сервисы, которые обеспечивают надёжное и безопасное функционирование ресурсов и защиту от компьютерных атак.
⚫️ Опубликовали патч для ядра Linux, который ускоряет прохождение теста
per_thread_ops на 2.6%. В патче используется маскирование указателей, что позволяет снизить количество медленных вызовов функции barrier_nospec(), применяемой в 64-битной версии функции copy_from_user().
🟡 GitHub выпустил Octoverse 2024 — ежегодный отчёт о состоянии индустрии open sourse. Если коротко:
• Разработчики со всего мира внесли более 1 миллиарда изменений в проекты с открытым исходным кодом. Из них — более 5,2 миллиарда изменений в 518 миллионов проектов на GitHub.
• Python впервые стал самым популярным языком на GitHub.
• Ожидается, что к 2028 году Индия обойдёт США по количеству разработчиков.
⚫️ В блоге Percona Пётр Зайцев высказался о проблемах MySQL и рассказал, как ей стать конкурентноспособной PostgreSQL. Спойлер:
#devops #linux #cloudflare #github #mysql #postgresql
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7⚡4🤬3❤1👨💻1
Если в PostgreSQL у вас большое количество данных, их очистка может стать довольно проблематичной задачей. Обычные
DELETE не сразу убирают строки с диска — из-за MVCC они остаются "мертвыми" пока их не удалит autovacuum, а это может привести к блокировкам таблиц и падению производительности.Автор предлагает интересное решение: использовать партиционирование. Вместо
DELETE можно просто мгновенно удалять целые партиции без нагрузки на базу. В статье — подробный гайд по настройке pg_partman и автоматизации чистки через pg_cron.О том, как спасти высоконагруженные таблицы и не уронить прод — читайте здесь.
#devops #postgresql
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍6🔥5
💻 Управление триггерами в PostgreSQL
Триггер в PostgreSQL — это специальная процедура, которая автоматически срабатывает при событиях
Они помогают автоматически логировать изменения данных, поддерживать целостность между связанными таблицами и выполнять проверку или модификацию данных до или после операций.
Создать триггер можно следующим образом:
⏩ Выполнять их можно:
•
•
•
⏩ Различают несколько видов триггеров, например:
•
•
Удаляется триггер тоже довольно просто, с помощью
📎 Совет: следите за производительностью — при большом количестве триггеров сложнее отлаживать поведение из-за повышенной нагрузки на БД.
#devops #postgresql #sql #триггеры
Триггер в PostgreSQL — это специальная процедура, которая автоматически срабатывает при событиях
INSERT, UPDATE, DELETE или TRUNCATE в таблице.Они помогают автоматически логировать изменения данных, поддерживать целостность между связанными таблицами и выполнять проверку или модификацию данных до или после операций.
Создать триггер можно следующим образом:
CREATE OR MODIFY TRIGGER trigger_name
WHEN EVENT
ON table_name TRIGGER TYPE
EXECUTE stored_proccedure
•
BEFORE — до действия •
AFTER — после действия (например для логов, уведомлений).•
INSTEAD OF — используется с views и полностью заменяет стандартное поведение.•
FOR EACH ROW — применяется для каждой строки•
FOR EACH STATEMENT — срабатывает один раз на всю операцию, независимо от числа строкУдаляется триггер тоже довольно просто, с помощью
DROP TRIGGER trigger_name.#devops #postgresql #sql #триггеры
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3❤2
Привет! Вы в DevOps FM 🚀
Канал про интеграцию разработки и эксплуатации (DevOps), администрирование и людей, которые это совершенствуют👍
Наши рубрики:
- Понедельник — Познавательные (#инструменты #открытый_код)
- Среда — Информационные дайджесты (#kubernetes #docker)
- Пятница — Развлекательное / пятничное чтиво (#поиск_ошибок #подкасты)
- Каждые 2 недели — «Партнёр недели» (#партнёрский_пост)
💡 Совет: используйте хештеги для поиска по интересующим темам.
Например, #postgresql, #безопасность, #архитектура
Канал про интеграцию разработки и эксплуатации (DevOps), администрирование и людей, которые это совершенствуют
Наши рубрики:
- Понедельник — Познавательные (#инструменты #открытый_код)
- Среда — Информационные дайджесты (#kubernetes #docker)
- Пятница — Развлекательное / пятничное чтиво (#поиск_ошибок #подкасты)
- Каждые 2 недели — «Партнёр недели» (#партнёрский_пост)
💡 Совет: используйте хештеги для поиска по интересующим темам.
Например, #postgresql, #безопасность, #архитектура
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤5🏆3🔥1
Последний новостной дайджест...
... этой зимы. Сегодня разберем, как эволюционирует система алертинга в Grafana 12.4.0, что меняется после обновлений API в GitHub Actions, почему масштабирование etcd остаётся критическим фактором в Kubernetes.
⏺ Grafana 12.4.0 и прозрачное управление алертами
Выкатили релиз версии 12.4.0, в которую внесли изменения в Grafana Alerting, политики RBAC и datasource-стек. В обновлении представили политики routing (policy selector, вкладки конфигурации, навигация), импорт конфигураций через Wizard первой итерации. Из важного – добавили метки алертов в аннотации, улучшили тестирование receiver’ов (в сторону Kubernetes-style API), а также исправили неточности во временных расчетах. В версии 12.4.0 оптимизировали преобразование regex в label matchers для Prometheus, ввели поддержку
⏺ Что нового в GitHub Actions?
Внесли обновления в API workflow dispatch: теперь при ручном запуске вы получаете идентификатор и ссылки на созданный run. Благодаря параметру
⏺ Что меняется с etcd при масштабировании в Kubernetes?
Если вы годами разворачиваете кластеры Kubernetes и всё еще не задумались о etcd – статья от Learnkube для вас. В Kubernetes только API-сервер напрямую взаимодействует с etcd. Планировщик, менеджер контроллеров, kubelet, kubectl и ваши операторы взаимодействуют с Kubernetes через API-сервер. Так, etcd в статье назвали частным бэкэндом. Etcd предоставляет строгую согласованность (strong consistency) через Raft, но имеет ограничения в масштабируемости. Зачем мониторить размер БД, нагрузку watch и поведение API-сервера – тут.
⏺ На портале DBI Service выкатили RAG-серию из двух статей.
В первой части сосредоточились на версионировании эбмеддингов и событийно-ориентированной архитектуре. Вместо полной переиндексации эмбеддингов Адриан Обернессер рекомендует использовать событийно-ориентированный (event-driven) подход для ИИ workflow: обновляйте только то, что меняется. Так, вы экономите деньги и снижаете нагрузку. В статье рассматриваются PostgreSQL, pgvector, Apache Flink и Debezium – но подход применим к любому векторному стеку. Всего представлено 3 уровня практических решений, под задачи проектов разной сложности. Читайте здесь.
Во второй части подборки Адриан Обернессер демонстрирует внедрение версионирования эмбедингов на примере реальной базы данных Википедии из репозитория
#devops #opensource #postgresql #новостнаяподборка
... этой зимы. Сегодня разберем, как эволюционирует система алертинга в Grafana 12.4.0, что меняется после обновлений API в GitHub Actions, почему масштабирование etcd остаётся критическим фактором в Kubernetes.
Выкатили релиз версии 12.4.0, в которую внесли изменения в Grafana Alerting, политики RBAC и datasource-стек. В обновлении представили политики routing (policy selector, вкладки конфигурации, навигация), импорт конфигураций через Wizard первой итерации. Из важного – добавили метки алертов в аннотации, улучшили тестирование receiver’ов (в сторону Kubernetes-style API), а также исправили неточности во временных расчетах. В версии 12.4.0 оптимизировали преобразование regex в label matchers для Prometheus, ввели поддержку
serverless для Elasticsearch и переменных в Query editor для PostgreSQL и MySQL. Работа с метриками и логами стала более предсказуемой. Ознакомиться с релизом – здесь. Внесли обновления в API workflow dispatch: теперь при ручном запуске вы получаете идентификатор и ссылки на созданный run. Благодаря параметру
return_run_details вам возвращаются метаданные workflow_id, run API URL и workflow URL. Эта функция также поддерживается в GitHub CLI, начиная с версии v2.87.0. Представленные обновления значительно облегчили автоматизацию, больше никакого кастомного трекинга :) Подробнее – тут и в GitHub Actions documentation.Если вы годами разворачиваете кластеры Kubernetes и всё еще не задумались о etcd – статья от Learnkube для вас. В Kubernetes только API-сервер напрямую взаимодействует с etcd. Планировщик, менеджер контроллеров, kubelet, kubectl и ваши операторы взаимодействуют с Kubernetes через API-сервер. Так, etcd в статье назвали частным бэкэндом. Etcd предоставляет строгую согласованность (strong consistency) через Raft, но имеет ограничения в масштабируемости. Зачем мониторить размер БД, нагрузку watch и поведение API-сервера – тут.
В первой части сосредоточились на версионировании эбмеддингов и событийно-ориентированной архитектуре. Вместо полной переиндексации эмбеддингов Адриан Обернессер рекомендует использовать событийно-ориентированный (event-driven) подход для ИИ workflow: обновляйте только то, что меняется. Так, вы экономите деньги и снижаете нагрузку. В статье рассматриваются PostgreSQL, pgvector, Apache Flink и Debezium – но подход применим к любому векторному стеку. Всего представлено 3 уровня практических решений, под задачи проектов разной сложности. Читайте здесь.
Во второй части подборки Адриан Обернессер демонстрирует внедрение версионирования эмбедингов на примере реальной базы данных Википедии из репозитория
pgvector_RAG_search_lab : 25 000 статей, триггеры, OpenAI API calls, реальные числа. Обязательно к прочтению для всех, кто хочет разобраться, как выглядят решения SKIP и EMBED на базе данных, как SELECT FOR UPDATE SKIP LOCKED работает c concurrent worker-ами и что интересного в отчёте об актуальности данных на практике. Рассмотреть – здесь. Весь код – в лабе.#devops #opensource #postgresql #новостнаяподборка
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤7👍4🔥4🤔1