Всем привет, меня зовут Александр, я работаю в ЦИАН инженером и занимаюсь системным администрированием и автоматизацией инфраструктурных процессов. В комментариях к одной из прошлых статей нас попросили рассказать, откуда мы берем 4 ТБ логов в день и что с ними делаем. Да, логов у нас много, и для их обработки создан отдельный инфраструктурный кластер, который позволяет нам оперативно решать проблемы. В этой статье я расскажу о том, как мы за год адаптировали его под работу с постоянно растущим потоком данных.
Читать полностью »
Рубрика «elasticsearch»
Как мы в ЦИАН укрощали терабайты логов
2019-12-04 в 8:37, admin, рубрики: elasticsearch, Блог компании ЦИАН, логи, Серверная оптимизация, системное администрирование, цианПубличные данные 1,2 млрд пользователей были обнаружены на открытом Elasticsearch-сервере
2019-11-23 в 9:30, admin, рубрики: 1.2 миллиарда, elasticsearch, информационная безопасность, поисковые технологии, проблема, Социальные сети и сообщества, утечка
Согласно информации издания Wired, специалисты в области информационной безопасности Винни Троя (Vinny Troia) и Боб Дьяченко (Bob Diachenko) обнаружили в сети открытый Elasticsearch-сервер, содержащий 1,2 млрд записей общим размером четыре терабайта. Сервер был расположен на площадке Google Cloud Service (у него был IP-адрес 35.199.58.125).
Читать полностью »
Распределенное логирование и трассировка для микросервисов
2019-10-31 в 11:08, admin, рубрики: elasticsearch, elk, graylog, neo4j, postgresql, zipkin, Администрирование баз данных, Блог компании Конференции Олега Бунина (Онтико), высокая производительность, делой, логи, логирование, метрики, микросервисы, системное администрирование, трассировка, хранение данныхЛогирование — важная часть любого приложения. Любая система логирования проходит три основных шага эволюции. Первый — вывод на консоль, второй — запись логов в файл и появление фреймворка для структурированного логирования, и третий — распределенное логирование или сбор логов различных сервисов в единый центр.
Если логирование хорошо организовано, то позволяет понимать, что, когда и как идет не так, как задумано, и передавать нужную информацию людям, которым предстоит эти ошибки исправлять. Для системы, в которой каждую секунду отправляется 100 тысяч сообщений в 10 дата-центрах на 190 стран, а 350 инженеров каждый день что-то деплоят, система логирования особенно важна.
Иван Летенко — тимлид и разработчик в Infobip. Чтобы решить проблему централизованной обработки и трассировки логов в микросервисной архитектуре при таких огромных нагрузках, в компании пробовали различные комбинации стека ELK, Graylog, Neo4j и MongoDB. В итоге, спустя много грабель, написали свой лог-сервис на Elasticsearch, а как БД для дополнительной информации взяли PostgreSQL.
Под катом подробно, с примерами и графиками: архитектура и эволюция системы, грабли, логирование и трассировка, метрики и мониторинг, практика работы с кластерами Elasticsearch и их администрирования в условиях ограниченных ресурсов.
Читать полностью »
AWS Elasticsearch: фундаментально дефектный продукт
2019-10-31 в 10:23, admin, рубрики: Amazon Web Services, AWS, Dumpster Fire, elasticsearchПеревод статьи Nick Price
В настоящее время я работаю над большим проектом логирования, который изначально был реализован с использованием AWS Elasticsearch. Поработав с крупномасштабными магистральными кластерами Elasticsearch в течение нескольких лет, я совершенно повержен качеством реализации AWS и не могу понять, почему они не исправили или хотя бы улучшили ее.
Читать полностью »
Сайзинг Elasticsearch
2019-10-08 в 16:10, admin, рубрики: big data, capacity management, capacity planning, elasticsearch, nosql, sizing, Блог компании Gals Software, Софт— How big a cluster do I need?
— Well, it depends… (злобное хихиканье)
Elasticsearch — сердце Elastic Stack, в котором происходит вся магия с документами: выдача, приём, обработка и хранение. От правильного количества нод и архитектуры решения зависит его производительность. И цена, кстати, тоже, если ваша подписка Gold или Platinum.
Основные характеристики аппаратного обеспечения — это диск (storage), память (memory), процессоры (compute) и сеть (network). Каждый из этих компонентов в ответе за действие, которое Elasticsearch выполняет над документами, это, соответственно, хранение, чтение, вычисления и приём/передача. Поговорим об общих принципах сайзинга и раскроем то самое «it depends». А в конце статьи ссылки на вебинары и статьи по теме. Поехали!
Читать полностью »
Скучный технологический стек интернет-компании из одного человека
2019-09-17 в 17:20, admin, рубрики: Amazon Web Services, Ansible, celery, DataDog, django, elasticsearch, Listen Notes, nginx, postgresql, python3, RabbitMQ, React, redis, slack, uwsgi, звук, поисковые технологии, Разработка веб-сайтов, Серверное администрирование, скука
Поисковая выдача на ListenNotes.com
Listen Notes — это поисковая система и база данных подкастов. Технология на самом деле очень скучная. Никакого ИИ, глубокого обучения или блокчейна. «Если вы должны объявлять о внедрении ИИ, то вы не используете Настоящий ИИ» :)
После прочтения этой статьи вы сможете повторить мой проект или легко сделать нечто подобное. Не придётся нанимать много разработчиков. Помните, когда Instagram привлёк $57,5 млн и отошёл к Facebook за $1 млрд, у них было всего 13 сотрудников — и это не только разработчики. Покупка Instagram произошла в начале 2012-го. Сейчас 2019 год, и сегодня как никогда просто создать что-то значимое с крошечной инженерной командой — даже из одного человека.
Читать полностью »
Как мы делаем Спортмастер
2019-06-20 в 12:04, admin, рубрики: elasticsearch, Hazelcast, java, spring, tomcat, Блог компании Sportmaster Lab, Разработка под e-commerce, СпортмастерВсем привет! Уверен, многие из вас когда-нибудь покупали майку, мяч, кроссовки, ну или какой-нибудь другой спортивный инвентарь в наших магазинах, но мало кто знает, что из себя представляет Спортмастер с технической точки зрения.
Немного Спортмастера образца 2003 года с сайта web.archive.org
Меня зовут Дмитрий, я старший java-разработчик в компании Спортмастер, и сегодня я хотел бы рассказать о нашем интернет-магазине, о том, какой путь он проделал, чтобы стать тем, каким вы его знаете сейчас: с чего мы начинали, как развивались, что получилось, а что нет, о проблемах сегодня, и о планах на будущее. Интересно? Добро пожаловать под кат!
Читать полностью »
Разбираемся с Machine Learning в Elastic Stack (он же Elasticsearch, он же ELK)
2019-06-13 в 4:05, admin, рубрики: Beats, big data, elastic stack, elasticsearch, kibana, logstash, machine learning, алгоритмы машинного обучения, анализ данных, Блог компании Gals Software, визуализация данных, машинное обучениеНапомним, что в основе Elastic Stack лежат нереляционная база данных Elasticsearch, веб-интерфейс Kibana и сборщики-обработчики данных (самый известный Logstash, различные Beats, APM и другие). Одно из приятных дополнений всего перечисленного стека продуктов — анализ данных при помощи алгоритмов машинного обучения. В статье мы разбираемся что из себя представляют эти алгоритмы. Просим под кат.
Читать полностью »
Утечка данных покупателей магазинов re:Store, Samsung, Sony Centre, Nike, LEGO и Street Beat
2019-06-12 в 6:51, admin, рубрики: data breach, data leak, elasticsearch, Администрирование баз данных, информационная безопасность, утечки данных, утечки информацииНа прошлой неделе издание Коммерсантъ сообщило, что «базы клиентов Street Beat и Sony Centre оказались в открытом доступе», но на самом деле все гораздо хуже, чем написано в статье.
Подробный технический разбор данной утечки я уже делал у себя в Telegram-канале, поэтому тут пробежимся только по основным моментам.
Кастомизация Django ORM на примере ZomboDB
2019-05-30 в 19:21, admin, рубрики: django, elasticsearch, postgresq, postgresql, python, zombodbКастомизация Django ORM на примере ZomboDB
Часто при работе с Django и PostgreSQL возникает необходимость в дополнительных расширениях для базы данных. И если например с hstore или PostGIS (благодаря GeoDjango) всё достаточно удобно, то c более редкими расширениями — вроде pgRouting, ZomboDB и пр. — приходится либо писать на RawSQL, либо кастомизировать Django ORM. Чем я предлагаю, в данной статье, и заняться, используя в качестве примера ZomboDB и его getting started tutorial. И заодно рассмотрим как можно подключить ZomboDB к проекту на Django.