如何在公司中實施 Atlassian Jira + Confluence。 技術問題

您打算實施 Atlassian 軟件(Jira、Confluence)嗎? 不想犯殘酷的設計錯誤,然後必須在最後一刻解決?

如何在公司中實施 Atlassian Jira + Confluence。 技術問題
那麼你在這裡 - 我們正在考慮在公司中實施 Atlassian Jira + Confluence,同時考慮到各種技術方面。
您好,我是 RSHB 的產品負責人,負責開發基於 Atlassian Jira 和 Confluence 軟件產品的生命週期管理系統 (LCMS)。

在本文中,我將介紹構建 LCMS 的技術方面。 本文對計劃在企業環境中實施或開發 Atlassian Jira 和 Confluence 的任何人都有用。 本文不需要特殊知識,專為初步熟悉 Atlassian 產品而設計。 本文對管理員、產品所有者、項目經理、架構師以及計劃實施基於 Atlassian 軟件的系統的每個人都有用。

介紹

本文將討論在企業環境中實施生命週期管理系統 (LCMS) 的技術問題。 讓我們首先定義這意味著什麼。

什麼是企業解決方案?

這意味著解決方案:

  1. 可擴展。 在負載增加的情況下,存在增加系統容量的技術可能性。 獨立的水平和垂直擴展——垂直擴展增加了服務器的容量,水平擴展增加了系統運行的服務器數量。
  2. 故障安全。 如果一個元素出現故障,系統將保持可用。 一般來說,企業系統不需要容錯,但我們會考慮這樣的解決方案。 我們計劃在系統中有數百個競爭用戶,停機時間將非常關鍵。
  3. 支持的。 該解決方案必須得到供應商的支持。 不受支持的軟件應替換為內部開發或其他受支持的軟件。
  4. 安裝 自我管理 (內部部署)。 自我管理是指不在雲中而是在您自己的服務器上安裝軟件的能力。 更準確地說,這些都是非 SaaS 安裝選項。 在本文中,我們將僅考慮自我管理的安裝選項。
  5. 獨立開發和測試的可能性。 為了組織系統中可預測的變化,需要一個單獨的系統用於開發(系統本身的變化),一個測試系統(Staging)和一個生產系統供用戶工作。
  6. 其他。 支持各種身份驗證場景,支持審計日誌,具有自定義角色模型等。

這些是企業解決方案的主要元素,不幸的是,在設計系統時,它們經常被遺忘。

什麼是生命週期管理系統 (LCMS)?

簡而言之,在我們的例子中,這些是 Atlassian Jira 和 Atlassian Confluence——一個提供用於組織團隊合作的工具的系統。 該系統不會“強加”組織工作的規則,而是提供各種工作工具,例如 Scrum、看板、瀑布模型和可擴展的 Scrum 等。
LCMS這個名稱不是行業術語或通用術語,它只是我們銀行系統的名稱。 LCMS 對我們來說不是錯誤跟踪系統,也不是事件管理系統和變更管理系統。

實施包括哪些內容?

該解決方案的實施包括許多技術和組織問題:

  • 技術能力的分配。
  • 購買軟件。
  • 創建一個團隊來實施解決方案。
  • 解決方案的安裝和配置。
  • 解決方案架構開發。 好榜樣。
  • 操作文檔的開發,包括說明、法規、技術設計、法規等。
  • 改變公司流程。
  • 創建一個支持團隊。 SLA 開發。
  • 用戶培訓。
  • 其他。

在本文中,我們將考慮實施的技術方面,而不是組織組件的詳細信息。

特性 Atlassian

Atlassian 是許多領域的領導者:

