Кубертатный период
480 subscribers
144 photos
10 videos
3 files
319 links
DevOps Underdog
Download Telegram
Forwarded from /usr/bin
How does Uber build real-time infrastructure to handle petabytes of data every day?

В статье рассказано как устроен стэк Uber, который обеспечивает аналитику, управление и хранение данных. В частности, ни используют Kafka, Flink, Pinot, HDFS и Presto. Читать статью.

❗️Статья на Медиум.
👍61🤔1🥱1
👀 Подписан на канал Админим с Буквой: в целом чел пишет попсовую хуйню от «как сменить пароль в гитлабе локально» до рассказов «как он стал менеджером» с кучей ненужных вакансий, судя по позиции и описаниям, далеко не звездных.

Так вот, на днях публикует свой «инструмент» для проведения собеседований. Внимание ‼️ в гугол таблице :) я заитригован моментально, но чтобы не читать очередной чей-то высер, я ожидал полистать комментарии, которые были отключены по неясной сперва для меня причине.

И в последнем сообщении все становится ясно: челу накидали видимо в панамку вполне заслуженно, а он не выдержал критики, чтобы улучшать свой «инструмент», считая видимо его идеальным решением и гордость за свои рукоблудия не позволяет ему войти в конструктивную беседу.
Для тех, кто не способен прочитать в оригинальном посте что вопросы - моя субъективная история, желаю чтобы вы никогда не попадали на руководящие должности.

Желание неудачи другим людям несогласным с твоим субъективным мнением это конечно круто… это первая ступень в походе за позицией СТО, я так понимаю. Какава профессиональность!

🤦‍♂️И еще, как вы думаете почему в канале не было постов больше месяца? да потому что типок работает в консалтинге по секьюрити, клиента которого не так давно зашифровали к хуям.
Мне очень нравится читать советы и методики от людей которые хапают неудачи полной грудью, имея лишь цель поделиться своим мнением, о котором часто никто не спрашивал)

Ну и в довесок, кому нужен инструмент, если он не масштабируется и применим только к «твоей» компании, где ты лучше всех все знаешь? Зачем его тогда шерить? показать как ты умеешь таблицы составлять? чтобы более крутые менеджеры тебя заметили ?

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

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

Обходите идиотов стороной, друзья)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥31👏1🥱1🤨1
📈 Недавно задался, зачем для BI-аналитики сгружать все данные с различных источников в один Data Warehouse (DWH), почему бы не читать напрямую из тех мест, где лежат исходные данные. На что получил вполне разумный ответ, что данные нужно объединять друг с другом (JOIN) для BI-аналитики. 🤔 На что задался вопросом, а есть ли такие инструменты, которые позволяют читать данные из различных источников и объединять их. ♻️

💡 Оказывается такой инструмент есть -- Trino (бывший Presto).
🗃 Поддерживает классический ANSI SQL, кеширует в Redis.

DWH считается не совсем современным и трендовым решением: данные нужно хранить там, где они хранятся (Postgres, MySQL, Oracle, MongoDB, etc.)

🎙 Тут челик на VK Conf рассказывает как они построили BI-аналитику поверх Trino и Superset.

😎 Все сложное можно сделать просто, если что-то остается сложным, то скорее всего вы пошли не по тому пути. Ищите простое решение или несколько простых решений в цепочке.
Please open Telegram to view this post
VIEW IN TELEGRAM
3👎3🔥3👌1
Логическая репликация в PostgreSQL. Репликационные идентификаторы и популярные ошибки

Весь процесс логической репликации в PostgreSQL основан на использовании репликационных идентификаторов. 📋

Подготовка:
🔍 Проверка наличия в реплицируемых таблицах первичного ключа или индекса, соответствующего минимальным требованиям и задействованного в REPLICA IDENTITY USING INDEX, либо назначение REPLICA IDENTITY FULL.
🛠️ Репликационные идентификаторы необходимы для однозначной идентификации изменяемых или удаляемых строк при репликации команд UPDATE и DELETE.

Репликационные идентификаторы:

🚫 Их можно не настраивать или отключить, если планируется реплицировать только команды INSERT. Главное — исключить из публикации команды UPDATE и DELETE.
⚠️ Для актуальных данных из активно изменяющихся таблиц, где отсутствуют первичные ключи или уникальные NOT NULL индексы, настройка репликационных идентификаторов обязательна. В противном случае UPDATE и DELETE могут привести к отмене транзакций на мастере, что является нежелательным на рабочей базе.


🗂️ Этот запрос поможет вам выявить таблицы без настроенных репликационных идентификаторов.

SELECT pgn.nspname || '.' || pgc.relname AS "Таблицы без репликационных идентификаторов"
FROM pg_class AS pgc,
pg_namespace AS pgn
WHERE pgn.nspname !~ '^(?:pg_.*|information_schema)$'
AND pgc.relreplident IN ('n', 'd')
AND pgc.relkind IN ('r', 'p')
AND pgc.oid NOT IN (SELECT pgi.indrelid FROM pg_index AS pgi WHERE pgi.indisprimary)
AND pgc.relnamespace = pgn.oid
ORDER BY 1;
---


🦄 Не забывайте правильно настраивать репликационные идентификаторы для успешной работы логической репликации!
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🔥2🌭1
🚀 Удаление устаревших артефактов в GitLab

🔧 Если в GitLab не были установлены параметры для автоматического удаления устаревших артефактов, то после конфигурации в старых репозиториях артефакты не будут удалены автоматически. Для освобождения места можно использовать скрипт, который пройдется по проекту, соберет все Jobs (кроме первой страницы — 100 последних Jobs) и удалит из них все артефакты. 🗑️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥52👌2
🔥9😁3👍1
Istio: От А до Я Ю

