Search
Write a publication
Pull to refresh
-18
0
Николай Бараненко @drno-reg

Сбор, хранение и аналитика

Send message

Сборка Min.io dev кластера в контейнерах

Level of difficultyEasy
Reading time18 min
Views8.8K

Сборка Min.io dev кластера в контейнерах с tls, site replication, nginx и мониторингом.

Статья представляет собой пошаговое руководство для разворачивания кластерного minio в контейнерах от bitnami. Доступ в кластер будет организован через nginx. Также рядом развернем однонодный minio. Объединим эти 2 minio с помощью site-replication. Создадим тестового пользователя, тестовую политику, тестовый бакет и попробуем с ним работать. Закончим настройкой мониторинга: дефолтные prometheus для сборки метрик и grafana для отрисовки дашбордов.

Читать далее

Собираем демо-кластер Minio, потому что можем

Reading time4 min
Views17K

Я понятия не имею будет это кому-то полезно или нет, но это и не важно. Раз посты про установку Apache и php по прежнему имеют успех - то пусть будет и этот.
Выбор гипервизора, ОС и тд я не буду рассматривать никак, это не имеет значения.
Почему не докер? Потому.

Читать далее

Представляем Kubernetes-платформу Deckhouse. Теперь в Open Source и для всех

Reading time10 min
Views39K

Сегодня состоялся долгожданный публичный Open Source-релиз нашей платформы для автоматизации обслуживания кластеров Kubernetes — Deckhouse. Этому предшествовало три с половиной года внутренней разработки и эксплуатации платформы на многочисленных и весьма разнообразных проектах. Сейчас с помощью Deckhouse мы обслуживаем в production более 170 кластеров (3500+ узлов), в которых развернуто около 3000 приложений. Deckhouse — это квинтэссенция нашего опыта в эксплуатации Kubernetes-кластеров и кульминация всей связанной с этим производственной деятельности последних лет.

Мы начали выдавать ранний доступ к платформе и демонстрировать её возможности ещё в мае, на конференции HighLoad++. Уже более 300 человек смогли самостоятельно попробовать Deckhouse. Пришло время поделиться нашим опытом автоматизации Kubernetes с более широким сообществом!

Читать далее

Неудачные архитектурные решения при миграции в облако

Level of difficultyEasy
Reading time6 min
Views3.5K

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

Какие ошибки есть при миграции в облако?

Б значит не Безумие, а Безопасность. Часть 3 — Последний элемент

Level of difficultyMedium
Reading time11 min
Views2.4K

В финальной статье мне хочется поделиться кейсом повышения безопасности одного из самых важных компонентов инфраструктуры — базы данных (в моём случае — PostgreSQL v14 с управлением через patroni). Расскажу про то, как повысить скорость анализа потенциальных инцидентов, как настроить процессы шифрования дисков, как сгенерировать SSL‑сертификаты для базы данных и обеспечить их двухстороннюю проверку. А ещё поговорим про бэкапы и wal‑g-backup. Надеюсь, статья поможет каждому избежать ошибок в планировании и узнать что-то новое.

Читать далее

Как собирать логи с помощью Fluentd и Fluent Bit

Reading time4 min
Views16K

Логирование — это один из трех столпов мониторинга в распределенных системах. Мы можем видеть бурное развитие популярных продуктов с открытым исходным кодом типа ELK stack, и полноценных коммерческих продуктов, которые помогают с проблемами протоколирования в больших масштабах — Splunk, к примеру. Однако в таких сложных системах как Kubernetes протоколирование остается сложной проблемой. Она усугубляется постоянным ростом объема данных из–за всё большего внедрения контейнеризации.  

В этой статье мы рассмотрим различные виды логов Kubernetes, необходимых для улучшения системы мониторинга, уделим внимание подходам к сбору, агрегации и анализу логов. Также мы приведем решение с использованием open source-сервисов Fluentd и Fluent Bit — оно упростит сбор данных.

Читать далее

Redpanda в сравнении с Apache Kafka: Сопоставление эксплуатационных затрат

Reading time12 min
Views11K

В этой статье мы исследуем общие затраты на функционирование кластеров Apache Kafka и Redpanda для потоковой передачи данных и пропускной способности в реальных условиях с использованием модели развертывания с собственным хостингом. Мы начнем с определения модели затрат, протестируем физические характеристики обеих систем с использованием репрезентативных конфигураций, включая аспекты безопасности и аварийное восстановление (Disaster Recovery, DR), и затем оценим их инфраструктурные, административные и общие затраты.

Читать далее

Контейнеры, разминаем мозги под Kubernetes – разговоры у костра

