雲原生計算基金會(簡稱CNCF,負責為Kubernetes與Prometheus等開源技術提供支援)日前宣佈,繼去年畢業的Kubernetes、Prometheux以及Envoy等開源技術之後,CoreDNS成為其2019年的首個畢業專案。要從孵化階段走向畢業,專案必須在市場上表現出活躍的採用積極性、多樣性、規範的治理流程,以及對於社群可持續性與包容性做出堅定承諾。
CoreDNS是一套快速、靈活且現代的DNS伺服器方案,亦可在雲原生部署場景下提供服務發現功能。基於其提供了能夠向下相容,且具備可擴充套件性的Kubernetes整合能力,因此在Kubernetes的最新版本(1.13)中CoreDNS被指定為未來一切部署場景中的預設DNS選項。此外,該伺服器還適用於配合AWS(啟用AWS Route 53與etcd)的混合雲環境下的原生雲整合,未來亦有計劃進一步為Google Cloud DNS提供支援。
雲原生計算基金會COO Chris Aniszczyk表示,“CoreDNS已經在最近兩年中成為雲原生計算基金會不可或缺的重要專案,併在社群的努力推動下達到畢業水平,同時正式成為Kubernetes的預設DNS伺服器。此外,CoreDNS亦是一款出色的獨立DNS伺服器方案,正不斷被用於更多其它環境——我們很高興能夠隨著專案的發展而不斷為其社群提供支援。”
該專案由Miek Gieben於2016年3月正式建立,他當時擔任谷歌公司的站點可靠性工程師。在構建CoreDNS時,社群考慮到其它DNS伺服器方案的侷限性,希望打造出一款能夠與多個後端(例如etcd、Consul以及Kubernetes)進行通訊的通用型DNS伺服器。CoreDNS隨後於2017年加入到Cloud Native Sandbox當中,並於2018年2月晉升為孵化專案。如今,該專案已經擁有100多位貢獻者,16位活躍維護者,亦有眾多組織機構在Kubernetes內外的生產環境中加以使用——包括Bose、Hellofresh、Skyscanner、SoundCloud、Trainline以及Zalando等。
CoreDNS維護者Yong Tang表示,“自從2017年年初加入雲原生計算基金會以來,CoreDNS迎來了良好的社群增長表現,亦在生產環境中展現出驚人的應用空間。我們非常感謝雲原生計算基金會對CoreDNS專案的大力幫助,亦期待繼續保持合作以不斷擴大我們的社群規模。”
Okkur Labs創始人兼CoreDNS維護者Michael Grosser指出,“CoreDNS專案及社群已經取得巨大進展,而成為雲原生計算基金會畢業專案則標志著一大重要里程碑。從一套用於釋出Prometheus指標的簡單DNS伺服器,到一款具備固有靈活性的成熟DNS解決方案,再到大多數Kubernetes叢集內的信心元件併為無數使用者帶來更理想的穩定性與靈活性,這一切都令我們對於CoreDNS背後強大的支援社群充滿信心。”
谷歌雲端計算高階軟體工程師、CoreDNS高階維護者John Belamaric表示,“CoreDNS的靈活性以及基於外掛的架構設計,已經被證明是一種理想的DNS伺服器構建思路。CoreDNS的易於整合與可擴充套件能力對於各種DNS服務與用例的實現而言至關重要——從Kubernetes服務發現到基於策略的DNS與廣告攔截,都離不開這兩大重要能力。雲原生計算基金會對該專案提供的支援同樣不可或缺,我們很高興能夠正式畢業並繼續發展我們的多元化專案社群。”
Infoblox公司軟體經理Francois Tur指出,“作為一位專案維護者,我專註於調整CoreDNS以供Kubernetes社群使用,以Kubernetes中的CoreDNS部署場景為基礎開展協作,並驗證CoreDNS作為Kubernetes叢集指定DNS伺服器的實際效果。今天CoreDNS從雲原生計算基金會畢業,對於我們的專案社群來講是個了不起的成熟。這一旅程開始於兩年多之前,而且一切都才剛剛開始。”
為了正式從孵化狀態畢業,CoreDNS專案遵循雲原生計算基金會的行為準則。CoreDNS團隊還在過去一年當中先後釋出了12個版本,專案目前擁有35款內建外掛以及15款外部外掛,其中一部分由Kubernetes社群開發而成。此外,CoreDNS在過去兩年中還參與到谷歌公司組織的程式碼夏令營(Google Summer of Code)當中——活動中導師將與在校實習生們結對探索,旨在推動雲原生專案的不斷發展。
Infoblox公司高階軟體經理Naveen Singh表示,“在Infoblox公司,我們很自豪地能夠在自己的SAAS DNS產品當中使用CoreDNS,而且目前也已經在全球範圍內部署了眾多CoreDNS實體。CoreDNS目前正在為全體Infoblox雲客戶支援生產DNS流量,其中也包括不少財富五百強企業。我們非常欣賞CoreDNS的外掛架構,其為我們帶來了巨大的靈活性空間、更高的開發速度與更快的釋出週期。”GitNS創始人Michael Grosser指出,“將GitNS.com建立在CoreDNS這一堅實的基礎之上,是我做出的最明智的決定之一。考慮到DNS的基本特性,要求我們必須選擇一套具有高效能、高可靠性以及強大擴充套件能力的系統作為構建基礎。CoreDNS專案擁有著令人難以置信的卓越社群,我們非常樂於為其提供支援。隨著CoreDNS從雲原生計算基金會正式畢業,其將成為構建基礎設施與定製化用例中最理想的DNS平臺選項之一。”
-
CoreDNS是一套由Go語言編寫而成的DNS伺服器,其遵循Apache License Version 2許可,且完全開源。
-
CoreDNS憑藉著強大的靈活性而適用於多種環境及用例。其可用於Kubernetes服務發現、權威DNS伺服器、高DNS強度應用的本地快取等等。其中的各款外掛能夠彼此連結以實現Prometheus指標檢測等額外功能,亦可以開箱即用的方式帶來重寫查詢等功能。
-
除了從標準區域檔案提供DNS之外,CoreDNS還透過Kubernetes外掛與Kubernetes相整合,可利用etcd外掛直接對接etcd,並能夠與多種其它後端資料提供程式進行整合。
-
若需下載CoreDNS專案本體,或者參閱與專案相關的說明檔案與背景資訊,請訪問 https://github.com/coredns/coredns。
原文連結:https://www.cncf.io/announcement/2019/01/24/coredns-graduation/