摘要:是什么最初由于年推出,并已被和社區(qū)用作打包部署和管理原生應(yīng)用程序的方法。原生應(yīng)用程序是一個(gè)部署在上的應(yīng)用程序,使用和眾所周知的工具進(jìn)行管理,如。的協(xié)調(diào)循環(huán)將選擇這些,并執(zhí)行所需的操作以實(shí)現(xiàn)所需的狀態(tài)。目前在上列出的的一些示例包括和。
作者:Diane Mueller,紅帽云平臺(tái)社區(qū)發(fā)展總監(jiān)
開發(fā)者和Kubernetes管理員面臨的重要挑戰(zhàn)之一,是缺乏快速查找在Kubernetes提供運(yùn)營(yíng)就緒的公共服務(wù)的能力。通常情況下,存在特定服務(wù)的Operator - 這種模式在2016年推出并獲得了動(dòng)力 - 對(duì)于Kubernetes服務(wù)的運(yùn)營(yíng)就緒是一個(gè)很好的信號(hào)。但是,迄今為止還沒有Operator注冊(cè)表來(lái)簡(jiǎn)化發(fā)現(xiàn)此類服務(wù)。
為了幫助應(yīng)對(duì)這一挑戰(zhàn),今天Red Hat與AWS、Google Cloud和Microsoft合作推出OperatorHub.io。OperatorHub.io使開發(fā)者和Kubernetes管理員能夠查找和安裝策劃好的、Operator支持的服務(wù),其中包括基礎(chǔ)文檔、社區(qū)或供應(yīng)商的主動(dòng)維護(hù)、基本測(cè)試以及Kubernetes優(yōu)化生命周期管理的打包。
目前在OperatorHub.io中的Operator只是開始。我們邀請(qǐng)Kubernetes社區(qū)加入我們,通過(guò)在OperatorHub.io上開發(fā)、打包和發(fā)布Operator,為Operator建立一個(gè)充滿活力的社區(qū)。
OperatorHub.io提供什么?OperatorHub.io旨在滿足Kubernetes開發(fā)者和用戶的需求。對(duì)于前者,它提供了通用的注冊(cè)表,他們可以在其中發(fā)布他們的Operator以及描述、相關(guān)的詳細(xì)信息,如版本、鏡像、代碼倉(cāng)庫(kù),并打包準(zhǔn)備方便安裝。他們也可以對(duì)已發(fā)布的Operator發(fā)布更新版本。
用戶可以在一個(gè)中心位置發(fā)現(xiàn)和下載Operator,該Operator的內(nèi)容已根據(jù)前面提到的標(biāo)準(zhǔn)進(jìn)行篩選并掃描已知漏洞。此外,開發(fā)者可以使用他們引入的CustomResources的說(shuō)明性示例,指導(dǎo)其Operator的用戶,與應(yīng)用程序進(jìn)行交互。
Operator是什么?Operator最初由CoreOS于2016年推出,并已被Red Hat和Kubernetes社區(qū)用作打包、部署和管理Kubernetes原生應(yīng)用程序的方法。Kubernetes原生應(yīng)用程序是一個(gè)部署在Kubernetes上的應(yīng)用程序,使用Kubernetes API和眾所周知的工具進(jìn)行管理,如kubectl。
Operator實(shí)現(xiàn)為自定義控制器,用于監(jiān)視某些Kubernetes資源的顯示、修改或刪除。這些通常是Operator“擁有”的CustomResourceDefinition。在這些對(duì)象的spec屬性中,用戶聲明應(yīng)用程序或操作的所需狀態(tài)。Operator的協(xié)調(diào)循環(huán)將選擇這些,并執(zhí)行所需的操作以實(shí)現(xiàn)所需的狀態(tài)。例如,可以通過(guò)創(chuàng)建EtcdCluster類型的新資源,來(lái)表達(dá)創(chuàng)建高可用性etcd集群的意圖:
apiVersion: "etcd.database.coreos.com/v1beta2" kind: "EtcdCluster" metadata: name: "my-etcd-cluster" spec: size: 3 version: "3.3.12"
這樣,EtcdOperator將負(fù)責(zé)創(chuàng)建運(yùn)行版本v3.3.12的3節(jié)點(diǎn)etcd集群。類似地,可以定義類型為EtcdBackup的對(duì)象,以表示創(chuàng)建etcd數(shù)據(jù)庫(kù)一致備份到S3存儲(chǔ)桶的意圖。
如何創(chuàng)建和運(yùn)行Operator?一種入門方法是使用Operator框架,這是一個(gè)開源工具包,提供SDK、生命周期管理、計(jì)量和監(jiān)視功能。它使開發(fā)者能夠構(gòu)建、測(cè)試和打包Operator。Operator可以用幾種編程和自動(dòng)化語(yǔ)言實(shí)現(xiàn),包括Go、Helm和Ansible,這三種語(yǔ)言都直接由SDK支持。
如果你有興趣創(chuàng)建自己的Operator,我們建議你查看Operator框架以開始使用。
Operator的功能范圍各不相同,從基本功能到應(yīng)用程序的特定操作邏輯,以及備份、恢復(fù)或調(diào)整等高級(jí)方案的自動(dòng)化。除了基本安裝之外,高級(jí)Operator可以更加無(wú)縫地處理升級(jí)并自動(dòng)應(yīng)對(duì)故障。目前,OperatorHub.io上的Operator來(lái)自不同成熟度范圍,但我們預(yù)計(jì)它們會(huì)隨著時(shí)間而持續(xù)成熟。
雖然不需要使用SDK實(shí)現(xiàn)OperatorHub.io上的Operator,但它們是打包給通過(guò)Operator Lifecycle Manager(OLM)進(jìn)行部署。格式主要由稱為ClusterServiceVersion的YAML清單組成。它提供有關(guān)Operator擁有或要求的CustomResourceDefinitions的信息、所需的RBAC定義、存儲(chǔ)圖像的位置等。此文件通常附帶定義Operator自己的CRD的其他YAML文件。OLM在用戶請(qǐng)求安裝Operator以提供依賴性解析和自動(dòng)化時(shí)處理此信息。
OperatorHub.io上的Operator列表是什么意思?要列出,Operator必須成功顯示群集生命周期功能,打包為CSV并通過(guò)OLM維護(hù),以及為其預(yù)期用戶提供可接受的文檔。
目前在OperatorHub.io上列出的Operator的一些示例包括:Amazon Web Services Operator、Couchbase Autonomous Operator、CrunchyData’s PostgreSQL、etcd Operator、Jaeger Operator for Kubernetes、Kubernetes Federation Operator、MongoDB Enterprise Operator、Percona MySQL Operator、PlanetScale’s Vitess Operator、Prometheus Operator和Redis Operator。
想要將你的Operator添加到OperatorHub.io?跟著這些步驟如果你有現(xiàn)有的Operator,請(qǐng)遵循貢獻(xiàn)指南使用社區(qū)Operator倉(cāng)庫(kù)的分支。每個(gè)貢獻(xiàn)包含CSV、所有CustomResourceDefinitions、訪問(wèn)控制規(guī)則以及安裝和運(yùn)行Operator所需的容器映像的資料,其功能描述和支持的Kubernetes版本等其他信息。EtcdOperator可以作為完整的示例,包括Operator的多個(gè)版本。
在你自己的集群上測(cè)試Operator之后,將PR提交到社區(qū)存儲(chǔ)庫(kù),其中包含此目錄結(jié)構(gòu)的所有YAML文件??梢砸韵嗤姆绞桨l(fā)布Operator的后續(xù)版本。剛開始這將是手動(dòng)審查,但往后會(huì)自動(dòng)化。由維護(hù)者合并之后,它將顯示在OperatorHub.io上,以及其文檔和方便的安裝方法。
想了解更多?參加即將舉行的Kubernetes Operator框架實(shí)踐研討會(huì):3月7日在Pasadena的ScaleX舉行,以及3月11日在Santa Clara的OpenShift Commons Gathering on Operating舉行
聽聽Daniel Messer和Diane Mueller關(guān)于“Operator現(xiàn)況”的OpenShift Commons簡(jiǎn)報(bào)
加入社區(qū)Kubernetes-Operator Slack Channel和Operator框架Google Group的在線對(duì)話
最后,閱讀如何將你的Operator添加到OperatorHub.io:https://operatorhub.io/contri...
KubeCon + CloudNativeCon和Open Source Summit大會(huì)日期:
會(huì)議日程通告日期:2019 年 4 月 10 日
會(huì)議活動(dòng)舉辦日期:2019 年 6 月 24 至 26 日
KubeCon + CloudNativeCon和Open Source Summit贊助方案
KubeCon + CloudNativeCon和Open Source Summit多元化獎(jiǎng)學(xué)金現(xiàn)正接受申請(qǐng)
KubeCon + CloudNativeCon和Open Source Summit即將首次合體落地中國(guó)
KubeCon + CloudNativeCon和Open Source Summit購(gòu)票窗口,立即購(gòu)票!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/32893.html
摘要:和網(wǎng)站不時(shí)發(fā)布來(lái)之全世界的博客文章和案例研究。提交案例研究案例研究強(qiáng)調(diào)組織如何使用解決實(shí)際問(wèn)題??纯船F(xiàn)有案例研究材料。 showImg(https://segmentfault.com/img/bVbp45W?w=1280&h=545); CNCF和Kubernetes網(wǎng)站不時(shí)發(fā)布來(lái)之全世界的博客文章和案例研究。 近期的博客文章有: 使用Ansible和Vagrant設(shè)置Kubern...
摘要:和網(wǎng)站不時(shí)發(fā)布來(lái)之全世界的博客文章和案例研究。提交案例研究案例研究強(qiáng)調(diào)組織如何使用解決實(shí)際問(wèn)題??纯船F(xiàn)有案例研究材料。 showImg(https://segmentfault.com/img/bVbp45W?w=1280&h=545); CNCF和Kubernetes網(wǎng)站不時(shí)發(fā)布來(lái)之全世界的博客文章和案例研究。 近期的博客文章有: 使用Ansible和Vagrant設(shè)置Kubern...
摘要:例如,在的生產(chǎn)環(huán)境中,群集每秒能夠處理超過(guò)萬(wàn)條消息,而且其數(shù)據(jù)聚合率接近。為高吞吐量的,調(diào)優(yōu)緩沖區(qū)的大小特別是和以字節(jié)為單位。 來(lái)源:51CTO技術(shù)棧(ID:blog51cto) Apache Kafka是一款流行的分布式數(shù)據(jù)流平臺(tái),它已經(jīng)廣泛地被諸如New Relic(數(shù)據(jù)智能平臺(tái))、Uber、Square(移動(dòng)支付公司)等大型公司用來(lái)構(gòu)建可擴(kuò)展的、高吞吐量的、高可靠的實(shí)時(shí)數(shù)據(jù)流系統(tǒng)...
閱讀 3577·2023-04-26 02:05
閱讀 2021·2021-11-19 11:30
閱讀 4231·2021-09-30 09:59
閱讀 3184·2021-09-10 10:51
閱讀 2614·2021-09-01 10:30
閱讀 1496·2021-08-11 11:20
閱讀 2626·2019-08-30 15:54
閱讀 572·2019-08-30 10:49