Level of difficultyEasy
Reading time21 min
Views5.4K

Привет, друзья! Разговоры у вечернего костра, у палатки, у реки, в спокойный, тихий вечер и в располагающей к технической честности и объективности атмосфере, а не «у пепелища дата-центра», как некоторым может показаться! 😊 Приготовьтесь погрузиться в захватывающую историю, как, но, важнее, почему мы сознательно пришли к активному использованию контейнеров и «доросли» до внедрения Kubernetes в высоконагруженном проекте «BI-конструктор». Но про Kubernetes в посте не будет не слова, будет только про контейнеры, но мы подготовим мозг к следующему посту, уже исключительно про Kubernetes, но тоже максимально доступно. Однако, я буду все рассказывать очень простыми (иногда техническими) словами, без ныряния в многоуровневый мат, уж простите. Я убежден, что когда ты все прочувствовал и выстрадал умом и сердцем, то сможешь этот опыт передать доступно и понятно другим, а когда сам не понимаешь, о чем говоришь, то и остальных просто запутаешь. И еще один момент – технических картинок и графиков по теме тоже не будет, они вызывают головную боль от растекания абстракций и их легко найти самостоятельно и в конце я дам рецепт где. Но, даже без них, не сомневайтесь, вы все поймете с первого раза. Итак, наливайте кофе, насыпайте попкорн, кладите в карман таблетку от головной боли (иногда будет сложно, но ради вашего же блага) и ныряйте «под кат».

Читать далее

Ускоряем Ansible

Reading time4 min
Views14K
Турбокомпрессор в разрезе

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

Создание собственного API на Python (FastAPI): Авторизация, Аутентификация и роли пользователей

Reading time19 min
Views50K

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

Как вы поняли из названия, сегодня мы поговорим про авторизацию и аутентификацию. Прежде чем вы приступите к прочтению статьи, настоятельно рекомендую вам ознакомиться с прошлым материалом по теме разработки собственного API через FastApi.

Читать далее

Как работает etcd с Kubernetes и без него

Reading time23 min
Views29K

Если вы когда-либо взаимодействовали с кластером Kubernetes, скорее всего, он был основан на etcd. etcd лежит в основе работы Kubernetes, но несмотря на это, напрямую взаимодействовать с ним приходится не каждый день.

Этот перевод статьи от learnk8s познакомит вас с принципами работы etcd, чтобы вы могли глубже понять внутреннюю работу Kubernetes и получить дополнительные инструменты для устранения неполадок в вашем кластере. Мы установим и сломаем кластер etcd с тремя нодами и узнаем, почему Kubernetes использует etcd в качестве базы данных.

Читать далее

Яндекс выложил в опенсорс YDB

Reading time16 min
Views154K
Сегодня мы выложили в опенсорс систему управления базами данных YDB — плод многолетнего опыта Яндекса в разработке систем хранения и обработки данных. Исходный код, документация, SDK и все инструменты для работы с базой опубликованы на GitHub под лицензией Apache 2.0. Развернуть базу можно как на собственных, так и на сторонних серверах — в том числе в любых облачных сервисах.



YDB решает задачи в одной из самых критичных областей — позволяет создавать интерактивные приложения, которые можно быстро масштабировать по нагрузке и по объёму данных. Мы разрабатывали её, исходя из ключевых требований к сервисам Яндекса. Во-первых, это катастрофоустойчивость, то есть возможность продолжить работу без деградации при отключении одного из дата-центров. Во-вторых, это масштабируемость на десятки тысяч серверов на чтение и на запись. В-третьих, это строгая консистентность данных.

В посте я расскажу об истории развития технологий баз данных, о том, зачем использовать YDB, как её применяют текущие пользователи и какие плюсы для всех несёт выход в опенсорс. А во второй половине поста поговорим о разных вариантах развёртывания.
Читать дальше →

Навигация в приложениях Flutter: разбираем Navigator, Router и лучшие библиотеки

Level of difficultyEasy
Reading time9 min
Views5K

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

Навигация в Flutter предоставляет разработчикам возможность создавать сложные и гибкие пользовательские интерфейсы, а также легко адаптировать приложения под разные платформы и устройства.

Основной идеей навигации в Flutter является стековая организация экранов, где каждый экран представлен своим виджетом. Переходы между экранами осуществляются путем добавления и удаления маршрутов из стека.

Читать далее

ETL и ELT: ключевые различия, о которых должен знать каждый

Reading time10 min
Views59K
image

