Пятничный деплой
4.46K subscribers
1.41K photos
29 videos
167 files
7.78K links
Подборка ссылок, статей и постов из мира DevOps\SRE\разработки. Если вы хотите прислать фидбек, интересную статью или просто поболтать пишите @count0ru https://xn--r1a.website/s/count0_digest
Download Telegram
Forwarded from Кубертатный период (Pavel Klyuev)
VictoriaMetrics реализуют собственную библиотеку стандарта OpenTelemetry, так как, по мнению разработчиков, OpenTelemetry излишне сложный и перегружен функциональностью, которая редко используется на практике, а также призывают сообщество к упрощению стандартов и повышения производительности.

https://www.datanami.com/2024/04/01/opentelemetry-is-too-complicated-victoriametrics-says/
👍14
Forwarded from Двач
Google представил самого мощного ИИ-репетитора — LearnLM 1.5 Pro

Это настоящий монстр из нескольких нейросетей, который находит подход к каждому ученику, вдохновляет на обучение и значительно облегчает освоение материала.

🟠ИИ способен разбирать любые вопросы, примеры, уравнения и задачи, предоставляя подробные объяснения;
🟠Поддерживает контекст на 32 тысячи токенов, что позволяет эффективно погружаться в сложные темы и изучать объёмные материалы;
🟠Создаёт персональный план обучения, детально раскрывает сложные аспекты и фокусируется на важных для вас деталях;
🟠И всё это – бесплатно и на русском языке.

Пользуемся с VPN тут:
aistudio.google.com/prompts/new_chat
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎31
Forwarded from DevOps&SRE Library
cubefs

As an open-source distributed storage, CubeFS can serve as your datacenter filesystem, data lake storage infra, and private or hybrid cloud storage. In particular, CubeFS enables the separation of storage/compute architecture for databases and AI/ML applications.


https://github.com/cubefs/cubefs
Forwarded from /usr/bin
Неочевидные для начинающих тонкости Postgres

В статье интересные инсайты опытного пользователя Postgres.
👍51🔥1
Forwarded from Bash Days | Linux | DevOps (Роман Шубин)
Здрасти. Как-то я писал про strace и как применять инъекции. Если пропустил, то читай тут и тут.

Ниже скрипт который автоматически пронумерует системные вызовы для последующих инъекций.

#!/usr/bin/perl

use strict;
use warnings;