Объясняются ключевые функции Istio, такие как балансировка нагрузки, маршрутизация запросов, мониторинг, и безопасность. Автор описывает процесс установки и настройки Istio, а также делится примерами использования для улучшения управляемости и надежности распределенных систем.

https://a-cup-of.coffee/blog/istio/
👍43🔥3👌1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 API Architecture Styles

⚡️ GRPC: Быстрый и высокопроизводительный RPC-фреймворк для обмена сообщениями между распределенными системами.

🧼 SOAP: Протокол для работы структурированных веб-сервисов со строгими стандартами XML.

📦 GraphQL: Язык запросов для API, позволяющий получать только нужные данные.

🎣 Webhook: Способ отправки данных в реальном времени для вызова действий через HTTP POST.

🕸 REST: Архитектурный стиль API, использующий методы HTTP для работы с данными.

🔵 WebSocket: Двусторонняя связь для приложений, требующих низкой задержки.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4👎21
Forwarded from Кубернетичек
https://github.com/kubernetes/kubernetes/issues/125463


Кажется скоро можно будет в кубе маунтить артефакты из oci регистри в поды (точнее в контейнеры). То есть сложили модельку в имидж и отправили в OCI регистри, а затем при деплое обновили версию OCI reference, без пересборки основного контейнера. Этакая замена работы с S3.
---apiVersion: v1
kind: Pod
metadata:
name: pod
spec:
containers:
- name: test
image: busybox:1.28
command: ["tail", "-f", "/dev/null"]
volumeMounts:
- name: oci-volume
mountPath: /volume
volumes:
- name: oci-volume
oci:
reference: quay.io/saschagrunert/artifact:v1
5👍2🔥2🥰1
Многие сталкиваются с серьёзными проблемами при масштабировании кластеров Kafka из-за миграции десятков терабайтов данных. Дополнительно, ежемесячные расходы на облачные кластеры Kafka могут достигать сотен тысяч долларов. Основная причина в том, что Apache Kafka был разработан десятилетие назад, без учета особенностей облачной инфраструктуры.

Open-source проект AutoMQ, который может сократить затраты на Kafka в облачных провайдерах, таких как AWS, и сделать Kafka Broker stateless, что позволяет масштабировать его за секунды.
🔥4👍2👏2🤔2
CrowdStrike на этой неделе поделился подробностями о том, что произошло 19 июля. Коротко говоря, возникло несоответствие в количестве аргументов, что привело к проблемам. Однако, как и в любых подобных ситуациях, было много факторов, которые на это повлияли.

The new IPC Template Type defined 21 input parameter fields, but the integration code that
invoked the Content Interpreter with Channel File 291’s Template Instances supplied only 20
input values to match against


Кроме того, отчет продолжает обсуждение использования режима ядра в продуктах, что приводит к публичному диалогу с Microsoft. За этим диалогом интересно наблюдать со стороны, учитывая важность затрагиваемых тем.

https://www.crowdstrike.com/wp-content/uploads/2024/08/Channel-File-291-Incident-Root-Cause-Analysis-08.06.2024.pdf
11👍1👌1
Spark Operator теперь в экосистеме Kubeflow 🚀

Теперь Spark Operator официально стал частью Kubeflow, что позволяет интегрировать его с остальными компонентами Kubeflow для упрощения работы с Apache Spark в Kubernetes. 🔥

📌 Подробнее:

- Документация: Spark Operator в Kubeflow
- Релизный пост: Читайте на блоге Kubeflow
- GitHub: Kubeflow Spark Operator
Please open Telegram to view this post
VIEW IN TELEGRAM
👍511🔥1
🚀 Kubeflow 1.9 вышел! 🌟

В новом релизе Kubeflow 1.9 представлено множество улучшений, но самое важное — появление Model Registry. Это централизованное решение для управления моделями, версиями и артефактами, которое значительно упростит работу с машинным обучением и MLOps. 🔫

📌Читать полное описание релиза можно в блоге Kubeflow
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍31🎉1
Кубертатный период
Логическая репликация в PostgreSQL. Репликационные идентификаторы и популярные ошибки Весь процесс логической репликации в PostgreSQL основан на использовании репликационных идентификаторов. 📋 Подготовка: 🔍 Проверка наличия в реплицируемых таблицах первичного…
🔍 Помните при копировании базы данных: Если в таблице используются последовательности (например, для автогенерации ID), просто вставка записей не обновляет сами последовательности. Это может привести к проблемам с уникальностью ключей в будущем.

Для исправления последовательностей в PostgreSQL необходимо вручную обновить их с помощью команды setval() или использовать специальный скрипт.

📖 Подробнее: Fixing Sequences in PostgreSQL
Please open Telegram to view this post
VIEW IN TELEGRAM
75👍41
Kubernetes Guru

Очень интересный сервис: выдает достаточно точные ответы с примерами на вопросы про Kubernetes с помощью AI.

Этот сервис работает на основе подхода RAG и по результатам тестирования иногда дает более точные ответы, чем другие популярные AI, например ChatGPT.

Подробнее -- https://medium.com/@PlanB./kubernetes-guru-a-new-ai-tool-for-mastering-k8s-challenges-69bab4e57c84
2👍621
☁️ Если вы собираетесь строить своё облако, обратите внимание на Cozystack.

- Публичное облако 🌐: Cozystack можно использовать как бэкенд для вашего публичного облака
- Частное облако 🔒: Частное облако с подходом Infrastructure-as-Code с помощью Cozystack
- Kubernetes 🛠️: Cozystack отлично подходит для развёртывания Kubernetes на Bare Metal.

https://cozystack.io
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍6👎22