Pull to refresh
0
@cuppatea read⁠-⁠only

User

Send message

Как мы сдавали экзамен Certified Kubernetes Administrator

Reading time 7 min
Views 27K


В прошлом году у организации CNCF (Cloud Native Computing Foundation), помогающей развиваться таким Open Source-проектам, как Kubernetes и Prometheus, появилась программа сертификации CKA (Certified Kubernetes Administrator). В начале этого лета мы решили в ней поучаствовать и получили первые сертификаты для своих сотрудников. О том, что это, зачем и как происходит, с удовольствием рассказываем всем любопытствующим читателям хабры.
Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Comments 25

Типичные ошибки при построении высокодоступных кластеров и как их избежать. Александр Кукушкин

Reading time 18 min
Views 7.2K


Вы только что установили PostgreSQL и запустили ваш первый кластер, создали несколько таблиц, загрузили данные, и даже немного подкрутили конфигурацию PostgreSQL для улучшения производительности. Теперь вы думаете о том, как сделать ваш кластер высокодоступным. К сожалению, PostgreSQL не умеет сам выполнять автоматическое переключение при недоступности мастера, но, к счастью для нас, этого можно достичь с помощью сторонних утилит. Задача ясна, и вы начинаете изучать преимущества и недостатки всех утилит, чтобы выбрать лучшую. И… вы уже на неправильном пути, потому что в первую очередь вы должны определиться со значениями SLA, RTO и RPO. В этом докладе я планирую рассказать о ряде ошибок, которые допускают администраторы баз данных при настройке и эксплуатации высокодоступного кластера Постгреса с автоматическим переключением.

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

Путешествия банковской транзакции

Reading time 8 min
Views 149K
image

Некоторое время назад на Хабре уже мелькали посты о работе банкоматов: один и два, но оба они описывали принципы работы банкоматов и вообще карточного процессинга весьма поверхностно.
Для интересующихся под катом много подробностей работы карточного процессинга банка (много букв).
Читать дальше →
Total votes 101: ↑98 and ↓3 +95
Comments 104

Хороший триггер, плохой триггер: как мы мониторим сотни серверов по всему миру

Reading time 8 min
Views 27K


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

Нам, например, круглосуточно требуется мониторить более 46 000 метрик на более чем 500 серверах в 6 дата-центрах и 4 странах, а DAU игры War Robots стабильно переваливает за 1 500 000 человек.

Но правильный, настоящий мониторинг пишется кровью системного администратора и разработчика. Каждый кейс, каждый факап и даже внутренние процессы, включая количества тонера в картридже принтера, должны быть описаны сценарием мониторинга. Я решил немного рассказать о том, с чем мы столкнулись при организации этого процесса, а также как выстроили работу сисадминов, снизив количество дежурств и улучшив их качество. При этом упор будет сделан на подходе к мониторингу, тогда как настройка той или иной системы легко гуглится и без посторонней помощи.
Читать дальше →
Total votes 27: ↑25 and ↓2 +23
Comments 14

Про PKI «на пальцах» за 10 минут

Reading time 6 min
Views 101K


Предложил коллегам провести внутреннюю мини-лекцию по сабжу — идея зашла. Сел писать план лекции и… чот психанул — в итоге очнулся, дописывая небольшой гайд. Подумал, что будет полезно добавить сюда что-то для быстрого понимания, что такое PKI, зачем она нужна и как работает, так как пока готовился, чтобы освежить память, искал информацию в том числе на полюбившемся «Хабрахабре», но статей в таком формате не нашел.

Пишу на примере наших повседневных задач, которые знакомы многим: беспарольный доступ к серверам OpenVPN и защита доступа к ресурсам с помощью HTTPS.
Читать дальше →
Total votes 20: ↑14 and ↓6 +8
Comments 15

Защищаем приватные ключи от кражи из VPS

Reading time 6 min
Views 18K
В начале каждого семестра студенты магистерской программы кафедры МиИТ Академического университета (СПб) и представители компаний-партнеров собираются вместе. Представители рассказывают о проектах, над которыми можно будет работать, а студенты выбирают их.

В одном из проектов, сделанных в Parallels Labs, наш студент исследовал возможность реализации виртуального Hardware Security Module (HSM). В результате он добавил свою реализацию VHSM в open-source проект OpenVZ. Подробнее о его решении читайте под катом.
Читать дальше
Total votes 18: ↑15 and ↓3 +12
Comments 19