my %numbs;
select STDERR;
while(<STDIN>) {
if( /^[0-9]++\s++([a-z0-9_]++(?=\())/ ) {
my $t = ++$numbs{$1};
s/\s+/ \e[31m$t\e[m /;
die $! if( keys %numbs == 1000 );
}
print;
}
exit(0);


Сохраняем это безобразие в файл num_syscalls и делаем chmod +x, ну а дальше запускаем в связке с strace:

strace -o'|./num_syscalls' -yf sh -c 'ls|cat'


Теперь получаем такой выхлоп:

456107 48 close(3</usr/) = 0
456107 52 rt_sigreturn({mask=[]})
456107 63 openat(AT_FDCWD</usr/local/sbin>)
456107 53 newfstatat(3)
456107 64 openat(AT_FDCWD</usr/local/sbin>)


Смотрим второй столбик, включаем логику и видим, что системные вызовы нумеруются.

Например, возьмем системный вызов openat, видим 63, 64. Это значит что openat был вызван 64 раза. А newfstatat 53.

Теперь берем нужный номер системного вызова и применяем инъекцию. Как это сделать и для чего, опять же показывал на примерах (ссылки в начале этого поста).

Тема крутая, не нужно ебаться и считать руками.

Весь вывод strace отправляется в stderr, чтобы иметь возможность разделять вывод трассировки и вывод исследуемой программы.

А чтобы получить только трассировку, можно сделать так:

strace -o'|./num_syscalls' -yf ls > /dev/null


Если бесит подсветка, выпили из перловского скрипта управляющий символ «\e[31m\[em».

Такие дела, изучай!

tags: #linux #debug

🔔 @bashdays➡️ @gitgate
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Forwarded from Кубернетичек
Давно не читал отличных статей. Тут линкендин выпустила статью про то, почему они написали свой стейтфулсет контроллер. Подходил к ее прочтению очень скептически. Обычно в таких статьях "уникальная проблема", которую никак не решить кроме написания своего уникального, воздушного и прекрасного или выбрать свой уникальный путь. Как это сделали недавно Яндекс, GitPod и Crafting-Code (ссылок давать не буду, это можно нагуглить, если такое желание имеется).

Но тут все понятно. У стейтфулсета есть много проблем. Это и то, что pvc template имьютебл, отсутствие шардирования, возможности делать канарейку, ограничения по работе с несколькими версиями подов. Линкендин еще добавил невозможность управления хостами при запланированном или незапланированном обслуживании.

То есть проблема понятна. С ней сталкивались многие.
И линкендин дает решение в архитектуре.

CRD-архитектура ихнего Stateful Workload Operator, следующая:

LiStatefulSet – описывает конфигурацию приложения.

Revision – отслеживает версии развертываний.

PodIndex – управляет состояниями подов.

Operation – определяет типы операций: масштабирование, замена, удаление.

StatefulPod – управляет подами и данными.

Ну и мелочи вроде self-healing и выведения нод из обслуживания временно или на постоянной основе. Есть схемочки, стрелочки.

Так что если у вас, как и у меня есть похожая задача, можно сохранить человекочасы на дизайне. Enjoy.
🔥81
Чем заменить сервис New Relic, при этом сохранить контроль над данными📊, гибкость настройки и локальную поддержку?

На этот вопрос ответили на митапе GMonit вместе с экспертом из АШАН:

📌 Сравнили функционал New Relic с российским APM-инструментом мониторинга на примере observability платформы GMonit.
📌 Рассказали, как с помощью APM-инструмента можно настроить мониторинг в считанные минуты, отследить корневые ошибки на уровне кода и ускорить работу с инцидентами в несколько раз.
📌 Показали на реальном примере, как GMonit позволил компании АШАН комплексно оценить влияние ИТ на e-com и определить векторы для оптимизации работы сервисов.🔝

Видеозапись онлайн-мероприятия можно посмотреть на удобной для вас площадке:
🎥
ВКонтакте
🎥
Rutube
🎥
YouTube
👍3👎2🔥1
Мне тут сообщили, что многие тут хотят серьезно прокачать свой DevOps. Но не знают где взять информацию и четкий план.

💪 Советую бесплатный мета-курс Devops Roadmap - это расширенный чек-лист, который поможет сориентироваться в мире DevOps и стать крутым спецом.

👀 В мета-курсе перечислены все основные разделы и навыки, которыми должен обладать DevOps инженер: от Linux до программирования в удобном формате.

✔️А еще он будет полезен при подготовке к собеседованиям.

👽 Кстати, бонусом крутой канал о девопс. Там тоже самые свежие IT-новости, полезные советы от DevOps-инженера с 20-летним стажем, эксклюзивные материалы, релизы топовых инструментов, обзоры вакансий и личный взгляд на девопс-сферу.

📌 Ну а тем, кто хочет двигаться под руководством опытного наставника, моего коллеги - индивидуальная программа.
👎10👍2
Forwarded from k8s (in)security (Дмитрий Евдокимов)
kondense - это проект на Go выполненный в виде sidecar контейнера, который помогает автоматически управлять ресурсами контейнеров в Kubernetes без их перезапуска. На пример, освобождать не используемое количество выделенной контейнеру memory и CPU. Для этого используется не так давно появившееся фича InPlacePodVerticalScaling.

Многим такое полезно, но в данной реализации как по нам все омрачается правами ServiceAccount, которыми должен владеть Pod - это: "get", "list", "watch", "patch" на "pod" и (самое печальное) "create" на "pods/exec" (тут исходник, объясняющий зачем это)... С учетом этого также получается, что все сервисы теперь должны в своих NetworkPolicy иметь доступ к Kubernetes API.

Хоть проект и полезный, но с учетом вопросов ИБ к нему врят ли его можно рекомендовать. Явно нужно ждать другой реализации. Но сам факт появление подобных проектов вокруг фичи InPlacePodVerticalScaling это отлично.
Forwarded from Clean Code
Лучший Гайд по Kafka для Начинающих За 1 Час

Работа с Kafka - ключевое умение для любого современного разработчика! В этом видео разберем основные особенности этой замечательной технологии, я расскажу о гарантиях, топиках, репликациях, а также как масштабировать Kafka! Будет невероятно полезно! Приятного просмотра!

📺 YouTube

Clean Code #видео #kafka
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🧑‍💻 Оптимистические 🆚 Пессимистические блокировки: наглядная #инфографика для разработчика

👉 Источник
Please open Telegram to view this post
VIEW IN TELEGRAM
Яндекс признал и осознал, что не может не радовать

15 октября мы раскатили прошивку на 10% устройств. Поэтапная раскатка обновления — это стандартная практика. Она предназначена в том числе для того, чтобы выявлять проблемы новых версий на ранней стадии. И прежде чем увеличивать процент раскатки, мы отсматриваем метрики всех ключевых пользовательских сценариев. Но число генерируемых нами NTP‑запросов исторически никогда не входило в метрики, требующие валидации, потому что NTP‑клиент годами существовал практически без изменений и не приводил к проблемам.

К 24 октября новая прошивка докатилась до 100% колонок. Опять же, критичные для пользователей сценарии покрыты автоматическим мониторингом. Если что‑то важное ломается, мы получаем уведомление. Но, как вы уже догадались, для NTP‑клиента таких уведомлений настроено не было.
. . .
Жалоб было мало, действующий регламент поддержки не был рассчитан на подобные ситуации, поэтому обращения рассматривали не в самом высоком приоритете. К 20 ноября мы нашли ошибку, внесли исправление в код и начали готовить новый релиз.

В выходные 23–24 ноября ситуация с NTP‑серверами обостряется: доступными остаются лишь четыре сервера. К этому моменту мы уже начали раскатывать релиз с исправлением на 10% устройств.
. . .
В воскресенье мы выпустили хотфикс в виде новой рантайм‑конфигурации для NTP‑клиента, который увеличивал период перезапроса с 5 до 600 секунд, уменьшая нагрузку на серверы в 120 раз. Хотфикс не исправлял проблему полностью, но был единственным быстрым способом снять чрезмерную нагрузку с NTP-серверов.
. . .
мы запланировали выделить ресурсы в общий пул NTP‑серверов. Это займёт некоторое время, потому что наши дата‑центры удалены от основных точек обмена трафиком, а для NTP‑серверов RTT (Round Trip Time) это — ключевой фактор качества. Мы установим и запустим мощности на основных точках обмена трафиком.

Для наших устройств мы заведём именную зону в соответствии с гайдлайнами проекта NTPPool.org для бо́льшей прозрачности. Генерируемый ими трафик будет локализован на наших NTP‑серверах, если мы продолжим полагаться на публичную инфраструктуру проекта.

Ещё мы добавим метрики, связанные с NTP, на этап валидации A/Б‑экспериментов, а также реалтайм‑уведомления о неполадках в этом компоненте. В том числе расширим сценарии мониторинга исходящего и входящего служебного трафика устройства в целом. Также поработаем над каналами коммуникаций и поддержкой, чтобы подобные проблемы быстрее до нас эскалировались.


Об инциденте с NTP-серверами
https://habr.com/ru/companies/yandex/articles/861538/

Спасибо подписчику за ссылку
👍121👎1
Forwarded from HABR FEED + OPENNET
Go отлаживать на проде, избавляться от хардкода и переходить на Ginkgo/Gomega: доклады для гоферов #habr
https://habr.com/ru/companies/yadro/articles/861742/
Tags: go, ginkgo, gomega, отладка на проде, платформенная разработка, cel, testify, require, доклады
Author: yadro_team (YADRO)
Forwarded from /usr/bin
Ускоряем запросы в PostgreSQL, оптимизируя оператор GROUP BY

Пользователи PostgreSQL нередко оперируют аналитическими запросами, которые предполагают сортировку и группировку данных по разным правилам. Время и стоимость выполнения таких запросов можно значительно сократить, если оптимизировать вычисление агрегатов и сортировок. Об одной из таких оптимизаций — выборе порядка колонок в выражении GROUP BY — рассказано в этой статье.
Forwarded from DevOps drawer
Fearless SSH: short-lived certificates bring Zero Trust to infrastructure

https://blog.cloudflare.com/intro-access-for-infrastructure-ssh

#cloudflare #ssh #security
Forwarded from ITRadio
Анонс № 8. Управление инцидентами в большой компании

Большая компания – это компания, над которой не заходит солнце. Например, мировой агрегатор такси и доставки Uber.

Кто?
Карен Товмасян – Senior Engineer – Payments @ Uber и бессменный автор канала Человек и Машина.

О чём?
• Планируем выяснить, как всё-таки писать слово «инцидент»;
• Чем отличается инцидент от аварии, алёрта или бага;
• Что происходит в процессе починки, чем postmortem отличается от обычного отчёта от аварии;
• Всё это приправим небольшим количеством офигительных историй.

Когда: 29.11.2024 в 17:00 по МСК

Обязательно задаём свои вопросы в чате подкаста с тегом #вопрос8.
Анонимные вопросы можно задавать там: тыц.

Трансляция будет здесь и тут

@ITRadiosu
🔥2
Forwarded from The Art Of Programming
Media is too big
VIEW IN TELEGRAM
Как работает Compute?

Незаслуженно забытый мной выпуск подкаста «Как мы делаем Yandex Cloud» гостем выпуска был Валентин Синицын, руководитель направления вычислительных сервисов.

С Валентином мы поговорили об устройстве Compute, а также о трудностях и специфике работы с вычислительными сервисами. А ещё обсудили подходы к дебаггингу и риски использования опенсорс-решений без доработок.

➡️ Смотреть на YouTube
➡️ Слушать на Яндекс Музыке

#подкаст #hwmyc
Please open Telegram to view this post
VIEW IN TELEGRAM