Обновить
63
0.2
Владимир Баранов@xsevenbeta

Администратор Informatica, ETL

Отправить сообщение

Руководство по Kubernetes, часть 2: создание кластера и работа с ним

Время на прочтение22 мин
Охват и читатели125K
В прошлый раз мы рассмотрели два подхода к работе с микросервисами. В частности, один из них подразумевает применение контейнеров Docker, в которых можно выполнять код микросервисов и вспомогательных программ. Сегодня же мы, используя уже имеющиеся у нас образы контейнеров, займёмся работой с Kubernetes.


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

Руководство по Kubernetes, часть 1: приложения, микросервисы и контейнеры

Время на прочтение16 мин
Охват и читатели199K
По нашей просьбе Хабр создал хаб Kubernetes и нам приятно разместить первую публикацию в нём. Подписывайтесь!

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


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

Репликация ClickHouse без костылей: ожидание и реальность

Время на прочтение8 мин
Охват и читатели32K


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

На момент написания статьи хранилищем и результатами его работы пользуются 16+ команд (11+ аналитиков и 2 data scientist, 70+ разработчиков, руководители и менеджерский состав).

Ежесуточно в хранилище поступает ~1,2 ТБ данных, пользователи и автоматика для построения отчётности генерируют ~35 000 запросов в сутки на выборки различной сложности. Подробнее про наше хранилище и то, какие задачи для бизнеса им решаем, можно почитать по ссылке.
Читать дальше →

Зубной камень айтишника

Время на прочтение12 мин
Охват и читатели39K
С тех пор как врачи наших клиник начали публиковаться на Хабре, мы узнали много новых слов и успели разгадать главную загадку «злобных» пациентов-айтишников, невероятно расстраивающую врачей. Ну и узнать чуть больше про характерные «зубы айтишника», про которые так красочно рассказывал мой коллега больше года назад.

Про зубы, очень коротко: множество проблем можно убрать тем, что вы разберётесь, что такое зубной камень, как он образуется и на что влияет. Ниже я расскажу подробнее, в чём дело, это потребует некоторых объяснений принципов образования налёта и камня.



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

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

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

Давайте разбираться, что происходит дальше. Почему основное количество камня на нижних шести зубах?
Читать дальше →

10 супер обидных ошибок авторов на Хабре

Время на прочтение10 мин
Охват и читатели35K

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

Читать далее

Gatling. Тестирование JDBC

Время на прочтение7 мин
Охват и читатели8K

Привет! Меня зовут Александра, я работаю в отделе тестирования производительности Тинькофф. Этот текст — часть цикла статей, посвященных тестированию производительности с помощью инструмента Gatling. В предыдущей статье мы с командой рассказали о работе Gatling с HTTP. Еще мы написали вводную статью, из которой можно узнать, что такое Gatling и как мы его используем. В этой статье мы поговорим о работе Gatling с протоколом JDBC.

Читать далее

Настройка cервера с помощью docker для простых проектов. Часть вторая: docker-compose

Время на прочтение19 мин
Охват и читатели107K

Настройка cервера с помощью docker для простых проектов. Инструкция для самых маленьких. Часть вторая: docker-compose.

Мы продолжаем цикл обучающих статей для самых маленьких наших читателей. В данном обучении мы бы хотели разобрать docker-compose. Данная статья рассчитана на начинающих системных администраторов. Если вы являетесь опытным администратором, можете смело пропускать данный материал. Она призвана объяснить простыми словами, что такое docker-compose. Не смотря на то, что тема уже достаточно подробно отражена в сети, мы решили подробно описать общие стандарты администрирования с нуля, поскольку регулярно получаем большое количество базовых вопросов от людей, так или иначе, связанных с нашей сферой. Целью статей не является показать как развернуть идеальное окружение, а лишь указать на нюансы в работе и защитить начинающих специалистов от базовых ошибок при настройке.

Читать далее

Настройка Linux для инженера-ПТО/инженера-сметчика

Время на прочтение22 мин
Охват и читатели15K
image

Несмотря на то что Linux уже минимум лет 10 как user-friendly операционная система для домохозяек, а для бородатых системных администраторов и того дольше, я не слышал о том что бы кто-либо пытался на базе операционной системы Linux обустроить рабочее место для инженера в строительстве, хотя, казалось бы, для этого есть все предпосылки: экономия на программном обеспечении и выдаваемых для работы персональных компьютеров. Учитывая тот факт, что на законодательном уровне принято решение о прекращении закупок импортного ПО для критической информационной инфраструктуры и набирающие обороты процессы импортозамещения, на мой взгляд, пришло время поговорить о том, как рядовой инженер, скажем инженер-сметчик/инженер-ПТО сможет сам или при помощи коллег Установить и настроить необходимый софт.
Читать дальше →

