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

DevOps *

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

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

«Нетипичное отношение к финансам» — что если сотрудники сами будут управлять доходами. Разговор с Флант

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


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

У этих классических отношений есть вариации — опционы, проценты, бонусы, которые немного напоминают, что владельцы и сотрудники в одной лодке. Но бывают и менее типичные ситуации.

Компания Флант состоит из нескольких команд девопосов, которые обслуживают чужие продакшены под ключ. Они выросли из банды студентов-энтузиастов и фанатов Linux, а сейчас построили структуру «бизнесов внутри бизнеса», просто потому что так комфортнее и честнее. Дима Столяров и Саша Баталов рассказали нам, как это устроено.
Флант попал в рейтинг лучших ИТ-работодателей 2018 со средней оценкой 4.68. Судя по оценкам компании на «Моём круге», сотрудники верят, что компания делает мир лучше, а ещё ценят Флант за интересные задачи, хорошие отношения в коллективе, современные технологии и связь с топ-менеджментом.
Читать дальше →

Новый фонд для DevOps-проектов от Linux Foundation начался с Jenkins и Spinnaker

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


На прошлой неделе организация The Linux Foundation во время своего мероприятия Open Source Leadership Summit объявила о создании нового фонда для Open Source-проектов. Очередной независимый институт по развитию открытых [и востребованных в индустрии] технологий призван объединить в себе инструменты для DevOps-инженеров, а если быть точнее — для организации и реализации процессов непрерывной доставки, пайплайнов CI/CD. Организацию так и назвали: The Continuous Delivery Foundation (CDF).
Читать дальше →

Сканирование на уязвимости и безопасная разработка. Часть 1

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

В рамках профессиональной деятельности разработчикам, пентестерам, безопасникам приходится сталкиваться с такими процессами, как Vulnerability Management (VM), (Secure) SDLC.
Под этими словосочетаниями скрываются различные наборы практик и используемых инструментов, которые переплетены между собой, хотя их потребители различаются.

Технический прогресс пока не дошёл до того, чтобы одним инструментом заменить человека для проведения анализа защищённости инфраструктуры и ПО.
Интересно понять, почему это так, и с какими проблемами приходится сталкиваться.
Читать дальше →

6 занимательных системных багов при эксплуатации Kubernetes [и их решение]

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


За годы эксплуатации Kubernetes в production у нас накопилось немало занимательных историй, как баги в различных системных компонентах приводили к неприятным и/или непонятным последствиям, влияющим на работу контейнеров и pod'ов. В этой статье мы сделали подборку некоторых наиболее частых или интересных из них. Даже если вам никогда не повезёт столкнуться с такими ситуациями, читать о подобных кратких детективах — тем более, «из первых рук» — всегда занятно, разве не так?..
Читать дальше →

Публикуем приложения iOS в App Store с GitLab и fastlane

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


Как GitLab с fastlane собирает, подписывает и публикует приложения для iOS в App Store.


Недавно у нас был пост о том, как быстро собрать и запустить приложение Android с GitLab и fastlane. Здесь мы увидим, как собрать и запустить приложение iOS и опубликовать его в TestFlight. Зацените, как круто я вношу изменение на iPad Pro с GitLab Web IDE, беру сборку и получаю обновление тестовой версии приложения на том же iPad Pro, где я его разработал.


Здесь мы возьмем простое приложение для iOS на Swift, с которым я записывал видео.

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

Интеграция AppCenter и GitLab

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

Трям, здравствуйте!


Хочу рассказать о своём опыте настройки интергации GitLab и AppCenter через BitBucket.


Необходимость такой интеграции возникла в ходе настройки автоматического запуска UI тестов для кроссплатформенного проекта на Xamarin. Подробный туториал под катом!

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

Эволюция средств поставки, или размышления о Docker, deb, jar и прочем

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


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

Оркестр перфоманса

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

Едва ли будет неверным сказать, что лучшие из людей
обретают радость через страдание.
Людвиг ван Бетховен



Я Сергей, работаю в Яндекс.Деньгах в команде по исследованию производительности. Хочу поведать вам начало истории о нашем пути к использованию оркестровки — как мы выбирали инструменты и что при этом учитывали. Всё события из статьи происходят в реальном времени, поэтому вы, дорогие читатели, следите за развитием ситуации практически в прямом эфире.

Зачем нам дирижёр в команде?

Назад к микросервисам вместе с Istio. Часть 2

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


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

Напоминаем также, что в статье используются конфигурации (манифесты для Kubernetes и Istio) из репозитория istio-mastery.
Читать дальше →

Настройка НА-кластера Kubernetes на «голом железе», мониторинг, логи и примеры использования. Часть 3/3

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


Часть 1/3 тут.


Часть 2/3 тут.


Всем привет! А вот и третья часть руководства «Kubernetes на «голом железе»! Я уделю внимание мониторингу кластера и сбору логов, также мы запустим тестовое приложение для использования предварительно настроенных компонентов кластера. Затем проведем несколько стресс-тестов и проверим стабильность этой кластерной схемы.

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

Jenkins для Android сборки, с помощью Docker

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

Я работаю андроид разработчиком, и не так давно мы столкнулись с некоторыми рутинными задачами на своем проекте, которые хотелось бы автоматизировать. Например у нас 5 разных flavor, для каждого из которых требуется загружать свой билд на fabric, иногда для разных тасок по несколько раз в день. Да эту задачу можно сделать и с помощью gradle таски, но хотелось бы не запускать этот процесс на машине разработчика, а делать это как-то централизовано. Или например автоматически заливать билд в google play в бету. Ну и просто хотелось поковырять CI систему. Что из этого получилось, и как мы это настраивали, зачем там Docker, далее в статье.


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

Несем DevOps в массы

Время на прочтение4 мин
Количество просмотров5.5K
«Нужно активнее нести DevOps в массы», — решили мы в прошлом году, провели масштабный ребрендинг RootConf и запустили DevOpsConf, как место, где инженеры смогли обсудить множество насущных проблем и посмотреть на то, что же творится вокруг, чем живут в близких областях, как выходят из похожих, но все же отличных ситуаций. Нам удалось собрать классную программу и, что еще важнее, аудиторию профессионалов, которым боли и их решения были нужны и понятны.

Что ж, не будем останавливаться на достигнутом — продолжим продвижение подхода интеграции процессов разработки, тестирования и эксплуатации уже в мае на РИТ++.


Поскольку DevOps в нашем понимании — это про объединение всех процессов разработки, то фестиваль конференций РИТ++, в котором участвуют и серверные и клиентские разработчики, и управленцы разных уровней, люди, выстраивающие бизнес-процессы, и многие другие специалисты IT, — самое место, чтобы говорить о DevOps.

[Питер] Контейнеры и дистрибутивы — встреча JUG.ru с Дмитрием Чуйко и Александром Белокрыловым

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

В четверг, 21 марта, в петербургском офисе компании Oracle состоится встреча JUG.ru с Дмитрием Чуйко и Александром Белокрыловым (alexbel) из BellSoft. Дмитрий расскажет про Java в контейнерной среде, а Александр — про создание и поддержку своего Java-дистрибутива.


Участие бесплатное, регистрация обязательная. Зарегистрироваться можно по этой ссылке.

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

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

Паттерны и анти-паттерны CI/CD. Часть 3

Время на прочтение9 мин
Количество просмотров6.5K
И снова здравствуйте. Сегодня хотим поделиться с вами переводом третьей части статьи «Паттерны и анти-паттерны CI/CD», предыдущие части которой можно прочитать здесь и здесь. Напомним, данная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты», набор на который закроется уже в ближайшие дни.

1.3.5.1 Недостатки Сквозного Тестирования

“Любое преимущество от общения с настоящей системой затмевается необходимостью искоренять недетерминизм” Мартин Фаулер (Martin Fowler).

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



Сквозное Тестирование часто кажется привлекательным из-за субъективных преимуществ сквозных тестов:

  1. Сквозной тест максимизирует System Under Tests, что предполагает высокую степень покрытия тестами;
  2. Сквозной тест использует саму систему в качестве тестового клиента, что предполагает низкие затраты на тестовую инфраструктуру.
Читать дальше →

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

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


На фотографии макрофото глаз стрекозы. Они имеют фасеточное строение и состоят примерно из 30000 шестиугольных фасетов, что позволяет стрекозе смотреть практически на 360 градусов (за исключением направления «прямо назад»). Полезное умение, если ты стрекоза.

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

В статье расскажем об инструменте мониторинга Foglight for Databases, который объединяет в одной консоли мониторинг SQL Server, Oracle, MySQL, PostgreSQL, DB2, SAP ASE, MongoDB и Cassandra. В нём также есть лёгкий налёт DevOps в части логирования изменений в конфигурации баз данных. Обо всём по порядку. Под катом много скриншотов.
Читать дальше →

