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

DevOps

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

Большая перемена: как за 3 года мы пересмотрели управление проектами во «Фланте»

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

Всем привет. Мы давно не писали на тему менеджмента команд и проектов. Начнем с краткой вводной. Помимо продуктовой разработки, которой мы занялись около 5 лет назад, основным направлением деятельности «Фланта» остается DaaS (DevOps as a Service). Мы помогаем клиентам с обслуживанием инфраструктуры. И эта деятельность накладывает большой отпечаток на наш внутренний процесс управления проектами, так как у нас много специфичных процессов и практик: у команды может быть несколько разноплановых проектов, ей необходимо обеспечить SLA по каждому из них. Важно и то, что наши команды на 100% удаленные. 

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

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

Регулярки (regex) — основы для решения кейсов, про которые не пишут в статьях про основы

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

"Там просто регулярку написать" - говорили они...

Читать далее
Всего голосов 44: ↑39 и ↓5 +34
Комментарии 47

Grafana OnCall — Open Source хаб для алертов и инцидентов

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

Привет, хабр! С удивлением обнаружил, что здесь нет ни одного упоминания Grafana OnCall, Incident Response Tool с открытым исходным кодом от Grafana Labs. И это нужно исправлять, ведь мы бурно растем как по звездочкам на гитхабе, так и как часть Grafana Cloud, а в issues на гитхабе, в основном, встречаются техлиды из FAANG.

Если кратко, OnCall — это инструмент, который поможет организовать надежные оповещения/реагирование на инциденты в команде, соблюдать SLA и не просыпаться ночью от звонков.

Что умеет и как поставить?
Всего голосов 36: ↑36 и ↓0 +36
Комментарии 15

Обработка естественного языка (NLP) методами машинного обучения в Python

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

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

Рассмотрим задачу обработки естественного языка (NLP — Natural Lanuage Processing) на примере классификации психического здоровья для определения депрессии по комментариям в Reddit.

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

Гайд по межсетевому экранированию (nftables)

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


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

В качестве межсетевого экрана будем использовать nftables, функционирующий под управлением ОС Debian GNU Linux.
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 15

Terraform за 15 дней (AWS/Yandex cloud). День 1

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

Terraform за 15 дней (AWS/Yandex). День 1

Мы от простого к сложному, поднимем небольшую инфраструктуру на aws и Яндекс (актуальность последнего я думаю объяснять не нужно). Так что по итогу вы сможете сказать: “Я изучал terraform от простого к сложному”.

Я постараюсь добавить все необходимые ссылки на документации и доп. источники, так что вы сможете дополнить необходимые знания, но данный курс (если это можно так назвать) скорее рассчитан на тех, кто в общем знаком с облачными технологиями. Это не пособие по terraform. Цель - помочь новичкам в данном вопросе начать изучать IaC и облака в целом. Некий quick start в terraform.

Изучить terraform
Всего голосов 18: ↑12 и ↓6 +6
Комментарии 4

Кончай бухать, айда читать: нейробиолог даёт советы по борьбе с деградацией мозга

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

Ричард Рестак у себя дома в Вашингтоне О.К.

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

Нейробиолог, доктор Ричард Рестак, бывший президент Американской нейропсихиатрической ассоциации, выступал с лекциями о работе мозга и поведении человека всюду, от Пентагона до НАСА, и написал более 20 книг о мозге. Последняя его книжка, The Complete Guide to Memory: The Science of Strengthening Your Mind [Полное руководство по памяти: Наука укрепления вашего разума], посвящается таящемуся внутри нас страху того, что каждый раз, когда вы забываете, где оставили очки для чтения, является признаком надвигающегося краха. «В сегодняшней Америке, — пишет автор, — любой человек в возрасте от 50 лет живёт в страхе перед ужасным А». Небольшие провалы в памяти – главное, на что жалуются люди старше 55 лет своим врачам, хотя по большей части эти случаи оказываются не заслуживающими тревог.
Читать дальше →
Всего голосов 73: ↑70 и ↓3 +67
Комментарии 234