Куда уходит время? Боремся за миллисекунды в Kubernetes

Время на прочтение7 мин
Охват и читатели24K

Привет, Хабр! Меня зовут Вова, я разрабатываю observability-платформу в Ozon. Как-то раз в наш уголок на 42 этаже заглянули коллеги — и поделились наблюдением. Если открыть рядом графики времён запросов и ответов двух живущих в Kubernetes и общающихся между собой микросервисов, то иногда можно наблюдать большую разницу в высоких квантилях: клиент считает, что один ответ из сотни ему приходит за сто миллисекунд, сервер же говорит, что успевает ответить за десять.

Куда ушло время? Можно ли его вернуть? Под катом расскажу о том, с какими граблями может столкнуться микросервис, живущий в типичной инсталляции Kubernetes.

Читать далее

Домашняя масляная майнинг-ферма

Время на прочтение21 мин
Охват и читатели70K

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

Читать далее

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

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



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

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

Как умереть со своими зубами в 90 лет

Время на прочтение11 мин
Охват и читатели44K

КТ челюсти. Очень важная вещь для составления календаря планового лечения.

Вообще у человека, который задался таким вопросом, есть три способа:

  1. Идеальный. От рождения до смерти следить за зубами.
  2. Типовой. Обратить внимание на свои зубы в возрасте примерно 30–40 лет. Вылечить кариес, наладить правильную гигиену. Это когда не просто горизонтальными движениями щёткой по зубам. И зайти к ортодонту и ортопеду. Если вы достоверно точно знаете, что с опорным аппаратом зубов у вас всё ОК, то можете пропустить этот шаг.
  3. Сложный. Когда вам уже 60 лет и вставную челюсть не хочется. Это, конечно, уже не про экономию, а про съёмные протезы и профилактику пародонтита.

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

NiFi по красоте: HTTPS/LDAP/NiFi Registry/NiFi Cli + CI/CD

Время на прочтение21 мин
Охват и читатели18K

Давайте, я сразу объясню свою баянистость. Да, в интернетах полно мануалов. Да, полно пошаговых прохождений. Да, можете сказать, что все жевано пережевано. Но конкретно в моем случае, как это всегда и бывает, оказалась горстка "но":

Есть мануалы о том, как настроить связку NiFi и NiFi Registry со включенной аутентификацией и авторизацией. Но... используются самоподписанные серты.

Есть отдельные мануалы, как прикрутить коммерческий серт для NiFi; соответственно для NiFi Registry "кагбэ так же". Но взаимная аутентификация и авторизация будет происходить с использованием Two way SSL... а у нас же LDAP... и обеспечить потом связность сладкой парочки с использованием только внешнего каталога у вас на голой интуиции не получится.

Есть мануалы по связке с LDAP и для NiFi, и для NiFi Registry. Нооо... как и в предыдущем "но", возникают вопросы, как обойтись потом только LDAP'ом, потому что у нас же еще NiFi Cli, а он в LDAP не умеет.

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

Читать далее

Миллион одновременных соединений

Время на прочтение8 мин
Охват и читатели77K

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

Адрес TCP/IP поддерживает только 65000 подключений, поэтому придётся назначить этому серверу примерно 30000 IP-адресов.

Существует 65535 номеров TCP-портов, значит ли это, что к TCP-серверу может подключиться не более 65535 клиентов? Можно решить, что это накладывает строгое ограничение на количество клиентов, которые может поддерживать один компьютер/приложение.

Если есть ограничение на количество портов, которые может иметь одна машина, а сокет можно привязать только к неиспользуемому номеру порта, как с этим справляются серверы, имеющие чрезвычайно большое количество запросов (больше, чем максимальное количество портов)? Эта проблема решается распределением системы, то есть кучей серверов на множестве машин?

Поэтому я написал эту статью, чтобы развеять данный миф с трёх сторон:

  1. Мессенджер WhatsApp и веб-фреймворк Phoenix, построенный на основе Elixir, уже продемонстрировали миллионы подключений, прослушивающих один порт.
  2. Теоретические возможности на основе протокола TCP/IP.
  3. Простой эксперимент с Java, который может провести на своей машине любой, если его всё ещё не убедили мои слова.

Если вы не хотите изучать подробности, то перейдите в раздел «Итоги» в конце статьи.
Читать дальше →

