Pull to refresh
0
@tvoikoreshread⁠-⁠only

User

Send message

Долгосрочное хранение данных в Elasticsearch

Reading time11 min
Views20K


Меня зовут Игорь Сидоренко, я техлид в команде админов, поддерживающих в рабочем состоянии всю инфраструктуру Домклик.


Хочу поделиться своим опытом в настройке распределённого хранения данных в Elasticsearch. Мы рассмотрим, какие настройки на нодах отвечают за распределение шардов, как устроен и работает ILM.

Много грязных технических подробностей
Total votes 29: ↑29 and ↓0+29
Comments6

Восстановление открытых файлов но удаленных c файловой системы linux

Reading time2 min
Views32K
Всех с прошедшим новым годом!
В этой заметке я бы хотел поделиться как можно восстановить открытый файл в linux.

Предыстория


Зашел человек на канал посвященный debian в jabber и сказал что взломали его jabber-bot и выполнили команду:
$ rm -rf /*

так как это было выполнено не под рутом, особых проблем быть не должно, но конфигурационные файлы бота удалены. Бот остался запущен и задача была восстановить открытые им файлы и попробовать максимально быстро поднять всё с теми же настройками.
Читать дальше →
Total votes 84: ↑67 and ↓17+50
Comments32

65 бесплатных курсов по Machine Learning от ведущих университетов мира

Reading time3 min
Views27K
image

Картинка отсюда.

Читать дальше →
Total votes 7: ↑5 and ↓2+5
Comments4

Linux и WYSIWYG

Reading time2 min
Views8.2K
В этом очень коротком очерке я расскажу о нюансах, из-за которых масштаб 100% в графическом редакторе на экране может не совпадать с реальным размером.

Потребовалось мне допечатать на существующий лист бумаги немного текста и графики. Решил напросвет подогнать. Выставил масштаб 100%, прикладываю лист к экрану, а между тем, что на экране и на бумаге, разбег процентов на 20%.
Читать дальше →
Total votes 13: ↑12 and ↓1+16
Comments17

Elastic под замком: включаем опции безопасности кластера Elasticsearch для доступа изнутри и снаружи

Reading time7 min
Views28K
image

Elastic Stack — известный инструмент на рынке SIEM-систем (вообще-то, не только их). Может собирать в себя много разнокалиберных данных, как чувствительных, так и не очень. Не совсем правильно, если доступ к самим элементам Elastic Stack не будет защищён. По умолчанию все коробочные элементы Elastic (Elasticsearch, Logstash, Kibana и коллекторы Beats) работают по открытым протоколам. А в самой Kibana отключена аутентификация. Все эти взаимодействия можно обезопасить и в этой статье мы расскажем как это сделать. Для удобства разделили повествование на 3 смысловых блока:

  • Ролевая модель доступа к данным
  • Безопасность данных внутри кластера Elasticsearch
  • Безопасность данных вне кластера Elasticsearch

Подробности под катом.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments9

Как эффективнее использовать kubectl: подробное руководство

Reading time23 min
Views20K

Если вы работаете с Kubernetes, то, вероятно, kubectl — одна из самых используемых вами утилит. А всякий раз, когда вы тратите много времени на работу с определенным инструментом, стоит хорошо его изучить и научиться эффективно использовать.

Команда Kubernetes aaS от Mail.ru перевела статью Даниэля Вейбеля, в которой вы найдете советы и приемы для эффективной работы с kubectl. Также она поможет глубже понять работу Kubernetes.

По словам автора, цель статьи — сделать вашу ежедневную работу с Kubernetes не только более эффективной, но и более приятной!
Читать дальше →
Total votes 51: ↑51 and ↓0+51
Comments3

MS Remote Desktop Gateway, HAProxy и перебор пароля

Reading time7 min
Views19K
Друзья, привет!

Существует множество способов подключения из дома к рабочему месту в офисе. Один из них — это использовать Microsoft Remote Desktop Gateway. Это RDP поверх HTTP. Я не хочу здесь затрагивать настройку самого RDGW, не хочу рассуждать, почему он хорош или плох, давайте отнесёмся к нему, как к одному из инструментов удалённого доступа. Я хочу поговорить о защите вашего RDGW сервера от злого интернета. Когда я настроил RDGW сервера, я тут же озаботился защитой, особенно защитой от перебора пароля. Меня удивило, что я не нашёл в интернетах статей о том, как можно это сделать. Ну что ж, придётся делать самостоятельно.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments24

Программируем прямо в Nginx

Reading time13 min
Views36K


Nginx — великолепный веб-сервер. Все мы привыкли использовать его в связке с бекендами на разных языках программирования. Но оказывается можно писать простые программы прямо внутри конфигурационного файла Nginx. Это можно использовать для балансировки, написания простых API и даже отдавать динамические страницы прямо из конфига.

В статье мы разберем примеры написания простых программ в конфиге nginx.
Читать дальше →
Total votes 30: ↑22 and ↓8+26
Comments23

Все полезные материалы по Wi-Fi в одном месте

Reading time7 min
Views48K

image


Никак не можете найти ту самую ссылку на цветовые профили для Wireshark? Забыли, на каком сайте видели удобную стойку для Site Survey? Какой адаптер подходит для Packet Capture на Windows? Закладка с таблицей модуляций осталась в другом браузере?


Мы тоже от этого устали.


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

Пусть всё будет в одном месте
Total votes 32: ↑32 and ↓0+32
Comments25

Я есть root. Разбираемся в повышении привилегий ОS Linux

Reading time9 min
Views58K

Первый квартал 2020 года я провел за подготовкой к экзамену OSCP. Поиск информации в Google и множество «слепых» попыток отнимали у меня все свободное время. Особенно непросто оказалось разобраться в механизмах повышения привилегий. Курс PWK уделяет этой теме большое внимание, однако методических материалов всегда недостаточно. В Интернете есть куча мануалов с полезными командами, но я не сторонник слепого следования рекомендациям без понимания, к чему это приведет.


Мне хочется поделиться с вами тем, что удалось узнать за время подготовки и успешной сдачи экзамена (включая периодические набеги на Hack The Box). Я испытывал сильнейшее ощущение благодарности к каждой крупице информации, которая помогала мне пройти путь Try Harder более осознанно, сейчас мое время отдать должное комьюнити.


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


Читать дальше →
Total votes 44: ↑39 and ↓5+44
Comments26

90+ полезных инструментов для Kubernetes: развертывание, управление, мониторинг, безопасность и не только

Reading time15 min
Views18K

Осенью 2018 года мы опубликовали список из 25 полезных инструментов Kubernetes. С тех популярность платформы сильно выросла. Экосистема оркестрации контейнеров бурно развивается, можно найти вспомогательные инструменты практически для любой задачи.

Поэтому команда Kubernetes aaS от Mail.ru обновила и дополнила подборку. Предлагаем вашему вниманию список с почти сотней полезных инструментов, упрощающих жизнь тем, кто работает с Kubernetes.

Total votes 30: ↑30 and ↓0+30
Comments15

Кейс: как составить контент-план для B2B-блога на основе информационной семантики

Reading time11 min
Views4.5K
Кейс: как составить контент-план для B2B-блога на основе информационной семантики

Контент-планы для блогов [часто] делают как попало. То авторы заносят темы и правят бал вместо редакторов, то редактора что-то ситуативно выискивают и «латают дыры». Да, еще есть блоги имени себя любимых — с новостями и пресс-релизами...


В результате блог просто висит на сайте — он как бы есть, но толку от него ноль (верней даже минус, потому что за все это дело все-таки нужно платить).


Если вы не хотите, чтобы блог стал чемоданом без ручки, подойдите к планированию контента системно. Разберем подход, основанный на подборе популярной семантики в нише. На примере блога сервиса для управления задачами покажем, как составить контент-план от А до Я.

Читать дальше
Total votes 8: ↑8 and ↓0+8
Comments0

Истории аварий с Patroni, или Как уронить PostgreSQL-кластер

Reading time25 min
Views33K
В PostgreSQL нет High Availability из коробки. Чтобы добиться HA, нужно что-то поставить, настроить — приложить усилия. Есть несколько инструментов, которые помогут повысить доступность PostgreSQL, и один из них — Patroni.

На первый взгляд, поставив Patroni в тестовой среде, можно увидеть, какой это прекрасный инструмент и как он легко обрабатывает наши попытки развалить кластер. Но на практике в production-среде не всегда всё происходит так красиво и элегантно. Data Egret начали использовать Patroni еще в конце 2018 года и накопили определенный опыт: как его диагностировать, настраивать, а когда вовсе не полагаться на автофейловер.

На HighLoad++ Алексей Лесовский обстоятельно, на примерах и с разбором логов рассказал о типовых проблемах, возникающих при работе с Patroni, и best practice для их преодоления.


В статье не будет: инструкций по установке Patroni и примеров конфигураций; проблем за пределами Patroni и PostgreSQL; историй, основанных на чужом опыте, а только те проблемы, с которыми в Data Egret разобрались сами.
Total votes 18: ↑18 and ↓0+18
Comments1

Редактор кода Visual Studio Code. Самый подробный гайд по настройке и установке плагинов для начинающих

Reading time23 min
Views804K
Бесплатный, мощный, очень популярный, с кучей дополнений, да что там говорить, сам Фейсбук выбрал его в качестве основного редактора!


Сегодня речь пойдет о редакторе кода Visual Studio Code или просто VS Code. Мы с тобой его установим, настроим, а также применим плагины, которые существенно упростят нам работу.
Читать дальше →
Total votes 15: ↑12 and ↓3+15
Comments18

Как мы Elasticsearch в порядок приводили: разделение данных, очистка, бэкапы

Reading time8 min
Views30K
Эта статья — практическая история о том, как мы столкнулись с проблемой разделения логов, хранимых в Elasticsearch, из-за которой пришлось поменять подход к бэкапам и управлению индексами.



Всё началось вскоре после того, как было поднято production-окружение. У нас был «боевой» кластер Kubernetes, все логи из которого собирал fluentd и направлял их напрямую в индексы logstash-yyy.mm.dd
Читать дальше →
Total votes 35: ↑34 and ↓1+45
Comments17

9 советов для Windows Terminal от Скотта Хансельмана

Reading time2 min
Views14K
Привет, Хабр! Возможно вы слышали, что совсем скоро выходит новый Windows Terminal. Мы уже писали об этом здесь. Наш коллега Скотт Хансельман подготовил несколько советов по тому, как работать с новым терминалом. Присоединяйтесь!

image
Читать дальше →
Total votes 13: ↑12 and ↓1+15
Comments8

9 четких инструментов для изучения и прокачки английской лексики

Reading time6 min
Views64K


В Оксфордском словаре английского языка почти 450 000 слов! Но если вы учите язык как иностранный, их совсем не нужно запоминать все и сразу.

Чтобы полноценно общаться на английском языке, вполне достаточно всего лишь 2000–3000 слов. При должном усердии и небольшом количестве хитростей их вполне можно выучить за год.

В этой статье мы собрали 9 шикарных инструментов, которые помогут вам учить английские слова и сделают учебную рутину интереснее. Не будем долго рассусоливать, погнали!
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments9

Анатомия каналов в Go

Reading time34 min
Views162K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Anatomy of Channels in Go" автора Uday Hiwarale.


Что такое каналы?


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


Создание канала


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

Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments7

Создание отказоустойчивой ИТ инфраструктуры. Часть 2. Установка и настройка кластера oVirt 4.3

Reading time22 min
Views31K

Эта статья является продолжением предыдущей – «Создание отказоустойчивой ИТ инфраструктуры. Часть 1 — подготовка к развёртыванию кластера oVirt 4.3».


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

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments9

Упрощаем написание HTTP обработчиков на Golang

Reading time6 min
Views11K

При обработке входящего HTTP запроса требуется выполнить большое количество действий, таких как:


  • Логирование входящего HTTP запроса
  • Проверка на допустимость HTTP метода
  • Выполнение аутентификации (basic, MS AD, ...)
  • Проверка валидности token (при необходимости)
  • Считывание тела (body) входящего запроса
  • Считывание заголовка (header) входящего запроса
  • Собственно обработка запроса и формирование ответа
  • Установка HSTS Strict-Transport-Security
  • Установка Content-Type для исходящего ответа (response)
  • Логирование исходящего HTTP ответа
  • Запись заголовка (header) исходящего ответа
  • Запись тела исходящего ответа
  • Обработка и логирование ошибок
  • Обработка defer recovery для восстановления после возможной panic

Большинство этих действий являются типовыми и не зависят от типа запроса и его обработки.
Для продуктивной эксплуатации на каждое действие необходимо предусмотреть обработку ошибок и логирование.


Повторять все это в каждом HTTP обработчике крайне неэффективно.


Даже если вынести весь код в отдельные подфункции, все равно получается примерно по 80-100 строк кода на каждый HTTP обработчик без учета собственно обработки запроса и формирования ответа.


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


Этот подход реализован в шаблоне backend сервера на Golang

Читать дальше →
Total votes 10: ↑4 and ↓6+3
Comments11

Information

Rating
Does not participate
Location
Тверь, Тверская обл., Россия
Registered
Activity