Как стать автором
Обновить
17
0.1
Беляев Ростислав @elve

Эволюционировавший в SRE/DevOps

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

Telegram Desktop и Compose Multiplatform

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров4.5K

Всем привет! В своей прошлой статье я рассказывал как можно запустить Telegram клиент в качестве backend‑сервиса. В описываемой там библиотеке с тех пор были внесены некоторые оптимизации, и в целом, я остался доволен возможностями, которые получил. После чего возникло желание добавить визуальную часть к имеющемуся бэкенду и заодно изучить что‑то новое для себя. Выбор пал на фреймворк Compose Multiplatform. Давайте сделаем десктопную версию Telegram!

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

Создание своего UEFI приложения

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров39K

Привет, Хабр! Мне 16 лет, я студент, учусь на первом курсе колледжа на программиста. Начал увлекаться низкоуровневым программированием на Ассемблере и C/C++

Я заметил что на Хабре есть множество статей о написании своих простых "загрузчиков" для BIOS-MBR, которые выводят на экран "Hello World!". И при этом практически нет ни одной статьи о создании того же самого, но только для UEFI, хотя будущее именно за ним, ведь BIOS уже давно устарел! Это я и хочу исправить в этой статье.

Читать далее
Всего голосов 86: ↑85 и ↓1+84
Комментарии80

IAX2 one love (межASteriskные транки)

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров1.5K

Это короткое продолжение серии про Asterisk.
Пердыдущие части Часть 1, Часть 2, Часть 3

Я расскажу как и почему я ограниченно применяю IAX2 в контексте предыдущих записей.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии15

Алгоритмы балансировки нагрузок

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров31K

Рано или поздно веб-приложения перерастают среду одного сервера. Компаниям требуется увеличить или их доступность, или масштабируемость, или и то, и другое. Чтобы сделать это, они развёртывают своё приложение на нескольких серверах и ставят перед ним балансировщик нагрузок для распределения входящих запросов. Чтобы справляться с нагрузками, большим компаниям могут потребоваться тысячи серверов, на которых запущено веб-приложение.

В этом посте мы рассмотрим способы, которыми один балансировщик нагрузок может распределять HTTP-запросы на множество серверов. Мы начнём снизу и проделаем весь путь вверх до современных алгоритмов балансировки нагрузок.
Читать дальше →
Всего голосов 107: ↑106 и ↓1+105
Комментарии16

История о жрущем память API-сервере Kubernetes

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров4.9K

Несколько месяцев назад коллеги, работающие с одним из кластеров Kubernetes в dev-окружении, обратились с проблемой недоступности API-сервера Kubernetes. Dev-среды обычно не подключены к дежурной смене, и решением проблем занимаются владельцы или, если проблемы нестандартные, обращаются к профильным специалистам. В ходе диагностики оказалось, что kube-api стал потреблять значительно больше памяти. Это приводило к возникновению ошибки с OOM.

Давайте будем честными — если бы это произошло в production-окружении, мы, скорее всего, закинули бы больше памяти и успешно бы забыли про проблему. Но dev-стенд не имеет жёстких SLA с финансовой ответственностью, и это дало нам возможность и время разобраться с прожорливым kube-api.

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

Читать далее
Всего голосов 27: ↑27 и ↓0+27
Комментарии9

Как работают объектные хранилища: OpenStack Swift

Уровень сложностиСредний
Время на прочтение18 мин
Количество просмотров4.6K

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

Раз меньше времени работе, то больше — знаниям. Меня зовут Рома, и я работаю в объектном хранилище — самой высоконагруженной услуге Selectel. Здесь мы непрерывно трудимся над улучшением и развитием архитектуры, удовлетворяя спрос на пропускную способность, функциональность и надежность.

В первой части я поделился сложностями, которые возникают при попытке построить распределенное и отказоустойчивое хранилище для объектов. Та система, которую мы позволили себе нафантазировать, очень похожа на OpenStack Swift. С него начиналась история нашего продукта, так что мы можем не только разобрать принцип его работы «на пальцах», но и погрузиться в скрытые особенности OpenSource, которые проявляются лишь в больших масштабах.
Читать дальше →
Всего голосов 42: ↑42 и ↓0+42
Комментарии6

STM32 Часть 1. Как поморгать светодиодиком

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров21K

Приветствую!

Данная статья открывает цикл статей о программировании микроконтроллеров STM32 для новичков.

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

Читать далее
Всего голосов 25: ↑16 и ↓9+7
Комментарии39

LGT8F328P: импортозамещение по-китайски (окончание)

