Pull to refresh
1
0.2
Send message

Микросервисная архитектура: от монолита к гибкой системе (да, опять)

Reading time12 min
Views5.5K

Привет, Хабр! Меня зовут Андрей Бирюков, я СTO Сервисной цифровой платформы в Газпромбанке. За свою карьеру поработал в нескольких компаниях — от стартапов до крупных корпораций — и видел разные архитектурные подходы.

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

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

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

Читать далее

Хочешь найти работу? Продай себя

Level of difficultyEasy
Reading time15 min
Views72K

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

План понятен? Хорошо. Осталась всего одна деталь!

Чтобы моя статья действительно дала тебе пользу, представь: ты заплатил мне за неё 100 тысяч рублей и она написана специально по твоему заказу.

Представил? Отлично, тогда продолжай читать внимательно, ведь деньги ты уже перевел.

Давай сначала расскажу, как тебя воспринимают компании на работодательском рынке. Такой рынок живет тем, что кандидатов на нем кратно больше, чем рабочих мест. В таких условиях рождается нездоровая конкуренция и её нужно уметь преодолевать. Конкурс из 500 человек на одно место это не шутка, а обычные цифры с хедхантера.

прорваться вместе

Безопасная аутентификация между клиентом и сервером без ввода логина и пароля

Reading time7 min
Views25K
Недавно, при разработке распределенного анализатор трафика, у меня появилась задача спроектировать систему аутентификации между клиентом и сервером. Причем необходимо было спроектировать систему для двух разных ситуаций:

  • когда клиент и сервер общаются в доверенной (локальной) сети;
  • клиент и сервер взаимодействуют через глобальную, незащищенную сеть.

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

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

Читать дальше →

Человек-швейцарский нож: чем занимаются аналитики ИБ и где мы таких берем

Level of difficultyEasy
Reading time8 min
Views6.1K

Если читать (а не только быть подписанным и замьютить) различные ТГ-каналы с новостями в сфере кибербеза, то можно заметить, что каждая уважающая себя компания в этой сфере постоянно рассказывает, как атакуют те или иные отрасли и страны, какое ВПО используют злоумышленники, сколько фишинговых писем дошли до своих адресатов и тому подобное. Это же можно увидеть и в федеральных СМИ, особенно когда случается какая-то громкая кибератака.

Откуда же берется эта информация? Как понять, что сейчас в тренде среди атакующих и защищающихся? А как будут атаковать в будущем ту или иную компанию, или отрасль, или страну? Какие новые технологии могут на это повлиять? На эти и многие другие вопросы отвечают аналитики-исследователи PT Cyber Analytics.

Читать далее

Полное практическое руководство по Docker: с нуля до кластера на AWS

Reading time39 min
Views1.8M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы; позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, а также предоставляет среду по управлению контейнерами.



Ого! Как много информации.

Читать дальше →

Универсальный https c использованием ГОСТ сертификата

Reading time6 min
Views53K
При попытках организовать https-соединения для различных web-сервисов с использованием ГОСТ-шифрования всегда оставались вопросы с посетителями, браузеры которых не поддерживают ГОСТ-алгоритмы. Логичным казалось решение при установке https-соединения отдавать клиенту сертификат в зависимости от поддерживаемых его системой алгоритмов, но до недавнего времени практические реализации такого подхода мне не встречались.
Читать дальше →

Осторожнее с редактированием bash-скриптов

Reading time2 min
Views65K
Предположим, я написал такой bash-скрипт с названием delay.sh. Как думаете, что он делает?

#!/bin/bash
sleep 30
#rm -rf --no-preserve-root /
echo "Time's up!"

Похоже, он ожидает 30 секунд, а затем выводит сообщение на экран. Здесь никаких фокусов — он делает именно это. Там есть опасная команда в середине, но она закомментирована и не выполняется.

Представьте, что я снова запускаю этот скрипт, но теперь мне не хочется ждать 30 секунд — это слишком долго. Я открываю вторую консоль, меняю sleep 30 на sleep 3, затем сохраняю файл. Как думаете, что будет теперь?

Ну, через 30 секунд скрипт удалит все мои файлы.
Читать дальше →

Самая богатая бедная страна

Level of difficultyEasy
Reading time7 min
Views59K

Я переехал в Анголу в 2012 году, через 10 лет после окончания гражданской войны. Помню как мы ехали по Луанде и на многих билбордах был портрет президента с подписью "архитектор мира". И это на самом деле было очень неплохой пропагандой, тот кто придумал это мотто по своему гениален, эти два слова выражали два главных чаяния ангольцев - они хотели мира и восстановления, отстраивания страны... это мой рассказ о тех преобразованиях, которые сейчас происходят в Анголе с точки зрения человека, который жил в Анголе много лет.

Читать далее

Сравниваем инструменты мониторинга IT-инфраструктуры Zabbix, Icinga, Prometheus

Reading time10 min
Views39K

Инструменты мониторинга IT-инфраструктуры позволяют полностью отслеживать ее состояние: собирать данные, анализировать и визуализировать их, оповещать о сбоях и т.д. В этой статье рассмотрим платформы Zabbix, Icinga и Prometheus. Разберем их UI, архитектуру, принципы сбора метрик, методы хранения данных, системы оповещения и дадим полезные ссылки.

Читать далее

Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 1)

Reading time6 min
Views31K

Модули – это дискретные единицы кода, которые можно запускать с помощью командной строки или с помощью плейбука для того, чтобы вносить определенные изменения в целевой узел или собирать с него информацию. Ansible реализует каждый модуль на удалённом целевом узле, а также собирает ответные значения. Модули Ansible также известны как плагины задач или библиотечные плагины. 

Существует несколько наиболее важных Ansible-модулей, которые часто используются при автоматизации ряда задач. Но охватить все важные модули в одной статье будет не самой хорошей идеей, поэтому мы делим её на три части.

В этой части мы рассмотрим модули проверки подключения хоста, а также целевого узла (модуль ping), модуль, который может извлекать информацию с целевого узла (модуль setup), модули управления существующим пакетом и установки новых пакетов (yum, apt, package, pip и npm модули), а также модуль запуска базовых команд и скриптов на целевых узлах (raw, command, shell и script модули).

Итак, начнём..

Читать далее

Firewall не спасёт

Level of difficultyHard
Reading time15 min
Views28K
Сгенерировано с помощью GIGA-CHAT

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

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

iPXE — заливка linux, windows, утилит по сети

Reading time12 min
Views77K

Раньше у нас использовалась заливка ОС по PXE с использованием syslinux, но как бывает с самодостаточными системами и без достаточного контроля и внимания - быстро превратилась в кашу из конфигураций, библиотек, загрузчиков.

Так же была необходимость в поддержке заливки разных ОС в режиме EFI - на тот момент заливка была только в Legacy.

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

Читать далее

Цифровой сертификат безопасности: для чего это нужно?

Reading time7 min
Views133K
SSL (Secure Socket Layer) — протокол шифрования данных, которыми обмениваются клиент и сервер, — стал наиболее распространённым методом защиты в Интернете. Некогда он был разработан компанией Netscape. Безопасный обмен обеспечивается за счёт шифрования и аутентификации цифрового сертификата. Цифровой сертификат — файл, который уникальным образом идентифицирует серверы. Обычно цифровой сертификат подписывается и заверяется специализированными центрами. Их называют центрами сертификации или удостоверяющими центрами.


Читать дальше →

Типовые сценарии внедрения NGFW

Reading time9 min
Views21K


Disclaimer


В данной статье приводятся лишь примеры типовых сценариев внедрения NGFW. Не стоит брать предложенные схемы за готовый шаблон. В реальной жизни, почти каждое внедрение уникально. Есть много подводных камней, на которые нужно обратить внимание перед планированием топологии сети. Но в целом, все варианты будут “крутиться” вокруг нескольких концептов. Их мы и постараемся обсудить.

Типовая архитектура сети с точки зрения ИБ


Прежде чем описывать варианты внедрения NGFW, мне бы хотелось обсудить несколько типичных сценариев использования средств сетевой защиты. Мы рассмотрим наиболее распространенные средства, которые есть практически в каждой компании (конечно же максимально упрощенно и поверхностно, иначе получится целая книга). Чаще всего на практике можно встретить три самых распространенных варианта:
Читать дальше →

Зеркалирование трафика на Juniper MX

Reading time39 min
Views26K
image alt

