Как Внедрить Atlassian Jira + Confluence В Корпорациях. Технические Неисправности

Планируете ли вы внедрить программное обеспечение Atlassian (Jira, Confluence)? Не хотите совершать жестокие ошибки проектирования, которые потом придется исправлять в последний момент?

Как внедрить Atlassian Jira + Confluence в корпорациях.
</p><p>
 Технические неисправности

Тогда вам сюда — мы рассматриваем внедрение Atlassian Jira + Confluence в корпорациях с учетом различных технических аспектов.

Здравствуйте, я руководитель центра компетенций по продуктам Atlassian в РСХБ (Россельхозбанк) и отвечаю за разработку системы управления жизненным циклом (LCMS), построенной на программных продуктах Jira и Confluence. В этой статье я опишу технические аспекты построения системы управления жизнью.

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

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



Введение

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

Давайте сначала определим, что это значит.

Что значит корпоративное решение?

Это означает решение:
  1. Масштабируемость.

    При увеличении нагрузки технически возможно увеличить емкость системы.

    Разделяют горизонтальное и вертикальное масштабирование — при вертикальном масштабировании увеличивается мощность серверов, при горизонтальном — увеличивается количество серверов в системе.

  2. Отказоустойчивой.

    Система останется доступной даже в случае выхода из строя одного элемента.

    В целом корпоративные системы не требуют отказоустойчивости, но мы рассмотрим именно такое решение.

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

  3. Поддерживается.

    Решение должно поддерживаться поставщиком.

    Неподдерживаемое программное обеспечение следует заменить проприетарным или другим поддерживаемым программным обеспечением.

  4. Монтаж Самоуправляемый (на территории).

    Самоуправление — это возможность устанавливать ПО не в облаке, а на собственных серверах.

    Точнее, это все варианты установки, не относящиеся к SaaS. В этой статье мы рассмотрим варианты установки только для Self-managed.

  5. Возможность самостоятельной разработки и тестирования.

    Для организации предсказуемых изменений в системе необходима отдельная система разработки (изменений в самой системе), система тестирования (Staging) и продуктивная система для пользователей.

  6. Другой.

    Поддерживает различные сценарии аутентификации, поддерживает журналы аудита, имеет настраиваемую ролевую модель и т. д.

Это основные элементы корпоративных решений и, к сожалению, о них часто забывают при проектировании системы.



Что такое система управления жизненным циклом (LCMS)?

Если кратко, то в нашем случае это Atlassian Jira и Atlassian Confluence — система, предоставляющая инструменты для организации командной работы.

Система не «навязывает» правила организации работы, а предоставляет разнообразные инструменты для работы, включая Scrum, Kanban-доски, водопадную модель, масштабируемый Scrum и т.д. Название LMS не является отраслевым термином или общепринятым понятием, это просто название системы в нашем Банке.

Для нас LMS не является системой отслеживания ошибок, системой управления инцидентами или системой управления изменениями.

Система, конечно же, содержит функционал для отслеживания ошибок, регистрации инцидентов и управления изменениями.

И этот функционал используется для определенных задач.

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

Каждый конкретный случай имеет свою специфику.

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

Но это локальное решение одной отдельной команды, под одну конкретную задачу.



Что включает в себя реализация?

Реализация решения состоит из множества технических и организационных вопросов:
  • Распределение технических мощностей.

  • Покупка программного обеспечения.

  • Создание команды для реализации решения.

  • Установка и настройка решения.

  • Разработка архитектуры решения.

    Образец для подражания.

  • Разработка эксплуатационной документации, в том числе инструкций, регламентов, технического проекта, регламентов и т.д.
  • Изменение процессов компании.

  • Создание группы поддержки.

    Разработка SLA.

  • Обучение пользователей.

  • Другой.

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



Возможности Атласиан

Atlassian является лидером во многих сегментах: Продукты Atlassian предоставляют все необходимые корпоративные функции.