С чего начинается Elasticsearch

Reading time 14 min
Views 214K

Elasticsearch, вероятно, самая популярная поисковая система на данный момент с развитым сообществом, поддержкой и горой информации в сети. Однако эта информация поступает непоследовательно и дробно.


Самое первое и главное заблуждение — "нужен поиск, так бери эластик!". Но в действительности, если вам нужен шустрый поиск для небольшого или даже вполне себе крупного проекта, вам стоит разобраться в теме поподробней и вы откажетесь от использования именно этой системы.

Читать дальше →
Total votes 51: ↑50 and ↓1 +49
Comments 44

Сайзинг Elasticsearch

Reading time 6 min
Views 29K


— How big a cluster do I need?
— Well, it depends… (злобное хихиканье)

Elasticsearch — сердце Elastic Stack, в котором происходит вся магия с документами: выдача, приём, обработка и хранение. От правильного количества нод и архитектуры решения зависит его производительность. И цена, кстати, тоже, если ваша подписка Gold или Platinum.

Основные характеристики аппаратного обеспечения — это диск (storage), память (memory), процессоры (compute) и сеть (network). Каждый из этих компонентов в ответе за действие, которое Elasticsearch выполняет над документами, это, соответственно, хранение, чтение, вычисления и приём/передача. Поговорим об общих принципах сайзинга и раскроем то самое «it depends». А в конце статьи ссылки на вебинары и статьи по теме. Поехали!
Читать дальше →
Total votes 21: ↑18 and ↓3 +15
Comments 16

2. Elastic stack: анализ security логов. Logstash

Reading time 7 min
Views 20K


В прошлой статье мы познакомились со стеком ELK, из каких программных продуктов он состоит. И первая задача с которой сталкивается инженер при работе с ELK стеком это отправление логов для хранения в elasticsearch для последующего анализа. Однако, это просто лишь на словах, elasticsearch хранит логи в виде документов с определенными полями и значениями, а значит инженер должен используя различные инструменты распарсить сообщение, которое отправляется с конечных систем. Сделать это можно несколькими способами — самому написать программу, которая по API будет добавлять документы в базу либо использовать уже готовые решения. В рамках данного курса мы будем рассматривать решение Logstash, которое является частью ELK stack. Мы посмотрим как можно отправить логи с конечных систем в Logstash, а затем будем настраивать конфигурационный файл для парсинга и перенаправления в базу данных Elasticsearch. Для этого в качестве входящей системы берем логи с межсетевого экрана Check Point.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 0

Как мы адаптировали стек ELK для мониторинга и анализа ошибок на Java и .NET проектах

Reading time 5 min
Views 17K

Пациент приходит к врачу и жалуется на боль в животе. «Срочно на операцию! — отвечает врач. — Сейчас мы вас разрежем, покопаемся и постараемся зашить как было».


Когда пользователи ругались на работу системы, называя программистов негодяями, мы поднимали журнал событий и смотрели, что пошло не так. А потом перешли на ELK. Теперь мы мониторим ошибки в моменте, не тормозя работу сервисов.


В этой статье мы расскажем, как адаптируем и применяем стек ELK на Java и .Net-проектах и находим ошибки в онлайн режиме без вскрытия или малоинвазивными методами. Да, мы разобрались и поняли, что не очень важно, Microsoft ли сделал это решение или Open Source — всё одинаково можно настроить под свои нужды.


Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Comments 13

Как IaaS-провайдер работает с ИБ: угрозы и защита

Reading time 6 min
Views 4K
По статистике Apiumhub, у 70% компаний как минимум одно приложение работает в облаке. Миграция в облачную среду влечёт за собой ряд преимуществ, но многие предприятия обеспокоены вопросами безопасности данных. Однако мнение о том, что облачная инфраструктура слабо защищена — миф, поскольку провайдер специализируется на «обороне периметра».

В сегодняшнем материале мы отметим некоторые из наиболее крупных угроз безопасности и поговорим о том, как IaaS-провайдеры защищают данные клиентов.

Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 1

Чтение на выходные: три книги о корпоративных сетях