Сегодня мы поговорим о зеркалировании трафика на маршрутизаторах Juniper серии MX. После свичей производства Cisco, Huawei или Arista конфигурация SPAN и RSPAN на JunOS будет казаться очень сложной, но за сложной (на первый взгляд) конфигурацией скрываются огромные возможности платформы MX в области зеркалирования трафика. Подход Juniper хоть и на первый взгляд сложен, но становится прост и понятен, если не тупо копипастить конфиги с одной коробки на другую, а понимать, что и зачем делается. Идеология JunOS предполагает использовать filter based forwarding (FBF) в целях зеркалирования, что дает нам определенную гибкость в реализации сложных схем зеркалирования трафика.

Итак, начнем. Мы рассмотрим несколько примеров зеркалирования:

1. Локальное зеркалирование с порта на порт
2. Зеркалирование на два и более потребителя
3. Зеркалирование на удаленный хост
4. Избирательное зеркалирование на два и более потребителя
5. Локальное зеркалирование L2 трафика
6. Зеркалирование L2 трафика на удаленный сервер
7. Использование более двух mirroring инстансов на одном FPC

Итак, начнем по порядку.
Читать дальше →

Почему вам не нужна Kali Linux

Level of difficultyEasy
Reading time9 min
Views42K

Многие хотят поработать с Kali linux. По-прежнему в интернете множество запросов посвящено ей . Она всегда на слуху, когда говорят о взломах и хакерах, а также о совершенных мастерах IT( тех самых, что и микропроцессор запрогают и сеть настроят, и чайник со стиралкой отремонтируют).
Но, насколько оправдано восхищение ей? Так ли она безупречна и необходима? Нужна ли она конкретно вам? В этих вопросах мы и попробуем разобраться.

Читать далее

Какую модель информационной безопасности выбрать?

Level of difficultyMedium
Reading time9 min
Views21K

Разграничение доступа к ресурсам системы - это важная часть информационной безопасности и управления доступом в компьютерных системах. Эта курсовая работа рассматривает методы и принципы разграничения доступа на уровне ресурсов и на уровне пользователей. Изучим различные аспекты этой проблемы, включая аутентификацию, авторизацию, политики безопасности, механизмы контроля доступа и применение этих методов в практических сценариях.

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

Читать далее

Модели в информационной безопасности

Reading time17 min
Views29K
Добрый день, Хабровчане!

1. Вместо вступления


Недавно опубликованный перевод Ментальные модели ИБ заинтересовал меня не только общим посылом (в частности, применение моделей в обучении – острый для меня вопрос, ведь учёба – процесс непрерывный), но и списком ссылок на модели. Почему он так важен? Разберёмся по ходу статьи.

С некоторыми из перечисленных в тексте моделей приходится сталкиваться в рамках рабочего процесса (мониторинг и реагирование модно связывать с MITRE ATT&CK и Kill Chain). О других у меня было общее представление, но как их применять, или какие ключевые особенности позволяют повысить эффективность сего процесса, оставалось за кадром. Названия каких-то моделей, признаться честно, я слышал впервые.

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

Работа с утилитой mdadm. Изменение типа массива, chunk size, расширение

Reading time5 min
Views73K

Введение


К написанию данной статьи меня побудило отсутствие внятной информации на русском языке по работе с утилитой mdadm, реализующей RAID различных типов в ОС linux. В принципе, основные положения работы данной утилиты освещаются достаточно подробно. Почитать об этом можно, например, раз, два, три.

Преобразование RAID1 в RAID5


Основным посылом было преобразование RAID1, созданного при установке Ubuntu массива из двух дисков к RAID5. Начал я, как водится с гугления, и набрел на более раннюю статью на Хабре К сожалению, протестированный на виртуальных машинах, этот способ гарантировано убивал возможность загрузки с корневого раздела. С чем это связано, с более новой версией mdadm, или со спецификой тестирования (корневой раздел на массиве, требуется работа с live CD) выявить не удалось.
Читать дальше →

Сверхзанятость в IT и digital: как совмещать несколько работ и надо ли

Level of difficultyEasy
Reading time10 min
Views14K

Привет, это Саша Берлизева, автор и редактор медиа Unisender. Здесь я собрала истории тех, кто хакнул систему и смог совместить несколько работ одновременно. Наши герои рассказали, чем они рисковали, когда выбирали сверхзанятость, и что получили в итоге. Заходите почитать, если хотите узнать, как не срывать дедлайны, находиться на трёх совещаниях одновременно и при этом не выгорать.

Читать далее

Information

Rating
2,840-th
Registered
Activity

Specialization

System Administration, Network Engineer
Python
Linux
Django
English
Bash
PostgreSQL