Atlassian 的產品具有您需要的所有企業功能。 我會注意到以下特點:

  1. Atlassian 解決方案基於 Java Tomcat Web 服務器。 Apache Tomcat 軟件包含在 Atlassian 軟件中,作為安裝的一部分,您無法更改與 Atlassian 軟件一起安裝的 Apache Tomcat 版本,即使該版本已過時且包含漏洞。 唯一的選擇是等待 Atlassian 使用較新版本的 Apache Tomcat 進行更新。 現在,例如,當前版本的 Jira 有 Apache Tomcat 8.5.42,而 Confluence 有 Apache Tomcat 9.0.33。
  2. 方便的界面,實現了市場上此類軟件的最佳實踐。
  3. 完全可定制的解決方案。 通過改進,您可以為用戶實現基本功能的任何更改。
  4. 發達的生態系統。 有數百個合作夥伴: https://partnerdirectory.atlassian.com,包括俄羅斯的 16 個合作夥伴。 您可以通過俄羅斯的合作夥伴購買 Atlassian 軟件、插件並獲得培訓。 開發和維護大部分插件的是合作夥伴。
  5. 應用商店(插件): https://marketplace.atlassian.com. 插件大大增強了 Atlassian 軟件的功能。 Atlassian 軟件的基本功能非常有限,幾乎任何任務都需要免費或額外付費安裝額外的插件。 因此,軟件成本可能會大大高於最初的估計。
    迄今為止,商店中已經發布了數千個插件,其中近千個已經在數據中心批准的應用程序程序下進行了測試和驗證。 這樣的插件可以認為是穩定的,適合在繁忙的系統中使用。
    插件規劃的問題我勸大家慎重考慮,這極大的影響了解決方案的成本,很多插件會導致系統不穩定,插件廠商也不提供解決問題的支持。
  6. 培訓和認證: https://www.atlassian.com/university
  7. 支持 SSO、SAML 2.0 機制。
  8. 對可伸縮性和容錯的支持僅在數據中心版本中可用。 此版本首次出現於 2014 年 (Jira 6.3)。 Data Center 版本的功能不斷擴展和改進(例如,單節點安裝的可能性僅在 2020 年出現)。 隨著數據中心批准的應用程序的引入,數據中心版本的插件方法在 2018 年發生了很大變化。
  9. 支持成本。 供應商的支持成本幾乎等於軟件許可的全部成本。 下面給出了計算許可證成本的示例。
  10. 缺乏長期發布。 有所謂的 企業版,但與所有其他版本一樣,它們的支持期為 2 年。 不同之處在於,僅針對企業版本發布了修復程序,而沒有添加新功能。
  11. 擴展支持選項(需要額外資金)。 https://www.atlassian.com/enterprise/support-services
  12. 支持多種 DBMS 變體。 Atlassian 附帶一個免費的 H2 數據庫,不建議將其用於生產用途。 以下 DBMS 支持用於生產用途:Amazon Aurora(僅限數據中心)PostgreSQL、Azure SQL、MySQL、Oracle DB、PostgreSQL、MS SQL Server。 支持的版本有限制,通常只支持舊版本,但對於每個 DBMS 都有一個提供供應商支持的版本:
    Jira 支持的平台,
    Confluence 支持的平台.

技術架構

如何在公司中實施 Atlassian Jira + Confluence。 技術問題

方案說明:

  • 圖為我行的實現,此配置僅作為示例,不推薦使用。
  • nginx 為 Jira 和 Confluence 提供反向代理功能。
  • DBMS的容錯是通過DBMS實現的。
  • 使用 Configuration Manager for Jira 插件在環境之間傳輸更改。
  • 圖中的AppSrv是一個原生的報表應用服務器,沒有使用Atlassian軟件。
  • EasyBI 數據庫是為使用 eazyBI Reports and Charts for Jira 插件構建立方體和報告而創建的。
  • Confluence Synchrony 服務(允許同時編輯文檔的組件)沒有分離到單獨的安裝中,而是與 Confluence 一起在同一台服務器上運行。

許可

Atlassian 許可問題值得單獨寫一篇文章,這裡我只提一般原則。
我們遇到的主要問題是數據中心版本的許可問題。 服務器和數據中心版本的許可功能:

  1. 服務器版的許可證是永久性的,即使在許可證過期後客戶也可以使用該軟件。 但許可證過期後,買方將失去獲得產品支持和將軟件更新到最新版本的權利。
  2. 許可基於“JIRA 用戶”全局權限系統中的用戶數量。 他們是否使用該系統並不重要——即使用戶從未登錄過系統,所有用戶都將被考慮到許可證。 如果超過許可用戶數,解決方案是刪除部分用戶的“JIRA 用戶”權限。
  3. 數據中心許可證實際上是一種訂閱。 需要每年支付許可費。 在任期屆滿時,系統的工作將被阻止。
  4. 許可證的費用可能會隨著時間的推移而變化。 正如實踐所示,在很大程度上,也許是顯著的。 因此,如果您今年的許可證費用為一筆費用,那麼明年的許可證費用可能會增加。
  5. 許可由用戶按級別(例如,級別 1001-2000 用戶)完成。 可以升級到更高級別,但需支付附加費。
  6. 如果超過許可用戶數,將創建新用戶,但無權登錄('JIRA Users' 全局權限)。
  7. 插件只能獲得與主軟件相同數量的用戶許可。
  8. 只有生產性安裝需要獲得許可,其餘的您可以獲得開發者許可: https://confluence.atlassian.com/jirakb/get-a-developer-license-for-jira-server-744526918.html.
  9. 購買維護需要購買Renew Software維護——費用約為原軟件成本的50%。 此功能不適用於數據中心並且不適用於插件 - 您必須每年支付全部費用以支持它們。
    因此,對於服務器版,年度軟件支持成本佔軟件總成本的 50% 以上,對於數據中心版,則為 100% - 這明顯高於大多數其他供應商。 在我看來,這是 Atlassian 商業模式的一個顯著缺點。