Как я оплачивал в интернете криптовалютой

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

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

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

Читать далее
Всего голосов 204: ↑189 и ↓15 +174
Комментарии 121

Яндекс выложил в опенсорс бету фреймворка userver

Время на прочтение 10 мин
Количество просмотров 73K
Сегодня мы анонсируем выход в опенсорс фреймворка userver для создания высоконагруженных приложений. Для нас это важный способ поделиться опытом в разработке микросервисов, который мы накопили. Вот ссылка на Гитхаб-репозиторий c исходным кодом, документацией, примерами, шаблоном для создания своих сервисов (с настроенным CI, сборкой и тестовым окружением) и сервисом динамических конфигов. Всё это опубликовано под лицензией Apache 2.0.



🐙userver позволяет быстро создавать эффективные микросервисы на языке C++ и уже много лет активно используется в Яндекс Go, Еде, Лавке, Доставке, Маркете, финтехе и других проектах. Вот из каких требований мы исходили в процессе разработки:

  • Простота. Стажёр или студент, приходя к нам, может уже через неделю написать и отправить в продакшен новый микросервис.
  • Надёжность. Многие ошибки, в том числе и связанные с многопоточностью, можно поймать на этапе компиляции. Кроме того, фреймворк даёт подсказки по исправлению проблем.
  • Полнота. В userver есть всё необходимое для тестирования, работы с разными базами данных, кеширования, логирования, трейсинга, распределённых блокировок, работы с JSON, BSON, YAML, изменения параметров сервиса на лету и так далее.

Сейчас я расскажу о том, как возникла идея userver, как фреймворк развивался, в каких задачах его сейчас используют и почему именно выход в опенсорс был логичным следующим шагом. А затем приведу пример написания нового микросервиса.
Читать дальше →
Всего голосов 177: ↑173 и ↓4 +169
Комментарии 142

Динамическая генерация пользователей в Linux. Разбираемся с NSS

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

Как известно, пользователи и группы в Linux определяются по целочисленному идентификатору, который используется при описании владельца и группы файла, а также для создания контекста текущего пользователя после авторизации. Но как это работает внутри? И можно ли создать свою реализацию для взаимного преобразования имен и идентификаторов и для аутентификации пользователей? В этой статье мы детально рассмотрим анатомию подсистем NSS (Name Service Switch) и создадим свою простую реализацию подсистем для использования с текстовым файлом со списком пользователей и паролей. Во второй части статьи мы поговорим о PAM и обсудим возможные способы ее реализации и применения.

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

Как айтишнику получить визу зарубеж на основании удаленной работы в 2022 году

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

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

Читать дальше →
Всего голосов 39: ↑37 и ↓2 +35
Комментарии 29

Чек-лист по безопасности контейнеров

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

Fortress of the Arch by JeremyPaillotin

Команда разработки Kubernetes aaS VK Cloud Solutions перевела чек-лист по безопасности контейнеров, составленный на основе выступления Лиз Райс на конференции GOTOpia Europe 2020. Чек-лист проясняет специфику некоторых наиболее вероятных уязвимостей и помогает их избежать.

1. Отделили ли вы сборки от продуктового кластера?


Сначала вы наверняка будете создавать образы контейнеров при помощи того или иного конвейера CI/CD. Это может быть служба хостинга или, скорее, self-hosted-решение, если мы говорим о корпоративном Kubernetes. 

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

Помните: если вы запустили Docker-файл, то в нем можно выполнять любой произвольный код. То есть любой, кто меняет код в ваших Docker-файлах, может запускать в них что угодно. Поэтому всегда проверяйте, что Docker-файлы может редактировать только команда, которой вы доверяете. Иначе есть риск, что кто-то воспользуется уязвимостью ядра и получит несанкционированный доступ к продакшен-приложениям.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 2

Что вообще значит «прослушивать порт»?

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