ETL и ELT — самые широко используемые способы доставки данных из одного или нескольких источников в централизованную систему для удобства доступа и анализа. Обе этих методики состоят из этапов extract (извлечения), transform (преобразования) и load (загрузки). Разница заключается в последовательности действий. Хотя можно подумать, что небольшое изменение в порядке этапов никак не влияет, на самом деле для потока интеграции это меняет всё.

В этом посте мы подробно рассмотрим процессы ETL и ELT, а также сравним их по важным критериям, чтобы вы могли понять, какой лучше подходит для вашего конвейера данных.
Читать дальше →

Hadoop в Облаке: история миграции сотен петабайт

Level of difficultyMedium
Reading time10 min
Views4.6K

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

Меня зовут Михаил Марюфич. Я руководитель Data Platform в ОК, отвечаю за инфраструктуру для Big Data и машинного обучения. В этой статье я расскажу о нашем опыте переноса Hadoop с Bare Metal в облако: с чего стартовали, какие варианты рассматривали, как выстроили миграцию и с чем сталкивались в процессе.

Читать далее

Пуш-уведомления RuStore

Level of difficultyEasy
Reading time7 min
Views10K

Привет! Меня зовут Артем Ковардин, я работаю в VK и мы с командой разрабатываем Push Service RuStore и SDK для него. Если вы занимаетесь разработкой мобильных приложений и хотели бы иметь канал коммуникации с пользователями или же вам просто интересно то, как работают разработанные нами пуш-уведомления и как их можно масштабировать и интегрировать, то статья ниже — для вас. 

Читать далее

Введение в Apache Flink: осваиваем фреймворк на реальных примерах

Reading time10 min
Views20K

Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink. Эту технологию выбрали, так как она (в отличие от Apache Spark) относится к true-стримингу и позволяет строить обработку данных с минимальной задержкой. В качестве DI-фреймворка выбрали привычный нам Spring Framework.

Наша команда использует разные виды тестирования: Unit, интеграционное, E2E, ручное, автоматизационное, нагрузочное. Этой теме будет уделено особое внимание. Я расскажу, какие подходы и паттерны помогут быть уверенными в качестве того, что вы разработали.

Эти знания будут полезны любому Java-разработчику, знакомому со Spring. А начинающие Flink-специалисты найдут здесь примеры стандартных ошибок и пути их решения. Обратите внимание, что эти материалы писались, когда актуальной версией Flink была 1.17. В конце октября вышла версия 1.18, и она может отличаться некоторыми нюансами.

Читать далее

Как выглядят собеседования сейчас

Reading time8 min
Views134K

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

Я являюсь .Net разработчиком с опытом лидинга и набора специалистов в команду. На текущем месте работаю 2 года, но за этот срок многое изменилось. Решил проверить, что же сейчас с рынком, и сколько же я стою сейчас как специалист. За 2 недели я прошёл 30 собеседований и хочу поделиться некоторыми из них, высказать свои замечания и выводы.

Читать далее

Как WhatsApp справлялся с 50 миллиардами сообщений в день, имея всего 32 инженера

Level of difficultyEasy
Reading time4 min
Views28K

Январь 2008 года — Калифорния, США.

Инженер Ян Кум нанимается на работу в Facebook* — получает отказ.

Это был не конец — он продолжил двигаться дальше.

В следующем году он покупает iPhone и сразу же понимает огромный потенциал нового App Store.

С несколькими бывшими коллегами из Yahoo он решает создать программу мгновенного обмена сообщениями. Программе дают имя WhatsApp. Предназначение WhatsApp — стать заменой дорогостоящим SMS.

Рост популярности WhatsApp поражает воображение — каждый день в него заходит один миллион людей.

WhatsApp мог справляться с 50 миллиардами сообщений в день от 450 миллионов активных пользователей, имея в штате всего 32 инженера.

Хотя взрывной рост продукта — это приятная проблема, для её решения Яну Куму и команде разработчиков WhatsApp пришлось применить самые передовые технологии проектирования.
Читать дальше →

Shawarma as a service: как создать бота для заказа шавермы и оставить голодными лишь 1,1% коллег

Reading time12 min
Views23K

Полтора года назад в Selectel появилась традиция кушать шаверму по четвергам. Акция, названная Шавадеем, быстро обрела популярность. С увеличением количества адептов ее организационные моменты — в частности, сбор и отправка заказов — становились все сложнее. На помощь позвали программиста — меня.

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

Information

Rating
Does not participate
Location
Краснодар, Краснодарский край, Россия
Date of birth
Registered
Activity

Specialization

Fullstack Developer, DevOps
Python
Kubernetes
CI/CD
Fastapi
ClickHouse
Nginx
Big data