## 中國首位 K8s ingress-nginx reviewer 同時提名成爲 Apache APISIX committer

近日,來自支流科技的工程師張晉濤被添加爲 Kubernetes ingress-nginx 項目的 reviewer,這也是首位來自中國的 Kubernetes Ingress Controller reviewer,與此同時,張晉濤也經過投票提名成爲 Apache APISIX committer。nginx

如下是 OSCHINA 對張晉濤的專訪:git

關於 Kubernetes Ingress Controllergithub

Ingress 是 Kubernetes 名稱或規則的定義,是用於將外部 HTTP(S)流量路由到服務(Service)的規則集合,也是 Kubernetes 中很是重要的外部流量入口。Ingress Controller 是將 Kubernetes 集羣狀態同步到網關的組件的統稱,它並不是 Kubernetes 自帶組件。在衆多 Ingress Controller 組件中,Kubernetes ingress-nginx 是當前使用最爲普遍的 Ingress Controller,也是由 Kubernetes 官方維護的 Ingress Controller 組件之一。docker

圖片

提名 PR 中說道,張晉濤爲 Kubernetes ingress-nginx 審查 PR 作了很是多的幫助。張晉濤最初是一名 Web 開發者,作先後端開發,2014 年接觸 Docker 後,認定容器技術將會成爲主流,便選擇深鑽容器技術。 以後,張晉濤陸續創做了《Kubernetes 上手實踐》和 《Docker 核心知識必知必會》等專欄,並在 2019 年開始持續運營「K8S 生態週報」。同時他也是 Apache APISIX committer, 以及 Containerd、Docker、Helm、Kubernetes、KIND 等衆多開源項目 contributor。 他稱本身是一個熱愛開源、喜歡折騰的工程師。他認爲,參與開源貢獻和開源社區活動,主要仍是應該從興趣出發。對於雲原生的發展,他認爲 Kubernetes 是雲原生的基石,將來的三五年內仍然會是最主要的技術方向,而且正在向 IoT 等領域擴展。此外,近兩年張晉濤也開始注重研究 Kubernetes 安全性問題。apache

圖片

問:請簡單介紹下本身吧?後端

張晉濤:api

我是張晉濤,是一個熱愛開源,喜歡折騰的工程師。目前是 Apache APISIX committer, Kubernetes ingress-nginx reviewer 。在 Docker 和 Kubernetes 相關的不少項目都貢獻過代碼。我也是個一歲孩子的父親。安全

問:恭喜您成爲 Kubernetes ingress-nginx 項目的 reviewer,能夠給讀者們介紹下 reviewer 須要作些什麼嗎?項目選擇 reviewer 的流程是怎樣的?通常注重考察什麼?微信

張晉濤:markdown

reviewer 除了對項目進行代碼貢獻外,最主要就是去 review 其餘貢獻者的代碼了,以保證項目的代碼質量和正確性。與此同時,也須要去跑測試,來驗證 PR 是否符合預期等。 至於項目選擇 reviewer 的流程,這個大前提是對項目要有持續的貢獻,以及很是熟悉該項目。此外還要求至少是 5 個 PR 的主要 reviewer,以及合併過至少 20 個 實質性的 PR 。經過項目的 approver 進行提名,且沒有其餘人反對,就能夠經過 PR 把名字寫在項目的 OWNERS 文件中了。Kubernetes 相關項目的 reviewer 詳細職責和選擇流程等可參考此文檔 github.com/kubernetes/… 剛纔也提到了,可否把握項目代碼的質量和正確性這個是基礎,也是大前提。在此基礎上會重點考察貢獻度和對項目的熟悉程度。

問:您也是目前 Kubernetes Ingress Controller 開源項目惟一一位來自中國的 reviewer。能夠聊聊 Kubernetes Ingress Controller 在 Kubernetes 生態中的地位和影響嗎?有沒有什麼「過來人」的建議能夠給到國內開發者?

