Как стать автором
Обновить

Администрирование

Сначала показывать
Порог рейтинга
Уровень сложности

Алертинг состояния выполения DAG`ов Apache Airflow в Telegram за 1 минуту

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

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

Представляю небольшое решение, которое позволит отправить сообщение в Telegram с информацией о состоянии DAG`а Apache Airflow

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

Новости

DIY: Ваше собственное облако на базе Kubernetes (часть 1)

Время на прочтение 8 мин
Количество просмотров 689

Мы очень любим Kubernetes и мечтаем чтобы все современные технологии поскорее начали использовать его замечательные паттерны.

А вы когда-нибудь задумывались о том чтобы построить своё собственное облако? Могу поспорить что да. Но можно ли это сделать используя лишь современные технологии и подходы, не покидая уютной экосистемы Kubernetes? Нам по опыту разработки Cozystack пришлось с ним как следует разобраться.

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

Зачем так всё усложнять? - ведь на данный момент Kubernetes уже имеет всё необходимое для запуска Kubernetes кластеров.

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

Отладка Spring-микросервиса в контейнере

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

Когда речь заходит о микросервисах, на ум обычно приходят контейнеры. Разумеется, встречаются микросервисные архитектуры, в которых компоненты запускаются без контейнеров. На мой взгляд, сопровождение таких систем получается намного сложнее, так как требует более глубоких знаний в администрировании Linux, скриптинге и различных инструментах автоматизации. В то же время, порог вхождения (дисклеймер: подразумевается именно минимально необходимый набор знаний для начала работы с инструментом) для вещей вроде docker-compose существенно ниже, и работать с ними могут даже начинающие разработчики.

Иногда для оперативной локализации ошибки проще всего воспользоваться отладчиком. Я думаю, каждый разработчик так или иначе применял подход DDD (DDD - шут. Debug Driven Development) при локальной разработке или в поисках бага на удаленном стенде. Но что делать, если удаленное приложение в контейнере? В этой заметке я бы хотел поделиться Dockerfile-ом, к которому пришел в свое время, решая проблему отладки контейнеризированного приложения.

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

Интеллектуальные СКС в ЦОД

Уровень сложности Сложный
Время на прочтение 10 мин
Количество просмотров 469

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

Читать далее
Рейтинг 0
Комментарии 0

Истории

Настройка двухфакторной аутентификации по VPN. Континент 4 — MultiFactor

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

Возможности злоумышленников растут и украсть пароль не предоставляет сложности.

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

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

И снова лазерные диски: китайцы представили болванку с емкостью в 200 ТБ. Что это за технология?

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

Подавляющее большинство современных ноутбуков лишены приводов для лазерных дисков. Не устанавливают их и в десктопные ПК, за некоторым исключением. Тем не менее, сам формат не умер, а продолжает развиваться. Например, китайцы представили современную версию лазерного диска с емкостью сразу в 200 ТБ. Подробности об этом носителе — под катом.
Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Комментарии 54

Xv6: учебная Unix-подобная ОС. Глава 5. Прерывания и драйверы устройств

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

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

Устройство прерывает процессор, когда требует внимания. Обработчик прерывания опознает устройство и вызовет процедуру драйвера. В xv6 это делает процедура devintr.

Файл kernel/console.c содержит код драйвера терминала. Драйвер обрабатывает символы из последовательного порта UART на RISC-V, которые человек вводит на клавиатуре.

QEMU эмулирует микросхему 16550 UART и подключает клавиатуру и экран к UART. На реальном компьютере 16550 управляет портом RS232, который работает с терминалом или другим компьютером.

Драйвер накапливает символы в кольцевом буфере cons.buf. Индекс cons.r указывает на первый символ, который прочтет функция consoleread. Буфер хранит строки символов, а индекс cons.w указывает на начало последней строки, которую еще вводит человек. Индекс cons.e указывает позицию курсора в последней строке для ввода следующего символа.

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

ActivityPub в Awakari

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

Сегодня всё больше и больше сервисов объявляют о своей поддержке ActivityPub, в том числе даже такие, как Tumblr или Threads. И это ожидаемо, так как ActivityPub позволяет сохранять контроль над собственными данными, в отличие от закрытых сервисов Meta. Кроме того, это позволяет обмениваться данными более независимо (Fediverse). Применение ActivityPub не ограничивается социальными сетями и блогами. Есть сервисы для хостинга изображений, видео, музыки и многое другое.