Время на прочтение13 мин
Количество просмотров13K
В первой части рассказа о контроллере LGT8F328P китайской фирмы Logic Green рассказывалось об этом контроллере, как замене классического Arduino, а также об использовании в Arduino-среде некоторых его расширенных возможностей. В этой части пойдет речь о программировании LGT8F328P на самом низком уровне: на AVR-ассемблере. Это лучше позволит понять его устройство, отличия от AVR и тонкости программирования тех или иных составляющих.


Для написания и загрузки ассемблерных программ, как в AVR, так и в LGT8F328P необходимо обзавестись некоторыми специальными инструментами. Здесь не очень важно, какую именно среду использовать (любую из привычных вам, если вы справитесь с интеграцией в нее LGT8F328P), лишь бы она умела производить hex-файлы.
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии10

OSPFv3 для P2P связности VM по IPv6

Время на прочтение4 мин
Количество просмотров2.1K

OSPFv3 - это версия OSPF для IPv6. Его основные функции по-прежнему аналогичны функциям OSPFv2, используемым в сетях IPv4

# enable ospfv3
Всего голосов 5: ↑5 и ↓0+5
Комментарии2

Сертификаты K8S или как распутать вермишель Часть 2

Время на прочтение6 мин
Количество просмотров4.2K

Всем привет. Меня зовут Добрый Кот Telegram.

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей по сертификатам k8s.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Читаем ключевой контейнер КриптоПро

Время на прочтение2 мин
Количество просмотров12K

Речь пойдет о PFX, который можно экспортировать из КриптоПро, как бы все хорошо, но данный контейнер нельзя использовать в OpenSSL и в других криптографических средствах из-за некой PBE с OID 1.2.840.113549.1.12.1.80.

Читать далее
Всего голосов 31: ↑31 и ↓0+31
Комментарии16

Установка универсальной прошивки OpenIPC на примере IP камеры с процессором HI3516DV100 и сенсором OV4689

Время на прочтение18 мин
Количество просмотров65K

Наш мир кишит камерами видеонаблюдения, и большинство из нас сами добровольно окружают себя этими устройствами. Камерами, которые имеют как случайные дыры в безопасности, так и намеренно внедренные компоненты которые отстукивают своему хозяину. Одни производители стараются по максимуму предвидеть и решить проблемы, другие же делают вид, что и проблем особо нет, если камера показывает изображение. Но если начать приглядываться, то лишь требование ActiveX и Internet Explorer для пользования камерой в XXI веке это нечто из пучин ада.

Решают проблемы производители каждый по своему. Как вариант, через облако, через своё приложение Android с приватными протоколами. Но через несколько лет после продажи облачной камеры, бесплатное облако вполне может стать платным, приложение обрастает рекламой до безобразия. А если проект производителя не зашел, то прописанные в ней сервера отключаются и ваша камера, возможно даже с отличным оборудованием внутри, становится бесполезным кирпичём, потому как способов использования больше нет.

В случае с зоопарком рутеров, ворох проблем заставил энтузиастов собраться с силами и создать открытую платформу OpenWRT на базе Linux. И ради тех, кто ждет решения для камер, сейчас кипит работа над аналогичным открытым проектом OpenIPC - универсальной встраиваемой платформы на базе Linux для IP камер. Проделан колоссальный труд, и есть уже ряд камер, на которые можно установить новую прошивку, получив базовый функционал.

Дальше рассказываю на какие камеры какими способами и зачем можно установить систему OpenIPC на примерах.

Читать далее
Всего голосов 42: ↑42 и ↓0+42
Комментарии14

Насколько хорошо у вас настроен OSPF/IS-IS или помогатор для сетевых инженеров

Время на прочтение12 мин
Количество просмотров9.6K

Коллеги-сетевики, привет. К написанию данной статьи меня сподвигли задачи, с которыми приходилось сталкиваться во время работы с OSPF/IS-IS и тот набор решений, к которому я в конечном итоге пришел. Речь идет о насущном вопросе сетевых инженеров, когда приходится применять настройки на живой сети (пусть и с программируемым откатом на крайний случай) без возможности посмотреть как это отразится на всей сети в целом. Если отдельные команды и сценарии еще можно проверить в лабе, то получить полную реплику сети практически невозможно. В связи с этим я задался вопросом о наличии инструмента, который позволял бы строить слепок сети и рассчитывать её реакцию на ранее примененные настройки. Об этом сегодняшний туториал.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии7

Asterisk. Доставка SIP Message после возврата абонента из off-line'а

Время на прочтение9 мин
Количество просмотров3K

В предыдущих статьях я описал как настроил и собрал GSM <> SIP систему на базе Asterisk. В этой статье расскажу как быть с входящими SMS, если получатель не в сети.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии7

Насколько реален самодельный 3D-принтер по металлу?

Время на прочтение10 мин
Количество просмотров22K

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

