讀古今文學網 > OpenStack系統架構設計實戰 > 第12章 OpenStack孵化項目簡介 >

第12章 OpenStack孵化項目簡介

對於OpenStack項目,在OpenStack集成並隨版本正式發佈前,都需要經歷至少兩個開發週期的孵化。

技術委員會會根據項目技術成熟度、項目範圍合理性、與已有項目的互補性等,對孵化項目請求進行全面評估。

1.項目範圍

1)項目必須有確定且明確的範圍。

2)項目範圍必須符合OpenStack整體方向,並與當前OpenStack的技術階段匹配。

3)項目不能與OpenStack其他項目功能有重疊。如果存在,那麼需要有清晰的計劃,保證項目不會長期重疊。

4)項目必須盡可能地利用OpenStack其他項目中已有功能。

2.成熟度

1)項目應該有一個活躍的開發團隊,對項目持續貢獻。

2)項目主體架構必須穩定,主體架構不應該重新設計和重寫。

3.進程

1)項目必須托管在Stackforge,因此必須使用Git版本控制系統。

2)項目必須遵循OpenStack協調項目接口(如tox、pbr等)。

3)在合理的情況下,項目應該盡可能使用Oslo庫或者Oslo-incubator庫。

4)項目必須有明確的代碼檢查團隊,應該由團隊多人對代碼進行檢查,而不能僅由一人完成。

5)項目檢查標準應該與其他OpenStack項目一致。

6)項目討論應該使用OpenStack官方郵件列表。

4.接口(API)

1)項目API必須穩定合理。

2)項目接口必須遵循Rest原則,即提供Restful接口。

3)項目必須提供Rest API對應的Python客戶端。

5.質量保證(QA)

項目必須建立基本的devstack-gate任務。

6.文檔及用戶支持

1)項目必須提供相應的文檔給致力於貢獻代碼的開發者。

2)項目必須提供API文檔。

7.法律要求

1)項目必須遵循Apache v2許可協議。

2)項目不可以採用可能限制項目分發或部署的依賴庫。

3)所有項目貢獻者必須簽署CLA(Inpidual Contributor License Agreement),以避免可能的版權糾紛。

4)項目必須沒有已知的商標侵權問題。

當項目形成了一個完善、活躍的代碼貢獻團隊和代碼review團隊,項目各方面條件已日趨成熟時,OpenStack技術委員會會最終決策項目是否可以進入集成階段,並最終隨版本發佈。

OpenStack K版本比較活躍的孵化項目如圖12-1左側所示。本章將對這5個項目進行介紹,需要強調的是:OpenStack發展迅速,本書對OpenStack孵化項目的描述僅限於K版本。