Если рассматривать все эти активности как события, то это позволит сервису Awakari открыть целое новое измерение в Fediverse. Используя Awakari можно отслеживать интересные события из неограниченного множества источников.

Читать далее
Рейтинг 0
Комментарии 4

4 причины использовать облачные вычисления

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

По оценкам Gartner, к 2025 году более 95 % новых нагрузок будут развернуты на облачных платформах, а 85 % предприятий не смогут полностью реализовать цифровые стратегии без соответствующих архитектуры и технологий.

Сейчас внедрение облачных технологий стало распространенным явлением и имеет важное значение для достижения скорости, отказоустойчивости и гибкости, необходимых предприятиям для поддержания конкурентоспособности. 40% крупных промышленных компаний России уже применяют облака согласно исследованию Yandex Cloud и «УльтимаТек».

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

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

Танцы с парсингом, kubernetes и миграция в Yandex Cloud: как мы делали «Контрагентио»

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

Речь пойдёт о сервисе, который изначально мы задумали как внутрикорпоративную систему проверки контрагентов, а затем разработали как коммерческий продукт. Коротко расскажем о том, что делает система, с какими проблемами столкнулись при разработке и как их решали, как запускали, разворачивали, и немного коснемся того,  что “под капотом” у DevOps. Полагаю, что пост позволит оценить усилия команды при создании сервиса, подсветит использование некоторых технических решений, которые нам показались оптимальными, покажет типичные проблемы систем с парсингом из множества разнотипных источников, и будет полезен коллегам при разработке других продуктов. Я честно постараюсь минимизировать рекламную составляющую до короткого дисклеймера и избавить пост от маркетинг булшит. 

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

Как связать натуральные ключи с суррогатным в Anchor Modeling

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

Хранить значения натуральных ключей необходимо, потому что они связывают хранимые данные с реальным миром (внешними классификаторами, реестрами и т.п.), и с ними работают бизнес-пользователи: в выпадающих списках, отчетах и дашбордах. Но в методологии Anchor Modeling для связи таблиц используются только суррогатные ключи, не подверженные изменениям, и это правильно. Поэтому нужно хранить связь натуральных ключей с суррогатным ключом, предпочтительно формата UUIDv7. Как же это сделать в методологии Anchor Modeling?

Получить ответ
Всего голосов 4: ↑1 и ↓3 -2
Комментарии 0

Экономим на Kubernetes с помощью OpenCost — и другие прелести FinOps

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

Вне зависимости от того, кто вы: небольшой стартап или развитая компания — задача управления затратами особенно важна. Модное понятие FinOps, оно же Financial Operations или Cloud Financial Operations, помогает организациям наиболее эффективно и экономически выгодно использовать облачные ресурсы.

Но как FinOps работает на практике? В этой статье рассмотрим один из способов применения этого подхода в управлении кластерами. Познакомимся с инструментом OpenCost и обсудим его работу в Kubernetes. Подробности под катом!
Читать дальше →
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 0

Как нейросети помогли нам сократить нагрузку на операторов контакт-центра и сэкономить 396 человеко-часов

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

Привет! Меня зовут Дима Офицеров, я продакт-менеджер клиентского сервиса ЮMoney. Моя команда разрабатывает собственное ПО для обслуживания пользователей, обучает искусственный интеллект в виде Манибота, работает над автоматизацией и оптимизацией процессов.

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

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

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Домашний сервер GameDev разработчика. Где найти железо?

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

Всем привет, меня зовут Иван, я программист C++ в области GameDev'а и в момент написания статьи специализируюсь на Unreal Engine.

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

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

Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL. Часть. 3

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

Привет, Хабр! Это снова мы — Павел Конотопов и Михаил Жилин, сотрудники компании Postgres Professional. Напомню, что Павел занимается архитектурой построения отказоустойчивых кластеров, а я анализом производительности СУБД. У каждого из нас за плечами более десяти лет опыта в своей области.

Во второй части статьи «Мифы и реалии «Мультимастера» в архитектуре СУБД PostgreSQL» мы говорили о гарантии согласованности данных и разрешение конфликтов. Разобрали как выявлять и разрешать конфликты, используя разные способы. Теперь пришла пора одной из самых важных характеристик хранения данных — надёжности.

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

Как действовали хакеры на ноябрьском Standoff 12. Разбираем цепочку атак на космолифт и не только

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

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

Атакам подверглись все представленные на киберполигоне отрасли. Напомним, на нем воссозданы технологические и бизнес-процессы реальных компаний, обеспечивающих жизнедеятельность целых стран: нефтеперерабатывающий завод, банки, МФЦ и многое другое. В минувшем сезоне кибербитвы в Государстве F появилась новая компания — CosmoLink Labs. По легенде, она была создана в качестве инновационного центра для разработки и проведения космических исследований. Компания построила космолифт до орбитальной станции, владеет центром управления полетами и центром радиосвязи, запускает спутники.

Появление нового сегмента привлекло внимание мировых киберпреступников, которые решили использовать эту уникальную локацию в своих целях. В этой статье мы — Айнур Мухарлямов и Сергей Болдырев, специалисты группы обнаружения атак на конечных устройствах — разберем цепочку атак одной команды на космическую отрасль с помощью продуктов Positive Technologies. Давайте вместе погрузимся в мир кибербезопасности и узнаем, какие вызовы и возможности нас ждут в будущем.

Подробнее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 1

Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами

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

При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной доставки (Continuous Integration & Continuous Delivery — CI/CD). Для разных систем управления репозиториями исходного кода существуют свои способы настройки CI/CD.

В этой статье мы рассмотрим, как использовать GitLab для организации автоматической сборки и деплоя приложения в кластер Kubernetes. Сам кластер работает под управлением Deckhouse Kubernetes Platform, а автоматизировать процесс будем с помощью werf — Open Source CLI-утилиты, организующей полный цикл доставки приложения в Kubernetes и использующей Git как единый источник истины для состояния приложения, развёрнутого в кластере.

Читать далее
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 7

Извлечение всех файлов из папок рекурсивно: мощь одной строки кода

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

Как магией: Мгновенное извлечение файлов из глубин папок одной волшебной строкой.

Часто перед нами стоит задача, казалось бы, простая и одновременно трудоёмкая: вытащить файлы конкретного формата из многочисленных папок и подпапок. Задача упрощается, если знать, куда именно залезть. Но что делать, когда папок слишком много, а времени на изыскания – как на марсианский песок? Вариантов масса: от ввода бесконечного ряда команд до попыток освоения нового языка программирования на лету. Однако, к счастью, есть более элегантное решение. И мы склоняемся перед могуществом командной строки – инструмента, несущего в себе силу простоты и эффективности.

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

Читать далее
Всего голосов 17: ↑9 и ↓8 +1
Комментарии 21

Логирование: понятие, механизмы и уровни

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

Что такое логи?

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

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

Как расширить дисковое пространство на VPS за счет дисков на сервере в домашней сети

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

В настоящее время очень широкое распространение получили решения, основанные на self-hosting'e. При этом, под этим термином понимается идеология и практика, предусматривающая размещение веб-сервисов на собственных серверах, например домашних, вместо использования стороннего хостинга, как коммерческого, так и бесплатного.

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

Но недостатки такого подхода тоже есть, и часто основной недостаток в том, что для предоставления доступа к вашим сетевым ресурсам вы должны обеспечить ряд условий: работающий сервер, статический IP, правильная настройка NAT в части маршрутизации пакетов и обеспечения безопасности. И если с первым вопросом более-менее ситуация решаемая, то остальные вопросы подчас становятся нерешаемыми в силу ряда причин, начиная от особенностей провайдеров, заканчивая тем сетевым железом, которое есть в распоряжении пользователя. Хорошо, если это будет какое то решение, основанное на RouterOS или OpenWRT, которое еще надо уметь настроить, что подчас совсем не просто. Но это может быть и какой то роутер начального уровня (или, что еще хуже провайдерское оборудование), которое крайне ограничено в своем функционале, на котором настроен свой NAT, которое может находится за NAT провайдера с «серым» IP. Поэтому популярные решения для self-hosted ресурсов вроде NextCloud становятся не такими уж и популярными как бы того хотелось.

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