Как стать автором
Поиск
Написать публикацию
Обновить
300.11

DevOps *

Методология разработки программного обеспечения

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

Сборка проектов с dapp. Часть 1: Java

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


Эта статья — начало цикла о сборке dapp'ом приложений на различных языках, платформах, технологических стеках. Предыдущие статьи про dapp (см. ссылки в конце материала) были больше обзорными, описывали возможности dapp. Теперь же пора поговорить более предметно и поделиться конкретным опытом работы с проектами. В связи с недавним релизом dapp 0.26.2 я заодно покажу, как описывать сборку в YAML-файле.
Читать дальше →

Atlassian User Group Moscow в гостях у Райффайзенбанка

Время на прочтение1 мин
Количество просмотров2.4K
15 февраля приглашаем гостей на встречу Atlassian User Group Moscow в Райффайзенбанк.
Мы поговорим о тонкостях учета рабочего времени сотрудников, об опыте использования CI/CD конвейера в Райффайзенбанке и об эволюции процессов в SkuVault.


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

Быстрый и безопасный мониторинг JVM-приложений с помощью магии BPF

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

Все мы встречались со сложными ошибками на продакшне, которые сложно поймать обычными средствами мониторинга. BPF — это технология ядра Linux, которая позволяет делать быструю и безопасную динамическую отладку прямо на запущенной работающей системе, без необходимости готовиться к этому заранее. JVM сама по себе имеет множество точек мониторинга для отслеживания сборки мусора, выделения объектов, вызовов JNI, даже вызовов методов — и всё это без необходимости в дополнительном инструментировании. Когда этих точек мониторинга недостаточно, ядро Linux и всевозможные бибилиотеки позволяют отслеживать системные вызовы, сетевые пакеты, события планировщика, время потраченное на доступ к диску, и даже запросы к базам данных.


В этом хабрапосте мы сделали текстовую расшифровку доклада Sasha Goldshtein, посвященного тому, как инструменты BPF можно использовать для мониторинга JVM-приложений на GNU/Linux, и чеклисту проверки производительности с использованием классических инструментов, таких как fileslower, opensnoop, strace — но всё это с использованием неинвазивной, быстрой и безопасной технологии BPF.


После ката будет множество картинок со слайдами. Осторожно, трафик! Картинки ужаты насколько можно, но не более того. Все они действительно нужны.


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

Знакомство с ConcourseCI

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

ConcourseCI logo


Всем привет! Я заметил, что на Хабре очень мало информации про такой сервер сборки, как ConcourseCI. Я решил восполнить этот пробел и написать небольшое введение. Под катом описание этого инструмента и небольшой туториал.

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

Cradle: Rave. Два хакатона + конференция, с упором на Big Data & ML, Blockchain, Quantum Computing, DevOps и Mobile

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

На прошлой неделе друзья позвали отдохнуть на неком Cradle:Rave. Судя по названию, это могло быть всё что угодно, включая кислотную вечеринку, поэтому я решил провести некие исследования в интернетах.


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


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


Бесплатно, иначе говоря — на халяву, на шару, совершенно свободно. Но нужно успеть зарегистрироваться до 15-ого числа на сайте, регистрация обязательна.



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

Как будет развиваться виртуальная инфраструктура: 4 основных тренда

Время на прочтение5 мин
Количество просмотров7.1K
Специалисты из RightScale в прошлом году провели исследование, во время которого опросили тысячу ИТ-специалистов компаний разных профилей и размеров о том, как в их организации обстоят дела с внедрением облачных технологий.

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

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

Самая большая it-тусовка на Урале — конференция DUMP-2018 — пройдёт 13 апреля в Екатеринбурге

Время на прочтение7 мин
Количество просмотров3.3K
Программисты, дизайнеры, мобильные разработчики, тестировщики, менеджеры, новость для вас — конференция DUMP-2018 пройдёт 13 апреля в Екатеринбурге. В этом году мы готовим 8 секций: FrontTalks, Serverside, Mobile, Дизайн, DevOps, Тестирование, Менеджмент, Science.

Если вы не знаете, что такое DUMP (Development. Usability. Management. Practice), посмотрите маленький ролик ниже — в нём коротко о том, как прошёл DUMP-2017.


В прошлом году у нас выступили Григорий Бакунов (Яндекс), Леонид Васильев (Dropbox), Никита Прокопов (Cognician), Андрей Акиньшин (JetBrains), Юрий Ветров (Mail.Ru Group), Сергей Рассказов (Школа шрифтового дизайна), Александр Орлов (Стратоплан) и ещё 54 крутейших спикера. Все видео прошлогодних докладов можно посмотреть на нашем канале.

До 20 февраля мы принимаем заявки на доклады, а до 15 февраля можно купить билеты по минимальной цене. Под катом все подробности.
Читать дальше →

Cluster of Puppets: опыт использования Amazon ECS в iFunny

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

image


Несмотря на название, эта статья не имеет ничего общего с системой управления конфигурацией Puppet.


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


Вот и в iFunny задумались о пользе и ценности оркестраторов и в итоге выбрали Amazon Elastic Container Service. Вкратце: ECS является платформой управления контейнерами на EC2 instances. О подробностях и опыте в бою читайте ниже.

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

Запускаем полноценный кластер на Kubernetes с нуля на Ubuntu 16.04

Время на прочтение8 мин
Количество просмотров64K
Уже довольно много написано статей, по установке и запуску Kubernetes, однако, не всё так гладко (я потратил несколько суток на запуск своего кластера).

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

Что нужно знать


Серверы:
Кластер подразумевает, что у Вас более одного физического сервера, между которыми и будут распределятся ресурсы. Серверы называются нодами (nodes).

Диски:
Обычные харды в k8s не поддерживаются. Работа с дисками происходит по средствам распределенных файловых хранилищ. Это необходимо для того, чтобы k8s мог «перемещать» контейнеры docker на другие ноды в случае необходимости, без потери данных (файлов).

Начинать создание кластера нужно именно с создания своего распределенного файлового хранилища. Если вы уверены, что диски вам никогда не понадобятся, то этот шаг можно пропустить.
Я выбрал Ceph. А еще рекомендую почитать эту замечательную статью.

Минимальное разумное количество серверов для Ceph — 3 (можно построить и на одном, но в этом мало смысла из-за высокой вероятности потерять данные).

Сеть:
Нам понадобится Flannel — он позволяет организовать программно определяемую сеть (Software Defined Network, SDN). Именно SDN позволяет всем нашим контейнерам общаться с друг другом внутри кластера (установка Flannel производится вместе с k8s и описана ниже).

Подготовка серверов


В нашем примере мы используем 3 физических сервера. Установите Ubuntu 16.04 на все сервера. Не создавайте swap партиции (требование k8s).

Предусмотрите в каждом сервере как минимум один диск (или партицию) для Ceph.

Не включайте поддержку SELinux (в Ubuntu 16.04 он выключен по-умолчанию).

Мы назвали сервера так: kub01 kub02 kub03. Партиция sda2 на каждом сервере создана для Ceph (форматировать не обязательно).
Читать дальше →

Масштабируем Kubernetes до 2500 нод

Время на прочтение7 мин
Количество просмотров8.3K
Всем добра!

Ну что ж. Первый поток курса DevOps выпущен, второй обучается вовсю и вот на подходе третий. Курс усовершенствуется, проект тоже, остаётся неизменным пока что одно: интересные статьи, которые мы пока что только переводим для вас, но на носу уже и срывы покровов с тех вещей, что у нас просили :)

Поехали!

Мы используем Kubernetes для исследования в области deep learning уже более двух лет. В то время, как наши самые масштабные нагрузки управляют облачными ВМ напрямую, Kubernetes обеспечивает быстрый итерационный цикл и масштабируемость, что делает его идеальным для наших экспериментов. Сейчас мы управляем несколькими Kubernetes кластерами (как облачными, так и на физическом оборудовании), самый крупный из них состоит из более 2500 нод — это кластер в Azure на комбинации виртуальных машин D15v2 и NC24.