Reading time 2 min
Views 8.4K
Это компактный дайджест с литературой о настройке сетевой инфраструктуры и политик безопасности. Мы выбрали книги, часто упоминаемые на Hacker News и других тематических площадках об управлении ресурсами сетей, настройке и защите облачной инфраструктуры.

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

Разбираемся с Machine Learning в Elastic Stack (он же Elasticsearch, он же ELK)

Reading time 7 min
Views 23K


Напомним, что в основе Elastic Stack лежат нереляционная база данных Elasticsearch, веб-интерфейс Kibana и сборщики-обработчики данных (самый известный Logstash, различные Beats, APM и другие). Одно из приятных дополнений всего перечисленного стека продуктов — анализ данных при помощи алгоритмов машинного обучения. В статье мы разбираемся что из себя представляют эти алгоритмы. Просим под кат.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Comments 13

iSCSI хранилище для небогатых

Reading time 8 min
Views 108K
Доброго времени суток, уважаемое сообщество!

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

Если у вас есть подобная задача или вас просто заинтересовал заголовок, то добро пожаловать под хабракат.
Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Comments 30

Масштабирование БД в высоконагруженных системах

Reading time 9 min
Views 31K
На прошлом внутреннем митапе Pyrus мы говорили о современных распределенных хранилищах, а Максим Нальский, CEO и основатель Pyrus, поделился первым впечатлением от FoundationDB. В этой статье рассказываем о технических нюансах, с которыми сталкиваешься при выборе технологии для масштабирования хранения структурированных данных.

Когда сервис недоступен пользователям какое-то время, это дико неприятно, но всё же не смертельно. А вот потерять данные клиента — абсолютно недопустимо. Поэтому любую технологию для хранения данных мы скрупулезно оцениваем по двум-трем десяткам параметров.
Читать дальше →
Total votes 21: ↑19 and ↓2 +17
Comments 22

Alfa Battle — как это было, запись конференции и список задач

Reading time 24 min
Views 3K
В начале июня мы запустили Alfa Battle для Java-разработчиков. Пришло время рассказать о том, как все прошло, поделиться полезными видео от спикеров стрим-конференции «Кодинг будущего» (Альфа-Банк, Билайн, X5 Retail Group) и показать наши задачи.



К слову, о задачах. То ли мы перестарались и переоценили возможных участников, то ли погода была так себе, в общем, из 1498 участников из 50 городов все задачи (5 штук) целиком не решил никто. Поэтому под катом вы найдете все задачи с описанием и, если захочется их порешать, сможете это сделать без каких-то дедлайнов. Тех, кто осилит, с радостью пригласим к нам. В конце поста — о новой стратегии найма специалистов. Было время, когда IT Альфа-Банка по больше части сосредотачивалось в трёх городах — Москва, Санкт-Петербург, Екатеринбург. Теперь же мы можем рассматривать людей со всей страны. И не только.
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Comments 0

LDAP. Настройка отказоустойчивого LDAP сервера

Reading time 12 min
Views 208K
The Internet Engineering Task Force (IETF)В этой статье я расскажу вам о сервере службы каталогов 389 Directory Server (он же Fedora Directory Server, он же Redhat Directory Server). Так уж повелось, что для доступа к серверу каталогов используется протокол LDAP. Если вы не работали с LDAP, я очень рекомендую ознакомиться со статьями в Wikipedia (тут про cлужбу каталогов, а тут про протокол LDAP).

Итак, сначала кратко о том, зачем же вообще использовать сервер службы каталогов (далее — LDAP-сервер). LDAP-сервера, в основном, применяются для централизованного хранения учетных записей, и всего, что с ними связано. LDAP-сервер представляет собой иерархическую БД, а значит в нем можно хранить любые данные.

Казалось бы, вполне логичен вопрос: а почему именно LDAP? Что мешает хранить учетные записи в MySQL или PostgreSQL? Ответ очевиден — ничего =)