В углу здания студенческого клуба есть кофейня, и в углу этой кофейни сидят два студента. Лиз стучит по клавиатуре потрёпанного древнего MacBook, который ей подарил брат перед отъездом в колледж. Слева от неё на диване Тим пишет уравнения в пружинном блокноте. Между ними стоит наполовину пустая кружка с кофе комнатной температуры, из которой Лиз время от времени потягивает напиток, чтобы не заснуть.

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

Тим останавливается на половине строки, вырывает лист из блокнота, комкает его и кладёт рядом с небольшой горкой других скомканных листов.
Читать дальше →
Всего голосов 64: ↑58 и ↓6 +52
Комментарии 26

Практические советы, примеры и туннели SSH

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

Практические примеры SSH, которые выведут на новый уровень ваши навыки удалённого системного администратора. Команды и советы помогут не только использовать SSH, но и более грамотно перемещаться по сети.

Знание нескольких трюков ssh полезно любому системному администратору, сетевому инженеру или специалисту по безопасности.
Читать дальше →
Всего голосов 69: ↑66 и ↓3 +63
Комментарии 29

Первые шаги с werf: собираем и деплоим простое приложение в Kubernetes

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

В этой статье мы рассмотрим, как с помощью Open Source-утилиты werf собрать Docker-образ простого приложения и развернуть его в кластере Kubernetes, а также с легкостью накатывать изменения в его коде и инфраструктуре.

Мы поговорим об общих принципах работы с werf при использовании ее разработчиками, поэтому в качестве примера приложения используем небольшой эхо-сервер на основе shell-скрипта, который будет возвращать в ответ на запрос по адресу /ping строку Hello, werfer!. В следующих материалах будет рассмотрена работа и с «настоящими» приложениями, основанными на распространенных фреймворках на разных языках, но для начала сфокусируемся на общем подходе к разработке с использованием утилиты werf.

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

Удаленная отладка приложений Kubernetes с использованием Visual Studio Code

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

Отладка в контейнерной среде – дело не самое простое, поэтому разработчики зачастую прибегают к неэффективным методам локализации ошибок на этапе развертывания. Быстрее и красивее будет использовать отладчик на удаленном сервере, задав точки останова для поиска причин неполадок.

Именно этот вариант мы рассмотрим сегодня и покажем, как запускать отладчик на кластере Kubernetes через IDE-среду Visual Studio Code (VS Code). В качестве приложения у нас будет программа на Go, но всё изложенное вполне применимо и к другим языкам программирования и отладчикам.

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

Kubernetes 1.23: обзор основных новшеств

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

Этой ночью официально выпустят новую версию Kubernetes — 1.23. Рассказываем о самых интересных нововведениях (alpha), а также о некоторых фичах, которые перешли на уровень выше (beta, stable).

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

Пишем чат-бот на Python + PostgreSQL и Telegram

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

Пошаговое руководство написания чат-бота на языке Python.

Установим Python и библиотеки на Debian, подключим PostgreSQL, получим вопросы и ответы, подключим морфологию и нормализуем слова, запустим чат-бота в Telegram.

Голая практика и полный листинг с комментариями.

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

IaC Development Life Cycle

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

IaC Development Life Cycle


idlc


Это расшифровка выступления на T-Meetup: DevOps Life Cycle.


Осмелюсь предположить, что многие слышали про SDLC (Systems development life cycle). Но что, если все то же самое происходит с IaC?

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

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

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

Привет, Хабр! Меня зовут Кирилл, одной из задач, которой я занимаюсь в Just AI, является пользовательская аналитика. В этой статье я хочу рассказать о нашем опыте миграции этой аналитики на новую СУБД ClickHouse. О том, с какими нюансами пришлось столкнуться и как мы их решали. Посмотрим на примерах, как изменилась схема и запросы к БД и удалось ли получить прирост в производительности.

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

Изначально все эти данные хранились в PostgreSQL, и, пока их было немного, все работало достаточно быстро. Шли года, приходило все больше крупных пользователей, и постепенно наступила ситуация, что для построения какого-нибудь простого графика за две недели перестало хватать таймаута в 10 минут. Тут-то мы и поняли, что настало время что-то менять…

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

Информация

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