Многие системные компоненты отказывали в процессе масштабирования, включая etcd, Kube мастеров, загрузки образов Docker, сети, KubeDNS и даже ARP кэши наших машин. Поэтому мы решили, что будет полезным поделиться, с какими проблемами мы столкнулись и как с ними справились.

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

Приглашаем на Cradle: Rave. И нет, это не дискотека

Время на прочтение2 мин
Количество просмотров3.8K
С 16 по 18 февраля в Сколково мы будем проводить Cradle: Rave. Это самое большое мероприятие Сбербанк Технологий, которое объединит все, чем мы занимаемся — Artificial Intelligence, Machine learning, чат-боты, квантовые технологии, DevOps, IoT, блокчейн, big data, мобильную разработку. По последним двум темам организуем хакатоны с денежными призами, по блокчейну — джем-сессию в экзотическом формате «печа-куча», а приправим все россыпью интересных докладов и митапов. Подробности под катом.


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

Анонс Moscow Kubernetes Online: мы собрали подводные камни k8s

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

Всем привет! Хотим анонсировать панельную дискуссию, посвященную Kubernetes, которая пройдет 13 февраля в режиме онлайн на нашем youtube-канале. Эксперты из компаний Флант, Рокетбанк, Axept Global и, конечно, Avito соберутся вместе и обсудят те подводные камни Kubernetes, которые им удалось собрать, поделятся опытом использования инструмента, расскажут о решении нетривиальных прикладных задач.


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


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

Автоматизируй, когда можешь, программируй, когда необходимо

Время на прочтение5 мин
Количество просмотров11K
Здравствуйте, уважаемые читатели

Вот-вот в издательстве O'Reilly выйдет очередная занятная книжка с крокодилом


Этот увесистый компендиум всесторонне освещает вопросы о том, в какой степени сисадмин должен быть «network engineer», как оптимально соотносится автоматизация и программирование в работе такого специалиста. В книге даются основы Linux и Python, а также ожидается еще масса всего интересного.

Чтобы вам было интереснее участвовать в голосовании, предлагаем почитать небольшую статью одного из авторов (Джейсона Эдельмана), в которой он рассказывает, какие мысли подтолкнули его к сотрудничеству с Мэттом Освальтом и созданию этой книги
Читать дальше →

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

Расширяем функционал Ansible с помощью модулей

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

Под капотом сервиса d2c.io мы активно используем Ansible – от создания виртуальных машин в облаках провайдеров и установки необходимого программного обеспечения, до управления Docker-контейнерами с приложениями клиентов.


В статье о раширении функциональности Ansible мы частично рассмотрели, чем отличаются плагины от модулей. Если вкратце, основное различие в том, что первые выполняются на локальной машине, где установлен Ansible, а вторые — на целевых.


Основная задача плагинов – влиять на ход выполнения плейбука, добавлять новые возможности загрузки и обработки данных. Задача же модулей – расширять перечень систем и сервисов, которыми Ansible может управлять. Например, создать сервер на площадке Vultr – модуль vultr, создать пользователя в самодельной системе авторизации для офисной WiFi сети – модуль mywifiauth_user.

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

Rook — «самообслуживаемое» хранилище данных для Kubernetes

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


29 января технический комитет организации CNCF (Cloud Native Computing Foundation), стоящей за Kubernetes, Prometheus и другими Open Source-продуктами из мира контейнеров и cloud native, объявил о принятии проекта Rook в свои ряды. Отличный повод познакомиться поближе с этим «оркестровщиком систем распределённого хранения данных в Kubernetes».
Читать дальше →

Учимся надежному управлению Kubernetes

Время на прочтение13 мин
Количество просмотров13K
Всем доброго!

Мы возвращаемся к нашей любимой традиции — раздача полезностей, которые мы собираем и изучаем в рамках наших курсов. Сегодня у нас на повестке дня курс по DevOps и один из его инструментов — Kubernetes.

Недавно мы создали распределенную систему планирования задач (cron jobs) на базе Kubernetes — новой, захватывающей платформы для оркестрации контейнеров. Kubernetes становится все популярней и дает много обещаний: например, инженерам не придется переживать, на каком устройстве запущено их приложение.

Распределенные системы сложны сами по себе, а управление сервисами на распределенных системах — одна из сложнейших проблем, с которыми сталкиваются команды управления. Мы очень серьезно относимся к вводу нового программного обеспечения в производство и обучению его надежному управлению. В качестве примера важности управления Kubernetes (и почему это так сложно!), почитайте отличный постмортем часового перебоя в работе, вызванного багом в Kubernetes.

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

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

Смерть микросервисного безумия в 2018 году

Время на прочтение12 мин
Количество просмотров101K
Прим. перев.: Этот материал, написанный опытным разработчиком, не задаётся целью похоронить идею микросервисов, как можно подумать, глядя на заголовок. Статья — разумное предупреждение для тех, кто решил, что микросервисы — это «серебряная пуля», которая сама по себе решает все архитектурные и эксплуатационные проблемы. Для демонстрации этого автор собрал и систематизировал популярные проблемы, зачастую встречающиеся в сегодняшних проектах, уже использующих микросервисы или мигрирующих на них.



В последние годы микросервисы стали очень популярной темой. «Микросервисное безумие» выглядит примерно так:

«Netflix хороши в DevOps. Netflix делают микросервисы. Таким образом, если я делаю микросервисы, я хорош в DevOps».
Читать дальше →

Расширение NLog для мониторинга ошибок

Время на прочтение3 мин
Количество просмотров20K
Не было ли у вас мысли, что исправлять ошибки пользуясь лог-файлом не очень эффективно?

Хотите исправлять ошибки быстрее и проще?

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


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

5 тенденций развития микросервисов в 2018 году

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

2017 год стал важным годом для DevOps, поскольку число игроков в экосистеме существенно выросло, а количество проектов с CNCF утроилось. Глядя на год вперед, мы ожидаем, что инновации и рыночные изменения ускорятся еще больше. Ниже мы рассмотрели тенденции в области микросервисов в 2018 году: сервисные связки(так называемые “меши”), event-driven архитектуры, нативная безопасность контейнеров, GraphQL и Chaos инженерия.

1. Сервисные связки популярны!


Сервисные связки или “меши”, выделенный уровень инфраструктуры для улучшения связи между сервисами, в настоящее время наиболее обсуждаема в контексте облачности. По мере того, как контейнеры становятся более распространенными, топологии сервисов становится все более динамичными, требуя улучшеной функциональности сети. Сервисные связки могут помочь управлять трафиком через обнаружение сервисов, маршрутизацию, балансировку нагрузки, проверку работоспособности и наблюдаемость(observability). Сервисные связки пытаются укротить непоколебимую сложность контейнера.

Очевидно, что сервисные сетки становятся все более популярными, поскольку балансировщики нагрузки, такие как HAProxy, traefik и NGINX, начали перестраиваться и представлять себя как плоскости данных(data planes). Мы пока не видели широкомасштабного развертывания, но мы знаем о компаниях, которые уже используют связки на живых серверах, в “продакшене”, так сказать. Кроме того, сервисные связки не являются эксклюзивными для микросервисов или сред Kubernetes, и также могут применяться в среде VM и без сервера. Например, в Национальном Центре Биотехнологической Информации(NCBI) нет контейнеров, но используется Linkerd.
Читать дальше →

Истории успеха Kubernetes в production. Часть 7: BlackRock

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


BlackRock — одна из крупнейших инвестиционных компаний мира и крупнейшая по размеру активов под управлением (5,7 трлн USD по состоянию на июль'17). Её также называют крупнейшим в мире «теневым банком». Имея 30-летнюю историю и такие впечатляющие показатели, компания не отстаёт от современных тенденций в ИТ-инфраструктуре. В минувшую пятницу в блоге организации CNCF появилась информация о том, что BlackRock удалось за 100 дней выкатить своё production-окружение на Kubernetes. Как они к этому пришли?
Читать дальше →

Вклад авторов