Эволюция инфраструктуры БД: от базы и приложения на одном сервере до потоковой репликации

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


Привет, Хабр!

Меня зовут Антон Маркелов, я ops-инженер компании United Traders. Мы занимаемся проектами, так или иначе связанными с инвестициями, биржами и прочими финансовыми делами. Компания мы не очень большая, около 30 инженеров разработки, масштабы соответствующие – чуть меньше сотни серверов. В ходе количественного и качественного роста нашей инфраструктуры классическое решение «держим на одном сервере и приложение, и его базу» перестало нас устраивать как в плане надежности, так и в плане быстродействия. Со стороны аналитиков возникла потребность создавать кроссбазные запросы, отделу эксплуатации надоело возиться с бэкапом и мониторингом большого количества серверов БД. Вдобавок ко всему, хранение стейта на одной машине с самим приложением сильно снижала гибкость планирования ресурсов и отказоустойчивость инфраструктуры.

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

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

«Человек-снежинка» с КДПВ бессовестно позаимствован у Максима Дорофеева.
Читать дальше →

Мониторинг ping'ов между узлами Kubernetes — наш рецепт

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


Нередко при диагностике проблем в кластере Kubernetes мы замечаем, что иногда моросит* один из узлов кластера и, конечно же, происходит это редко и странно. Так мы пришли к необходимости в инструменте, который бы делал ping с каждого узла на каждый узел и отдавал результаты своей работы в виде метрик Prometheus. Нам бы оставалось лишь нарисовать графики в Grafana и быстро локализовать сбойный узел (и при необходимости убрать с него все pod'ы, после чего произвести соответствующие работы**)…
Читать дальше →

Не переусложняйте ваш CI/CD и пользуйтесь Docker'ом осмысленно

Время на прочтение3 мин
Количество просмотров17K
Я работал в разных компаниях, которые используют микросервисы. И они запускали их в docker контейнерах. Сейчас я работаю с проектом, который хоть и монолит, но его все равно удобнее запустить в контейнере.

С одной стороны, Docker очень универсальный инструмент, его можно легко и эффективно использовать для решения огромного количества задач. Он понятен и кажется, что все элементарно. Но с другой стороны, если не потратить свое время и ресурсы, чтобы “прокачаться” в грамотном его использовании, вы, скорее всего, переусложните простые вещи. И конечно же будете считать что вы правы, а Docker это бездарная громоздкая фигня, не подходящая для решения вашей уникальной задачи.
Читать дальше →

Настройка HA-кластера Kubernetes на «голом железе» с GlusterFS & MetalLB. Часть 2/3

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


Часть 1/3 тут
Часть 3/3 тут


Привет и с возвращением! Это вторая часть статьи о настройке кластера Kubernetes на «голом железе». Ранее мы настраивали НА-кластер Kubernetes с помощью внешнего etcd, схемы «ведущий-ведущий» и балансировки нагрузки. Ну а теперь пришло время настроить дополнительную среду и утилиты, чтобы сделать кластер полезнее и максимально приближенным к рабочему состоянию.


В этой части статьи мы сосредоточимся на настройке внутреннего балансировщика нагрузки сервисов кластера — это будет MetalLB. Также мы установим и настроим распределенное хранилище файлов между нашими рабочими нодами. Будем использовать GlusterFS для постоянных томов, которые доступны в Kubernetes.
После выполнения всех действий схема нашего кластера будет выглядеть следующим образом:


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

Назад к микросервисам вместе с Istio. Часть 1

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


Прим. перев.: Service mesh'и определённо стали актуальным решением в современной инфраструктуре для приложений, следующих микросервисной архитектуре. Хотя Istio может быть на слуху у многих DevOps-инженеров, это довольно новый продукт, который, будучи комплексным в смысле предоставляемых возможностей, может потребовать значительного времени для знакомства. Немецкий инженер Rinor Maloku, отвечающий за облачные вычисления для крупных клиентов в телекоммуникационной компании Orange Networks, написал замечательный цикл материалов, что позволяют достаточно быстро и глубоко погрузиться в Istio. Начинает же он свой рассказ с того, что вообще умеет Istio и как на это можно быстро посмотреть собственными глазами.

Istio — Open Source-проект, разработанный при сотрудничестве команд из Google, IBM и Lyft. Он решает сложности, возникающие в приложениях, основанных на микросервисах, например, такие как:
Читать дальше →

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