Как мы ускорили выполнение запросов PostgreSQL в 100 раз

Время на прочтение10 мин
Охват и читатели56K

Существует великое множество статей об оптимизации PostgreSQL — эта «кроличья нора» весьма глубока. Когда несколько лет назад я начал разрабатывать бэкэнд аналитического сервиса, у меня уже был опыт работы с другими СУБД, такими как MySQL и SQL Server. Тем не менее, раньше мне не приходилось так фокусироваться на производительности. В прошлых проектах, над которыми я работал, либо не было жестких требований к времени обработки (DS/ML), либо не требовалось обрабатывать много строк одновременно (обыкновенные веб-приложения). Однако в этот раз мои запросы:

состояли из 3-10 JOIN-ов по коррелирующим запросам;

уielded от 10 до 1,000,000 строк;

должны были выполняться в течение времени, определенного UX-ом;

не могли быть hinted — пока Cloud SQL, управляемый PostgreSQL в Google Cloud, не стал поддерживать pg_hint_plan в конце 2021 года;

запрещали прямой доступ к серверному процессу, чтобы, например, хакнуть некоторые perf — потому что PostgreSQL был managed.

Получение целого миллиона строк в одном API endpoint сигнализирует о проблеме в алгоритме или архитектуре. Конечно, все можно переписать и перепроектировать, но за это нужно платить.

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

Читать далее

Комплект увольнения

Время на прочтение13 мин
Охват и читатели77K
  • Знание ООП и структуры данных;
  • опыт разработки на Java для Android.;
  • знание Android API, понимание архитектуры Android;
  • знание основ HTTP, XML, JSON;
  • опыт работы с системами контроля версий Git;
  • опыт работы с Android Studio, Gradle;
  • опыт работы с SQL базами данных;
  • знакомство с принципами Material Design;

Узнали? Конечно, узнали. Это — одно из стандартных резюме программиста.

Лично мне такое резюме напоминает одну песню, а точнее одну строку этой песни: «Жигули! Едет и уже хорошо!».

Еще напоминает рекламу тех же Жигулей, где наличие ABS, датчиков дождя и света и т.д. выдается за конкурентное преимущество. Ну и лозунг знаменитый: «Таким и должен быть автомобиль!».

А программист таким и должен быть? Если хочет быть, как жигули – массовым, дешевым и «как бы и не машиной программистом», то да.

Но мы не такие, поэтому будем формировать и формулировать свое конкурентное преимущество – комплект увольнения.



Комплект увольнения – то, что остается с вами, когда вы меняете место работы. Как пел Юрий Шевчук, «Это то, что останется после меня. Это то, что возьму я с собой».
Читать дальше →

Настройка сервера аутентификации посредством связки Kerberos+LDAP на базе ROSA Enterprise Linux Server

Время на прочтение11 мин
Охват и читатели46K
Введение
Продолжение серии туториалов. Предыдущие части:
Развёртывание DNS/DDNS и DHCP сервера на ROSA Enterpise Linux Server за несколько минут
Почтовый сервер на базе ROSA Server Enterpise Linux за несколько минут
Простой домен на базе ROSA Enterprise Linux Server и Samba 3 с поддержкой перемещаемых профилей

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

OTRS 4.0.10. Ставим на Ubuntu + AD + Kerberos + SSO (Часть первая)

Время на прочтение18 мин
Охват и читатели62K
Вииду того, что статья и так получилась слишком большая, а к тому же хочеться добавить к ней её пару нюансов разбиваю её на несколько частей, и дальнейшие дополнения буду публиковать как отдельные части.

Часть первая: подготовка системы
Часть вторая: установка и настройка OTRS
Часть третья: исправляем косяки прикручиваем плюшки

Вместо введения


Любая достаточно крупная организация рано или поздно сталкивается с необходимостью внедрения системы тикетов или helpdesk. И наша организация не исключение, в связи с чем руководством была поставлена задача выбрать и внедрить систему.

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

На самом деле проблема всех этих мануалов в том, что всё вроде бы так же как у тебя, но где-то чуть-чуть не та версия пакета, чуть чуть не такая структура AD и т. д. Вот из-за всех этих чуть чуть и не складывается цветок каменный. Одним словом методом проб и ошибок, чтений документации и анализа мануалов был выработан свой, вполне рабочий метод, который я и хотел бы изложить.
Для тех кому интересно, добро пожаловать под кат

Информация

В рейтинге
2 890-й
Работает в
Дата рождения
Зарегистрирован
Активность