Но над любой RDBMS служба каталогов обладает целым рядом преимуществ:

  • Это стандарт. Многие приложения поддерживают аутентификацию/авторизацию через LDAP;
  • Данные хранятся как иерархическое дерево, что позволяет делать эффективные операции поиска, выделив нужную часть дерева;
  • Число операций чтения в тысячи раз превышают число операций записи, в связи с этим появляется огромное число плюсов: нет необходимости применения транзакций и rollback'ов, репликация работает без проблем, которые присущи RDBMS;
  • Приложение должно видеть одну и ту же информацию на всех серверах службы каталогов, если сервер не хранит информацию, нужную клиентскому приложению, он может сам запросить ее у другого сервера или перенаправить само приложение к другому серверу;
  • Из-за описанных выше свойств службы каталогов, этот сервис отлично масштабируется горизонтально.


Выбор сервера службы каталогов пал на 389 Directory Server. История этого LDAP сервера тесно связана с компанией Netscape (если интересно, почитать историю можно тут).

Читать дальше →
Total votes 68: ↑60 and ↓8 +52
Comments 44

Сага о кластере. Все, что вы хотели знать про горизонтальное масштабирование в Postgres‘е

Reading time 17 min
Views 24K


Олег Бартунов (zen), Александр Коротков (smagen), Федор Сигаев


Илья Космодемьянский: Сейчас будет самая животрепещущая тема по PostgreSQL. Все годы, что мы занимаемся консалтингом, первое, что спрашивают люди: «Как сделать мультимастер-репликацию, как добиться волшебства?». Много профессиональных волшебников будут рассказывать о том, как это сейчас хорошо и здорово реализовано в PostgreSQL — ребята из Postgres Professional в рамках этого доклада расскажут про кластер все. Название соответствующее — «Сага» — что-то эпическое и монументальное. Сейчас ребята из Postgres Professional начнут свою сагу, и это будет интересно и хорошо.

Итак, Олег Бартунов, Александр Коротков и Федор Сигаев.
Total votes 51: ↑49 and ↓2 +47
Comments 9

Горизонтальное масштабирование. Что, зачем, когда и как?

Reading time 17 min
Views 117K
Александр Макаров

Александр Макаров ( SamDark )


Здравствуйте! Я Александр Макаров, и вы можете меня знать по фреймворку «Yii» — я один из его разработчиков. У меня также есть full-time работа — и это уже не стартап — Stay.com, который занимается путешествиями.

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

Что такое масштабирование, вообще? Это возможность увеличить производительность проекта за минимальное время путем добавления ресурсов.

Обычно масштабирование подразумевает не переписывание кода, а либо добавление серверов, либо наращивание ресурсов существующего. По этому типу выделяют вертикальное и горизонтальное масштабирование.
Читать дальше →
Total votes 52: ↑47 and ↓5 +42
Comments 17

Архитектура ИТ решений. Часть 1. Архитектура предприятия

Reading time 12 min
Views 162K

I. Вступление

Архитектура распределяет массы и объемы.
Вдохновение превращает инертный камень в драму.
Ле Корбюзье.
Недавно столкнулся со следующей ситуацией, одна крупная ИТ компания подбирала для себя архитектора, с целью доработки компьютерной платформы «собственного исполнения». Такая работа, естественно, требовала привлечения специалиста высокой квалификации. А как это сделать дешево и сердито, чтобы призванный варяг был «и чтец и жнец и на дуде игрец»? Решили без всяких излишеств разработчика ПО, поименовать архитектором, и заполучить помимо кодировщика, еще и профессионала, способного разобраться с чужими решениями, до проектировать их на свое усмотрение, принимать самостоятельные решения и т.п…

Когда стали выяснять, а как же в организации вообще обстоит дело с архитектурой, обозначились следующие тенденции. Есть ряд высококвалифицированных разработчиков, позиционируемых как архитекторы. Помимо непосредственно создания кода, они выполняют достаточно низкоуровневое проектирование различных технологических систем и задают вектор и горизонт их развития. Решения представлены ими в основном в виде текстовых описаний, разбавленных небольшим количеством схем, в основном производных от диаграмм компонентов. Каждый из архитекторов представляется уникальным и эксклюзивным носителем знаний, а по сути — является узким местом в процессе производства программных продуктов. Ведь на практике без его постоянных уточняющих консультаций, воспользоваться результатом евонной деятельности практически невозможно. Полная, логически выстроенная, структурированная картинка сложного решения есть лишь в его голове.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 7

Information

Rating
Does not participate
Registered
Activity

Specialization

System Administration, DevOps
Junior
Linux
Docker
Kubernetes
Git
Python
Bash
Prometheus
Grafana