從服務器版過渡到數據中心版的特點:

  1. 從服務器版到數據中心版的轉換是付費的。 價格可以在這裡找到 https://www.atlassian.com/licensing/data-center.
  2. 從服務器版切換到數據中心時,您無需為更改插件的版本付費 - 服務器版的插件將正常運行。 但有必要為 Data Center 版本更新插件許可證。
  3. 您可以使用沒有適用於 Data Center 版本的版本的插件。 同時,當然,此類插件可能無法正常工作,最好提前提供此類插件的替代方案。
  4. 升級到 Data Center 版本是通過安裝新許可證完成的。 同時,服務器版的許可證仍然可用。
  5. 對於用戶來說,數據中心版和服務器版之間沒有功能差異,所有差異僅在於管理功能和安裝的技術能力。
  6. Server 和 Data Center 版本的軟件和插件成本不同。 成本差異通常小於 5%(不是必需的)。 成本計算示例如下所示。

功能實現範圍

基本的 Atlassian 軟件包包含大量功能,但通常嚴重缺乏系統提供的功能。 有時即使是最簡單的功能在基本包中也沒有,因此幾乎任何實現都離不開插件。 對於Jira系統,我們使用了以下插件(圖片可點擊):
如何在公司中實施 Atlassian Jira + Confluence。 技術問題

對於Confluence系統,我們使用了以下插件(圖片可點擊):
如何在公司中實施 Atlassian Jira + Confluence。 技術問題

對帶有插件的表的評論:

  • 所有價格均按2000個用戶計算;
  • 價格以所示價格為準 https://marketplace.atlassian.com,實際成本(有折扣)更低;
  • 如您所見,數據中心版和服務器版的總量幾乎相同;
  • 僅選擇使用支持 Data Center 版本的插件。 為了系統的穩定性,我們從計劃中排除了其餘的插件。

註釋列中簡要描述了該功能。 附加插件擴展了系統的功能:

  • 添加了幾個可視化工具;
  • 改進整合機制;
  • 增加了瀑布模型項目的工具;
  • 添加了可擴展的 Scrum 工具來組織大型項目團隊的工作;
  • 添加了時間跟踪功能;
  • 添加了用於自動化操作和配置解決方案的工具;
  • 增加了簡化和自動化解決方案管理的功能。

此外,我們使用 Atlassian 配套應用. 此應用程序允許您在外部應用程序 (MS Office) 中編輯文件並將它們返回到 Confluence(簽入)。
用戶工作站應用程序(胖客戶端) ALM Works Jira 客戶端 https://marketplace.atlassian.com/apps/7070 由於供應商支持不力和負面評論,決定不使用。
與 MS 項目集成 我們使用一個自行編寫的應用程序,允許您從 Jira 更新 MS Project 中的問題狀態,反之亦然。 將來,出於同樣的目的,我們計劃使用付費插件 Ceptah Bridge - JIRA MS 項目插件,它作為 MS Project 的附加組件安裝。
與外部應用程序集成 通過應用程序鏈接實現。 同時,Atlassian 應用程序的集成已預先配置並在設置後立即運行,例如,您可以在 Confluence 的頁面上顯示有關 Jira 中的問題的信息。
REST API 用於訪問 Jira 和 Confluence 服務器: https://developer.atlassian.com/server/jira/platform/rest-apis.
SOAP 和 XML-RPC API 已棄用,無法在新版本中使用。

結論

因此,我們考慮了基於 Atlassian 產品實現系統的技術特徵。 提議的解決方案是可能的解決方案之一,非常適合企業環境。

所提出的解決方案是可擴展的、容錯的,包含用於組織開發和測試的三個環境,包含系統中協作的所有必要元素,並提供範圍廣泛的項目管理工具。

我很樂意回答評論中的問題。

來源: www.habr.com