Отмечу следующие особенности:

  1. Решения Atlassian основаны на веб-сервере Java Tomcat. Программное обеспечение Apache Tomcat включено в программное обеспечение Atlassian как часть установки; вы не можете изменить основную версию Apache Tomcat, установленную как часть программного обеспечения Atlassian. Изменить дополнительную версию Может , это действие может потребоваться, если версия устарела и содержит уязвимости — Atlassian больше не будет поддерживать решение после этого обновления.

    Единственный способ не потерять поддержку — дождаться обновления от Atlassian с более новой версией Apache Tomcat. Сейчас, например, в текущих версиях Jira стоит Apache Tomcat 8.5.42, а в Confluence — Apache Tomcat 9.0.33 (как мы видим, основные версии Tomcat в разных продуктах разные).

    (Спасибо Макс Макс от Atlassian User Group Moscow за примечание о версиях Tomcat.)

  2. Удобный интерфейс, реализованы лучшие практики, имеющиеся на рынке данного класса ПО.

  3. Полностью настраиваемое решение.

    С помощью модификаций можно реализовать любое изменение базового функционала для пользователя.

  4. Развитая экосистема.

    Партнеров несколько сотен: https://partnerdirectory.atlassian.com , включая 16 партнеров в России.

    Именно через партнеров в России вы можете купить программное обеспечение Atlassian, плагины и пройти обучение.

    Именно партнеры разрабатывают и поддерживают большинство плагинов.

  5. Магазин приложений (плагины): https://marketplace.atlassian.com .

    Плагины значительно расширяют функциональность программного обеспечения Atlassian. Базовая функциональность программного обеспечения Atlassian весьма скромна; практически для любой задачи возникает необходимость установки дополнительных плагинов бесплатно или за дополнительные деньги.

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

    На данный момент в магазине опубликовано несколько тысяч плагинов, почти тысяча из них протестированы и проверены в рамках программы одобренных приложений Data Center. Такие плагины можно считать стабильными и подходящими для использования на загруженных системах.

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

  6. Обучение и сертификаты: https://www.atlassian.com/university
  7. Поддерживаются механизмы SSO и SAML 2.0.
  8. Поддержка масштабируемости и отказоустойчивости доступна только в редакциях Data Center. Эта редакция впервые появилась в 2014 году (Jira 6.3).

    Функционал редакций Data Center постоянно расширяется и совершенствуется (например, возможность одиночной установки появилась только в 2020 году).

    Подход к плагинам для редакций Data Center сильно изменился в 2018 году с появлением приложений, одобренных Data Center.

  9. Стоимость поддержки.

    Стоимость поддержки от вендора практически равна полной стоимости лицензий на ПО.

    Пример расчета стоимости лицензий приведен ниже.

  10. Отсутствие долгосрочных релизов.

    Существуют так называемые Корпоративные версии , но они, как и все остальные версии, поддерживаются 2 года.

    С той разницей, что для Enterprise версий выпускаются только исправления, без добавления нового функционала.

  11. Расширенные возможности поддержки (за дополнительную плату).

    https://www.atlassian.com/enterprise/support-services

  12. Поддерживается несколько вариантов СУБД.

    Программное обеспечение Atlassian поставляется с бесплатной СУБД H2; данная СУБД не рекомендуется для продуктивного использования.

    Для продуктивного использования поддерживаются следующие СУБД: Amazon Aurora (только для центров обработки данных), PostgreSQL, Azure SQL, MySQL, Oracle DB, PostgreSQL, MS SQL Server. Существуют ограничения на поддерживаемые версии и зачастую поддерживаются только старые версии, но для каждой СУБД существует версия с поддержкой вендора: Платформы, поддерживаемые Jira , Платформы, поддерживаемые Confluence .



Техническая архитектура



Как внедрить Atlassian Jira + Confluence в корпорациях.
</p><p>
 Технические неисправности

Пояснения к схеме:
  • На схеме показано внедрение в нашем Банке; эта конфигурация приведена в качестве примера и не рекомендуется.

  • nginx предоставляет функцию обратного прокси-сервера как для Jira, так и для Confluence.
  • Отказоустойчивость СУБД реализуется средствами СУБД.

  • Изменения передаются между средами с помощью плагина Configuration Manager for Jira.
  • AppSrv на диаграмме — это проприетарный сервер приложений для создания отчетов, который не использует программное обеспечение Atlassian.
  • База данных EasyBI была создана для построения кубов и создания отчетов с помощью плагина eazyBI Reports and Charts for Jira.
  • Сервис Confluence Synchrony (компонент, позволяющий одновременно редактировать документы) не выделяется в отдельную установку и запускается вместе с Confluence, на одном сервере.



Лицензирование

Вопросы лицензирования Atlassian заслуживают отдельной статьи; здесь я упомяну только общие принципы.

Основными проблемами, с которыми мы столкнулись, были проблемы с лицензированием редакций Data Center. Особенности лицензирования для редакций Server и Data Center:

  1. Лицензия на версию Server является бессрочной, и покупатель может использовать программное обеспечение даже после истечения срока действия лицензии.

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

  2. Лицензирование основано на количестве пользователей в глобальной системе разрешений «Пользователи JIRA».

    Не имеет значения, используют они систему или нет — даже если пользователи ни разу не заходили в систему, для лицензии будут учтены все пользователи.

    Если количество лицензированных пользователей превышено, решением будет удалить разрешение «Пользователи JIRA» у некоторых пользователей.

  3. Лицензия Data Center фактически представляет собой подписку.

    Требуется годовая плата за лицензию.

    По истечении срока работа с системой будет заблокирована.

  4. Цены на лицензии могут меняться со временем.

    Как показывает практика, в большей степени и, возможно, значительно.

    Поэтому, если в этом году ваши лицензии стоят одинаково, то в следующем году стоимость лицензий может увеличиться.

  5. Лицензирование осуществляется по пользователям по уровням (например, пользователи уровня 1001-2000).

    Возможен переход на более высокий уровень за дополнительную плату.

  6. Если количество лицензированных пользователей превышено, новые пользователи будут созданы без права входа в систему (глобальное разрешение «Пользователи JIRA»).

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

  8. Лицензии подлежат только продуктивные установки; в остальном вы можете получить лицензию разработчика: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html .

  9. Для приобретения обслуживания необходимо приобрести обслуживание Renew Software - стоимость составляет примерно 50% от стоимости оригинального программного обеспечения.

    Эта функция недоступна для Data Center и не распространяется на плагины; чтобы поддерживать их, вам придется платить полную стоимость ежегодно.

    Так, годовая поддержка ПО обходится более 50% от общей стоимости ПО в случае редакции Сервер и 100% в случае редакции Data Center – это существенно больше, чем у большинства других вендоров.

    На мой взгляд, это существенный недостаток бизнес-модели Atlassian.