Не так давно я понял, что меня очень сильно тормозит в разработках — отсутствие доступного 3D-принтера по металлу, и я стал разбираться, насколько же сложно создать такой принтер самому?
Читать дальше →
Всего голосов 59: ↑57 и ↓2+55
Комментарии56

Сертификаты K8S или как распутать вермишель Часть 1

Время на прочтение5 мин
Количество просмотров8.6K

Всем привет. Меня зовут Добрый Кот Telegram.

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей по сертификатам k8s.

Хочу поделиться с вами некоторым мыслями на тему сертификатов в кубе.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

Autosupply или как автоматизировать цепочки поставок с помощью ML

Время на прочтение5 мин
Количество просмотров1.3K

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

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

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

Задача прогнозирования потребления

Есть очень похожая и более распространенная задача в розничной торговле: сколько каких товаров нужно поставить в магазин Х в момент времени У? Задача решается относительно просто: зная потребление товара во времени из чеков и запасы товара на складе, можно вычислить будущую поставку напрямую. Поставить нужно столько, сколько предположительно продадут, за минусом запаса.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии2

Разработка процессорного модуля на базе микросхемы 1892ВА018 СнК «СКИФ» и его первый запуск

Время на прочтение65 мин
Количество просмотров40K

Версия данной статьи для "off-line прочтения" в формате PDF доступна по адресу: ссылка на статью.

В первой половине 2021 года в РФ резко обострились дебаты на тему импортозамещения, инициированные рядом изменений внесенных ранее в декабре 2020г в постановление N719 относительно закупок вычислительной техники, и бурно обсуждаемых на различных площадках и IT-форумах, таких как Elbrus Tech Day, YADRO Лекторий, а так же у ряда популярных блогеров. Основной посыл нововведений состоял в том, что вся вычислительная техника, закупаемая за бюджетные средства, должна иметь в основе микропроцессор, разработанный или произведенный в России или имеющий статус такового. Насколько такое решение Правительства годное и исполнимое — тема отдельного разговора, которую я не хотел бы сейчас затрагивать. Так или иначе, мы, в нашей небольшой компании, пришли к выводу, что данное решение Правительства может приоткрыть пусть не окно, но хотя бы форточку возможностей для мелких разработчиков электроники, которым является наша компания. Имея за плечами опыт разработки изделий на основе импортных (в основном китайских) систем-на-кристалле, мы решили, что на рынке могут быть востребованы одноплатные ПК, аналогичные Raspberry Pi и выполненные на отечественном СнК, по возможности близкие по габаритам и pin-to-pin совместимые с «малиной», а также процессорные модули, устанавливаемые на несущую плату, позволяющие упростить разработку конечного изделия и вынести сложную топологию за его границы.

Читать далее
Всего голосов 163: ↑162 и ↓1+161
Комментарии94

Raspberry Pi PAN

Время на прочтение3 мин
Количество просмотров8.9K

Пикосеть Bluetooth-PAN (Personal Area Network)

Поднимаем сеть через bluetooth на Raspberry Pi с поддержкой systemd.

Моя дружба с Raspberry Pi многолетняя, и все годы я бесконечно экспериментировал. Неужели Raspberry Pi подталкивает к авантюризму? Кроме всего прочего, я страстный фотограф, вовсю использую «малинку» как беспроводный пульт дистанционного управления фотоаппаратом с помощью программы gphoto2.

В моей конфигурации миникомпьютер включает собственный веб-сервер для удаленного просмотра фотографий через wi-fi и работает в режиме точки доступа.

Но мне необходим еще один сетевой беспроводный интерфейс, и вот здесь начинается знакомство с пикосетью PAN (HOWTO-PAN).

Читать далее

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии5

Маленькие «малинки» в крупном дата-центре (часть 4 — автоустановка)

Время на прочтение7 мин
Количество просмотров5.7K

Это заключительная часть цикла статей, посвященного интеграции одноплатных компьютеров Raspberry Pi 4 в наши дата-центры. Мы рассмотрели, что происходит при загрузке «малинки» с момента включения до загрузки в операционную систему. Создали собственный мини-дистрибутив, который загружается по TFTP-протоколу и работает напрямую из памяти. Поговорили о хуках (hooks) Kea DHCP-сервера, разобрались, как они работают и что нужно для их создания.

Теперь соберем эти знания в цельную картину: зачем нам кастомная опция 224 и как управлять переключением режимов загрузки по сети и с локальной SD-карты.
Читать дальше →
Всего голосов 45: ↑45 и ↓0+45
Комментарии2
1
23 ...

Информация

В рейтинге
3 297-й
Откуда
Россия
Дата рождения
Зарегистрирован
Активность

Специализация

System Administration, DevOps
Lead
От 350 000 ₽
Ansible
CI/CD
Linux administration
DevOps
Network administration
System administration
Virtualization systems
IT consulting
OpenStack
Shell scripting