張晉濤: Kubernetes Ingress Controller 是 Kubernetes 社區的 Ingress Controller 實現,也是當前使用最爲普遍的 Ingress Controller 。不少公司或者產品都在使用它做爲 Kubernetes 集羣的流量入口。目前在 GitHub 上有 10.5K 的 star 。 Kubernetes Ingress Controller 這個項目在各類生產環境下久經考驗,代碼質量和功能都是很不錯的推薦你們能夠關注和學習下。我在此項目中也看到過不少來自國內的開發者,說明你們對此項目也都是有所關注的,但願你們可以持續貢獻。

問:您運營「K8S 生態週報」已經兩年多了,有沒有總結出一些規律,好比你們更關注什麼樣的信息?

張晉濤:

自我 2019 年開始運營「K8S 生態週報」的這兩年多的時間裏,發現你們更關注 Kubernetes 自身的一些特性變動或者漏洞之類的,這也是我在 「K8S 生態週報」的每一篇中都有一個部分介紹「上游進展」的緣由。 此外,你們對於一些新項目,或者新的提案也比較感興趣,會給我留言,或者加我微信來討論。

問:在「K8S 生態週報」內容的選取上有什麼偏好或者原則嗎?

張晉濤:

在每篇「K8S 生態週報」的開頭,我都有寫:「K8S 生態週報」內容主要包含我所接觸到的 Kubernetes 生態相關的每週值得推薦的一些信息。 我在《K8S 生態週報一週年了》這篇文章中也曾介紹我最初的想法。「Kubernetes 生態中相關信息和變化有不少,在這個信息爆炸的時代,稍不留神就會錯過不少有價值的信息,但持續的去追這些消息,也過於浪費時間,並且還須要去篩選信息。」因此我維護的 「K8S 生態週報」並不是簡單的信息收集,還包含着個人思考及評價。每次週報的內容,都是我我的認爲值得推薦和關注的信息。尤爲是這是一份技術型的週報,而非純資訊型,這也是和其餘人或組織維護的週報最大的不一樣。

問:您在許多技術社區都開設了專欄,也常常更新文章,寫文章給您帶來了哪些收穫?您是如何在寫代碼之餘還保持熱情和精力大量產出文章的?

張晉濤:

寫文章對我而言也是一個總結和學習的過程。一方面,寫文章的時候,對知識進行總結概括,可讓我加深印象以及梳理清楚其中的邏輯。另外一方面,畢竟寫文章和記筆記不一樣,會公開出來,因此對其中可能以前含糊的點,在寫文章的時候,也會再次考證和實踐。 同時,由於我寫的文章,也結識了很多朋友。 寫文章確實須要花費很多的時間和精力,我我的認爲主要仍是得作好時間得規劃和管理。這方面我也還在探索和學習,作的並很差。目前可能更多的仍是選擇壓榨其餘時間吧。我通常會選擇早上起來寫文章。我使用 GitHub 的 Project 和 Issue 等來管理本身須要作的事情。

圖片

問:看您以前的採訪是 2014 年從 Docker 「入坑」容器技術領域,近幾年很是關注 Kubernetes,能對兩者的發展作簡單預測嗎?對 Kubernetes 棄用 Docker 怎麼看?

張晉濤:

其實 Docker 和 Kubernetes 我都在持續的關注。我在 Docker 主倉庫的貢獻者排行榜中是第 66 位。 Docker 目前仍然是使用最爲普遍的容器運行時和桌面容器化開發者工具。並且 Docker 目前的定位,也確實在作開發者工具方面投入了不少精力,包括默認集成了漏洞掃描工具,更好的磁盤管理工具等。將來的三五年內,Docker 在這個方面應該仍然是開發者的第一選擇。 Kubernetes 是雲原生的基石,將來的三五年內,仍然會是最主要的技術方向。此外,Kubernetes 也正在擴展其應用場景,包括 IoT 等領域。 在 Kubernetes 宣佈 kubelet 中廢棄對 dockershim 維護後,我曾專門寫過一篇文章 《Kubernetes 棄用 Docker 了?Docker 不能用了?別逗了!》 事實上,這件事情影響並沒那麼大。由於不用在 Kubernetes 代碼倉庫中的 dockershim 組件,也可使用外部的 dockershim 組件。另外,從 Docker 中捐贈出來的 containerd 項目,已是 CNCF 畢業項目了,我認爲遷移到 containerd 也是個不錯的選擇。開發者本地的環境,能夠繼續使用 Docker 做爲開發工具。

問:您是何時加入支流科技的?爲何加入,支流科技的哪些地方吸引您?目前主要負責什麼工做?

張晉濤: 我是今年 4 月底加入支流科技的。支流科技是一家開源商業化公司,團隊中的全部工程師都深度參與開源項目,在公司中也是以技術做爲主導。全員遠程,經過 GitHub 和 Slack 等進行協做,這種方式跟我平時參與開源項目體驗一致。並且這裏能夠更好的發揮個人特長,也能夠給我足夠的自由,因此我比較喜歡。 我在這邊主要負責 Apache APISIX Ingress Controller ,我但願打造一款更棒的 Ingress Controller 。

問:您是如何成爲 Apache APISIX committer 的?成爲 Apache APISIX committer 以後,有什麼新的工做規劃嗎?

張晉濤:

我維護了 Apache APISIX 的 Helm chart 以及爲 Apache APISIX Ingress Controller 增長了 consumer 和 annotation 等特性,同時還有一些社區的活動。在完成項目 GA 後,通過社區的投票和公示流程後,正式成爲 Apache APISIX committer 。 最主要的規劃仍是在 Apache APISIX Ingress controller 上,準備對其架構進行調整,讓它更加好用。

問:此外您也是 Containerd、Docker、Helm、Kubernetes、KIND 等衆多開源項目的contributor,能夠分享下參與開源項目貢獻和開源社區活動的經驗和想法嗎?

張晉濤:

我認爲參與開源貢獻和開源社區活動等,主要仍是應該從興趣出發。在參與項目的時候,應該儘量選擇本身接觸較多的,或者更感興趣的項目。不要爲了參與而參與,這樣會把本身搞的比較累,並且對本身和社區都不必定是好事兒。 開源社區是開放和包容的,不管你是提交 PR 來改進項目,仍是提 issue 反饋 bug ,社區都是歡迎的。 另外須要補充的一點,也是以前不少人在問個人一個問題,「參與開源社區有什麼回報?」我參與開源好久了,除了目前我在支流科技能夠全職作開源外,以前待過的任何一家公司,我都只能利用本身的業餘時間去參與,花費了挺多時間和精力。但其實並無任何物質上的回報。可能只是興趣所在吧,剛好如今把興趣變成了工做(還有一份不錯的薪水)。歡迎任何對開源感興趣的小夥伴給我發郵件交流,zhangjintao@moelove.info

問:雲原生向來也是開源爭議比較多的領域之一,好比在開源上貢獻較多的公司和另外一些從開源項目中獲取價值較多的公有云廠商在利益上的衝突。您怎麼看?這種矛盾能夠解決嗎?

張晉濤: 這個問題由來已久,但也不是不能調和。就目前我看到的狀況來講,相比 3 年多以前已經好不少了,多數雲廠商也正在積極貢獻。不管說是爲了爭取拿到更多話語權,仍是爲了解決本身所遇到的問題,在回饋社區。我以爲都是好事兒。只有這樣持續的進行正循環,開源軟件和社區才能更好的發展。

關於 Apache APISIX

Apache APISIX 是一個動態、實時、高性能的開源 API 網關,提供負載均衡、動態上游、灰度發佈、服務熔斷、身份認證、可觀測性等豐富的流量管理功能。Apache APISIX 能夠幫忙企業快速、安全的處理 API 和微服務流量,包括網關、Kubernetes Ingress 和服務網格等。全球已有數百家企業使用 Apache APISIX 處理關鍵業務流量,涵蓋金融、互聯網、製造、零售、運營商等等,好比美國航空航天局(NASA)、歐盟的數字工廠、中國航信、中國移動、騰訊、華爲、微博、網易、貝殼找房、360、泰康、奈雪的茶等。200 餘位貢獻者,一同締造了 Apache APISIX 這個世界上最活躍的開源網關項目。聰明的開發者們!快來加入這個活躍而多樣化的社區,一塊兒來給這個世界帶來更多美好的東西吧!- Apache APISIX 項目地址:github.com/apache/apis…- Apache APISIX 官網:apisix.apache.org/

相關文章
相關標籤/搜索