Особенности перехода с Серверной редакции на Дата-Центр:
  1. За обновление версии Server до Data Center взимается плата.

    Стоимость можно узнать здесь https://www.atlassian.com/licensing/data-center .

  2. При переходе с Серверной редакции на Дата-Центр платить за смену редакции плагинов не нужно – плагины для Серверной редакции продолжат функционировать.

    Но необходимо будет продлить лицензии на плагины для редакции Data Center.

  3. Вы можете использовать плагины, у которых нет версии для использования с выпусками Data Center. Однако, конечно, такие плагины могут работать некорректно и лучше заранее предоставить альтернативу таким плагинам.

  4. Переход на редакцию Data Center осуществляется путем установки новой лицензии.

    Однако лицензия на версию Server по-прежнему доступна.

  5. Функциональных различий между редакциями Data Center и Server для пользователей нет; все различия заключаются лишь в административных функциях и возможностях технической установки.

  6. Стоимость программного обеспечения и плагинов различается для редакций Server и Data Center. Разница в стоимости часто составляет менее 5% (незначительная).

    Пример расчета стоимости приведен ниже.



Функциональный объем реализации

Базовый пакет программного обеспечения Atlassian включает в себя огромное количество возможностей, однако зачастую возможностей, предоставляемых системой, катастрофически не хватает. Иногда даже самые простые функции недоступны в базовом пакете, поэтому плагины незаменимы практически для любой реализации.

При этом важно понимать, что Jira — это платформа, здесь можно программировать любой функционал, а плагины — это платная реализация дополнительного функционала.

Для системы Jira мы используем следующие плагины (картинка кликабельна):

Как внедрить Atlassian Jira + Confluence в корпорациях.
</p><p>
 Технические неисправности

Для системы Confluence мы используем следующие плагины (картинка кликабельна):

Как внедрить Atlassian Jira + Confluence в корпорациях.
</p><p>
 Технические неисправности

Комментарии к таблицам с плагинами:

  • Все цены указаны для 2000 пользователей;
  • Указанные цены основаны на указанных ценах https://marketplace.atlassian.com , реальная стоимость (с учетом скидок) ниже;
  • Как видите, общая сумма для редакций Data Center и Server практически одинакова;
  • Для использования выбираются только плагины, поддерживающие версию Data Center. Остальные плагины мы исключили из планов по стабильности системы.

Функциональность кратко описана в графе «Комментарии».

Дополнительные плагины расширили функционал системы:

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

Кроме того, мы используем собственный плагин.

Планируем установку на рабочие станции пользователей Приложение Atlassian Companion .

Это приложение позволяет редактировать файлы во внешних приложениях (MS Office) и возвращать их обратно в Confluence (регистрация).

Приложение для пользовательских рабочих станций (толстый клиент) ALM Works Клиент Jira https://marketplace.atlassian.com/apps/7070 решил не использовать его из-за плохой поддержки со стороны поставщиков и отрицательных отзывов.

Для интеграция с MS Project Мы используем самописное приложение, позволяющее обновлять статусы задач в MS Project из Jira и наоборот. В будущем для тех же целей мы планируем использовать платный плагин.

Septah Bridge — плагин JIRA MS Project , который устанавливается как дополнение к MS Project. Интеграция с внешними приложениями реализовано через ссылки на приложения.

При этом для приложений Atlassian интеграции предварительно настроены и работают сразу после настройки, например, вы можете вывести информацию о Issues в Jira на странице в Confluence. Для доступа к серверам Jira и Confluence используется REST API: https://developer.atlassian.com/server/jira/platform/rest-apis .

API SOAP и XML-RPC устарели и недоступны для использования в более новых версиях.



Заключение

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

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

Буду рад ответить на вопросы в комментариях.

Теги: #Системное администрирование #Управление продуктом #Системный анализ и проектирование #Jira #atlassian #лицензирование #confluence #jira datacenter

Вместе с данным постом часто просматривают: