給學習 OpenStack 架構的新手入門指南
你的講演介紹中說你將「深入架構核心,並解釋你需要知道的關於讓 OpenStack 工作起來的每一件事情」。這對於 40 分鐘的講演來說是一個艱巨的任務。那麼,對於學習 OpenStack 架構的新手來說最需要知道那些事情呢?
Elizabeth K. Joseph (EKJ): 我們沒有為 OpenStack 使用 GitHub 這種提交補丁的方式,這是因為這樣做會對新手造成巨大的困擾,儘管由於歷史原因我們還是在 GitHub 上維護了所有庫的一個鏡像。相反,我們使用了一種完全開源的評審形式,而且持續集成(CI)是由 OpenStack 架構團隊維護的。與之有關的,自從我們使用了 CI 系統,每一個提交給 OpenStack 的改變都會在被合併之前進行測試。
Paul Belanger (PB): 這個項目中的大多數都是富有激情的人,因此當你提交的補丁被某個人否定時不要感到沮喪。
Christopher Aedo (CA):社區會幫助你取得成功,因此不要害怕提問或者尋求更多的那些能夠促進你理解某些事物的引導者。
在你的講話中,對於一些你無法涉及到的方面,你會向新手推薦哪些在線資源來讓他們更加容易入門?
PB:當然是我們的 OpenStack 項目架構文檔。我們已經花了足夠大的努力來儘可能讓這些文檔能夠隨時保持最新狀態。在 OpenStack 運行中使用的每個系統都作為一個項目,都製作了專門的頁面來進行說明。甚至於連 OpenStack 雲這種架構團隊也會放到線上。
EKJ:我對於架構文檔這件事上的觀點和 Paul 是一致的,另外,我們十分樂意看到來自那些正在學習項目的人們提交上來的補丁。我們通常不會意識到我們忽略了文檔中的某些內容,除非它們恰好被人問起。因此,閱讀、學習,會幫助我們修補這些知識上的漏洞。你可以在 [OpenStack 架構郵件清單]提出你的問題,或者在我們位於 FreeNode 上的 #OpenStack-infra 的 IRC 專欄發起你的提問。
CA:我喜歡這個詳細的帖子,它是由 Ian Wienand 寫的一篇關於構建鏡像的文章。
"gotchas" 會是 OpenStack 新的貢獻者們所尋找的嗎?
EKJ:向項目作出貢獻並不僅僅是提交新的代碼和新的特性;OpenStack 社區高度重視代碼評審。如果你想要別人查看你的補丁,那你最好先看看其他人是如何做的,然後參考他們的風格,最後一步步做到你也能夠向其他人一樣提交清晰且結構分明的代碼補丁。你越是能讓你的同伴了解你的工作並知道你正在做的評審,那他們也就越有可能及時評審你的代碼。
CA:我看到過大量的新手在面對 Gerrit 時受挫,閱讀開發者引導中的開發者工作步驟,有可能的話多讀幾遍。如果你沒有用過 Gerrit,那你最初對它的感覺可能是困惑和無力的。但是,如果你隨後做了一些代碼評審的工作,那麼你就能輕鬆應對它。此外,我是 IRC 的忠實粉絲,它可能是一個獲得幫助的好地方,但是,你最好保持一個長期在線的狀態,這樣,儘管你在某個時候沒有出現,人們也可以回答你的問題。(閱讀 IRC,開源成功的秘訣)你不必總是在線,但是你最好能夠輕鬆的在一個頻道中回溯之前信息,以此來跟上最新的動態,這種能力非常重要。
PB:我同意 Elizabeth 和 Chris 的觀點, Gerrit 是需要花點精力的,它將匯聚你的開發方面的努力。你不僅僅要提交代碼給別人去評審,同時,你也要能夠評審其他人的代碼。看到 Gerrit 的界面,你可能一時會變的很困惑。我推薦新手去嘗試 Gertty,它是一個基於控制台的終端界面,用於 Gerrit 代碼評審系統,而它恰好也是 OpenStack 架構所驅動的一個項目。
你對於 OpenStack 新手如何通過網路與其他貢獻者交流方面有什麼好的建議?
PB:對我來說,是通過 IRC 並在 Freenode 上參加 #OpenStack-infra 頻道(IRC 日誌)。這頻道上面有很多對新手來說很有價值的資源。你可以看到 OpenStack 項目日復一日的運作情況,同時,一旦你知道了 OpenStack 項目的工作原理,你將更好的知道如何為 OpenStack 的未來發展作出貢獻。
CA:我想要為 IRC 再次說明一點,在 IRC 上保持全天在線記錄對我來說有非常重大的意義,因為我會時刻保持連接並隨時接到提醒。這也是一種非常好的獲得幫助的方式,特別是當你和某人卡在了項目中出現的某一個難題的時候,而在一個活躍的 IRC 頻道中,總會有一些人很樂意為你解決問題。
EKJ:OpenStack 開發郵件列表對於能夠時刻查看到你所致力於的 OpenStack 項目的最新情況是非常重要的。因此,我推薦一定要訂閱它。郵件列表使用主題標籤來區分項目,因此你可以設置你的郵件客戶端來使用它來專註於你所關心的項目。除了在線資源之外,全世界範圍內也成立了一些 OpenStack 小組,他們被用來為 OpenStack 的用戶和貢獻者提供服務。這些小組可能會定期要求 OpenStack 主要貢獻者們舉辦座談和活動。你可以在 MeetUp.com 上搜素你所在地域的貢獻者活動聚會,或者在 groups.openstack.org 上查看你所在的地域是否存在 OpenStack 小組。最後,還有一個每六個月舉辦一次的 OpenStack 峰會,這個峰會上會作一些關於架構的演說。當前狀態下,這個峰會包含了用戶會議和開發者會議,會議內容都是和 OpenStack 相關的東西,包括它的過去,現在和未來。
OpenStack 需要在那些方面得到提升來讓新手更加容易學會並掌握?
PB: 我認為我們的 account-setup 環節對於新的貢獻者已經做的比較容易了,特別是教他們如何提交他們的第一個補丁。真正參與到 OpenStack 開發者模式中是需要花費很大的努力的,相比貢獻者來說已經顯得非常多了;然而,一旦融入進去了,這個模式將會運轉的十分高效和令人滿意。
CA: 我們擁有一個由專業開發者組成的社區,而且我們的關注點都是發展 OpenStack 本身,同時,我們致力於讓用戶付出更小的代價去使用 OpenStack 雲架構平台。我們需要發掘更多的應用開發者,並且鼓勵更多的人去開發能在 OpenStack 雲上完美運行的雲應用程序,我們還鼓勵他們在社區 App 目錄上去貢獻那些由他們開發的應用。我們可以通過不斷提升我們的 API 標準和保證我們不同的庫(比如 libcloud,phpopencloud 以及其他一些庫)持續地為開發者提供可信賴的支持來實現這一目標。還有一點就是通過舉辦更多的 OpenStack 黑客比賽。所有的這些事情都可以降低新人的學習門檻,這樣也能引導他們與這個社區之間的關係更加緊密。
EKJ: 我已經致力於開源軟體很多年了。但是,對於大量的 OpenStack 開發者而言,這是一個他們自己所從事的第一個開源項目。我發現他們之前使用私有軟體的背景並沒有為他們塑造開源的觀念、方法論,以及在開源項目中需要具備的合作技巧。我樂於看到我們能夠讓那些曾經一直在使用私有軟體工作的人能夠真正的明白他們在開源如軟體社區所從事的事情的巨大價值。
我想把 2016 年打造成開源俳句之年。請用俳句來向新手解釋 OpenStack 一下。
(LCTT 譯註:俳句(Haiku)是一種日本古典短詩,以5-7-5音節為三句,校對者不揣淺陋,謅了幾句歪詩,勿笑 :D,另外 OpenStack 本身音節太長,就捏造了一個中文譯名「開棧」——明白就好。)
PB: 開棧在雲上 // 倘鍾情自由軟體 // 先當造補丁
CA: 時光不必久 // 開棧將支配世界 // 協力早來到
EKJ: 開棧有自由 // 放在自家伺服器 // 運行你的雲
Paul、Elizabeth 和 Christopher 在 4 月 25 號星期一上午 11:15 於奧斯汀舉辦的 OpenStack 峰會發表了演說。
via: https://opensource.com/business/16/4/interview-openstack-infrastructure-beginners
作者:Rikki Endsley 譯者:kylepeng93 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive