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

Пользователь

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

Сколько всего серверов Google Global Cache в России?

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

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

Ответ в следующем абзаце
Всего голосов 41: ↑41 и ↓0+53
Комментарии151

Функциональное программирование на Groovy

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

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

В этой статье мы разберём, как реализовано функциональное программирование в Groovy.

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

Фильтры Ansible: превращаем сложное в простое

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

Используя Ansible в качестве инструмента автоматизации, часть приходится сталкиваться с задачей обработки и фильтрации структурированных данных. Как правило, это набор фактов, полученных с управляемых серверов, или ответ на запрос к внешним API, которые возвращают данные в виде стандартного json. Многие неопытные инженеры, используя Ansible в таких случаях, начинают прибегать к помощи привычных консольных команд и начинают городить то, что среди специалистов получило название bashsible. В общем, вспоминается известный мем:

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

Переизобретаем файловую систему: (Open)ZFS

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


Хранение данных — это всегда боль, у которой может быть больше 50 оттенков: железо, кэш, гарантии, производительность, скорость восстановления при проблемах, удобство и прочее. Как решить большинство из них, при этом получив что-то легко обслуживаемое, да ещё бесплатно? Сегодня поговорим про файловые системы на примере не совсем дефолтной OpenZFS.
Читать дальше →
Всего голосов 50: ↑49 и ↓1+60
Комментарии80

Запуск Линукс на TV-боксе на чипе RK3528

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

Мне удалось запустить Armbian сборку Ubuntu на TV-боксе с новым чипсетом RK3528. Используя конфиги для Hinlink H28K, первого поддерживаемого в Armbian устройства на этом чипе.

Это продолжение статьи, где я описал несколько способов достать Device Tree файлы из Андроид установленного на TV-боксе. Нужно для запуска на конкретном устройстве, даже для одной и той же модели - компоненты устройства могут отличаться, эти детали есть в Device Tree. Эта инструкция рассказывает как собрать и запустить Armbian используя полученный Device Tree файл. Написано для пользователей Линукс, средней сложности - почти всё подробно описано по шагам.

Инструкция для запуска в том числе с USB накопителя, что по умолчанию отключено в загрузчике U-Boot.

Читать далее
Всего голосов 21: ↑20 и ↓1+25
Комментарии28

Превращаем TV-box в мини-компьютер: установка Linux Armbian на примере X96 Max+ 100W

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

Одноплатные компьютеры своим появлением взяли на себя огромное количество задач и с каждым днём решают всё больше наших проблем. Но многие окружающие нас бытовые устройства являются одноплатными компьютерами с практически с идентичной многим привычным SBC (single board computer) начинкой и телевизионные приставки классический тому пример.

Когда-то я приобрел ТВ приставку X96 Max Plus 100W на Android чтобы потестить ее вдоль и поперек и пришел к тому что классическое ее применение для просмотра мультиков и Android игр мне не интересно.

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

Гайд в 2 шага по созданию нейро-продавца машин на AVITO на базе LLM моделей

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

Тема нейро-сотрудников на базе LLM моделей уровня ChatGPT 3.5 и выше набирает обороты. Я уже постоянно слышу термины типа нейро-продавец, нейро-психолог, нейро-консультант и подобные.

Давайте попробуем разобраться как это устроено внутри и собрать для примера нейро-продавца автомобилей, выложенных на AVITO.

Механика сотрудника такая: мы берем ссылку на любое объявление о продаже машины в AVITO и наш нейро-продавец должен отвечать как бы "подсматривая" на эту страницу и убеждать потенциального покупателя купить автомобиль.

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

Почти всё о Carbonio MTA

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

Carbonio MTA (Mail Transfer agent) - это ключевой узел инфраструктуры Carbonio, обеспечивающий работу его главной функции - отправки и получения электронной почты. В сердце Carbonio MTA лежит Postfix, который в связке с Amavis, ClamAV и SpamAssassin обеспечивает надежную и безопасную работу с потоками электронной почты, защищая почтовые ящики пользователей от спама и зараженных вирусами писем. В этой статье мы расскажем о том, как грамотно настроить Carbonio MTA и как администратор может взаимодействовать с ним.

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

Как начать тестировать Ansible, отрефакторить проект за год и не слететь с катушек

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


Это расшифровка выступления на DevOps-40 2020-03-18:


Начиная со второго коммита любой код становится legacy, т.к. изначальные задумки начинают расходиться с суровой реальностью. Это не хорошо и не плохо, это данность с которой сложно спорить и необходимо уживаться. Частью этого процесса является рефакторинг. Рефакторинг Infrastructure as Code. Да начнется история как отрефакторить Ansible за год и не слететь с катушек.

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

Создаем свой загрузочный диск Linux

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

В статье описывается способ, как создать собственный загрузочный диск Linux (оптический диск или флешку), добавить в него только нужные программы и убрать все лишнее. Полученный образ в экспериментах занял менее 25 Мб. Он позволяет быстро загружаться, работать в текстовом режиме, создавать, редактировать, удалять файлы на разных файловых системах, имеет поддержку русского языка. За основу взят Debian.

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

Как мы запускали сервис по продаже подписок на Spotify, Netflix, PlayStation

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

Меня зовут Рома Васильев, я дата-инженер. В марте 2022 года мы с коллегой создали стартап — сервис-посредник, через который в России можно купить подписки на Netflix, Spotify, PlayStation, Steam и другие площадки, которые ушли с рынка. 

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

Читать далее
Всего голосов 33: ↑22 и ↓11+16
Комментарии51

Резервное копирование репозиториев с github, gitlab

Время на прочтение1 мин
Количество просмотров9.4K
main

Резервное копирование репозиториев с git серверов на основе github и gitlab по токену. Скрипт скачивает все Ваши репозитории доступные по токену и архивирует их. Давно хотел написать такой инструмент т.к. использую и те и те сервера в работе и личных целях. У меня полно старых проектов которые хранятся только на git, если с ним что-то случится, то их уже не будет.

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

Запускаем Vagrant на MacOS Apple M1/M2

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

Очень часто в разработке возникает необходимость поднять локальное окружение для отладки каких-либо рабочих моментов. В своей работе я постоянно пользуюсь Vagrant для тестирования инфраструктурного кода, например ansible-ролей.

Vagrant остаётся одной из самых популярных утилит для подобных задач, имеет гибкий синтаксис и поддержку базовых алгоритмических структур – можно поднимать N и K машин в цикле, используя заранее вводимые переменные, а потом еще и ansible-inventory генерировать на выходе, разбивая машины по группам.

Долгое время я оставался пользователем MacBook на процессоре Intel, но больше так продолжаться не могло – пришлось сменить компьютер, хотя я и знал о некоторых особенностях работы М1 с виртуальными машинами.

В этой статье я расскажу, как настроить и запустить Vagrant на процессорах Apple M1/M2 и вернуться в привычный рабочий режим.

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

Паттерны отказоустойчивости приложений в Kubernetes

Время на прочтение22 мин
Количество просмотров15K
Балансировщики падают, контроллеры зависают, а дата-центры атакуют экскаваторы. Это нормальная история. Мы живём в мире, где нет ничего надёжного на 100 %, а любой бит в планке оперативной памяти может внезапно перещёлкнуться из-за пролетевшей космической частицы.

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

По роду деятельности мне постоянно приходится сталкиваться с проблемами отказоустойчивости, так как я руководитель разработки в отделе Газпромбанка, обеспечивающем эксплуатацию ML и Big Data-решений. Поэтому сегодня я хочу рассказать о нескольких паттернах отказоустойчивости и типовых решениях при эксплуатации приложения в кластере Kubernetes. Разберём основные паттерны, ну и, конечно, рассмотрим варианты, при которых неправильные настройки прострелят вначале одну ногу, а потом — другую, потому что она слишком медленно стала шагать.


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

КриптоПро в Linux контейнере для использования КЭП от ФНС

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

С Нового Года в России от Индивидуальных Предпринимателей (ИП) и директоров Обществ с Ограниченной Ответственностью (ООО) требуют использовать Квалифицированную Электронную Подпись (КЭП) выданную Федеральной Налоговой Службой (ФНС).

В этой статье речь пойдёт о том, как работать с КЭП от ФНС под Linux без головной боли.

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

Обзор топ-5 полезных утилит для Docker

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

Проект Docker, запущенный в 2013 году, стал одним из самых популярных инструментов в области контейнеризации. Спустя почти 10 лет Docker активно развивается, однако, не только сама компания Docker Inc привносит улучшения в свой продукт – обычные пользователи тоже вносят свой вклад, создавая различные инструменты, которые совершенствуют взаимодействие с системой Docker.

В статье мы рассмотрим топ-5 полезных утилит, которые упростят работу с Docker.

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

Практическое руководство по реализации Observability в DevOps

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

В ходе этой статьи мы развернём следующий стек инструментов Observability (наблюдаемости) Grafana:


Приступим!
Читать дальше →
Всего голосов 33: ↑32 и ↓1+47
Комментарии4

Укрощаем одноглазого змея. Разбираемся с WireGuard и делаем свой умный VPN

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

Забавная ситуация: сайтов и сервисов, доступных только через VPN, все больше, но при этом многие российские компании закрывают доступ из-за границы. В результате приходится целыми днями теребить ползунки «вкл-выкл», что утомительно. Я расскажу, как с помощью магии маршрутов и WireGuard, решить эту проблему и сделать «умный» VPN, который не надо отключать.


Если ты пользуешься VPN, то и сам наверняка сталкиваешься с блокировками зарубежного трафика. К примеру, могут не открываться pochta.ru, leroymerlin.ru, rt.ru, avito.ru.


Получается мем.



Каждый с этим борется как может. Например, на устройствах Apple родными средствами можно настроить автоматизацию, которая будет запускать VPN, когда открываешь определенные приложения (например, Twitter), а когда выходишь из них — выключать обратно. Но это костыль, а хочется все сделать красиво, да еще и прокачать навык работы с сетью.


Поэтому мы сейчас попробуем «включать VPN чуть-чуть».

Читать дальше →
Всего голосов 43: ↑42 и ↓1+51
Комментарии73

12 схем архитектуры английской грамматики

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

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

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

Читать далее
Всего голосов 32: ↑24 и ↓8+20
Комментарии86

Логирование в Kubernetes: как собирать, хранить, парсить и обрабатывать логи

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

Разберём основы логирования в Docker и Kubernetes, а затем рассмотрим два инструмента, которые можно смело использовать на продакшене: Grafana Loki и стек EFK (Elasticsearch + Fluent Bit + Kibana).


Материал статьи — выжимка из открытой лекции школы «Слёрм». Если есть желание и тем более производственная необходимость можно пройти полное обучение — записывайтесь на курс по Мониторингу и логированию инфраструктуры в Kubernetes.


Читать дальше →
Всего голосов 22: ↑19 и ↓3+21
Комментарии13
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность