新聞中心
當(dāng)前位置:網(wǎng)站首頁(yè) > 新聞中心
云原生應(yīng)用程序和數(shù)據(jù)需要確保安全
將數(shù)據(jù)作為云原生應(yīng)用程序的一部分進(jìn)行管理非常困難。對(duì)于許多企業(yè)而言,當(dāng)前冠狀病毒疫情帶來(lái)的壓力加劇了他們?cè)谲浖_(kāi)發(fā)方面所面臨的挑戰(zhàn)。數(shù)字化轉(zhuǎn)型已從一種增長(zhǎng)戰(zhàn)略變成了一種生存之道。在線商務(wù)幾乎在一夜之間得到爆炸式增長(zhǎng),達(dá)到了只有在假日期間才會(huì)出現(xiàn)的水平。
這將是一個(gè)推動(dòng)更多變革的推動(dòng)力,因?yàn)槠髽I(yè)或者致力采用新技術(shù),或者努力在競(jìng)爭(zhēng)中保持領(lǐng)先。基于云原生IT的新方法將會(huì)有所幫助。
更敏捷、更多數(shù)據(jù)……更多問(wèn)題?
為了采取必要的措施,開(kāi)發(fā)人員正在研究如何利用云原生方法。但是,這不僅僅是將現(xiàn)有應(yīng)用程序遷移到云平臺(tái)上并添加更多基礎(chǔ)設(shè)施那樣簡(jiǎn)單。它需要圍繞軟件容器構(gòu)建的新架構(gòu)和采用的業(yè)務(wù)流程工具如何在從構(gòu)建到生產(chǎn)的自動(dòng)化應(yīng)用程序中發(fā)揮作用,如何在容器之間有效地使用API??,然后如何通過(guò)應(yīng)用程序基礎(chǔ)設(shè)施的動(dòng)態(tài)更改來(lái)處理數(shù)據(jù)。
Kubernetes現(xiàn)在是基于這種方法來(lái)編排容器和管理應(yīng)用程序的一種首選方法。 Kubernetes可以處理設(shè)置應(yīng)用程序工作負(fù)載,確保其繼續(xù)運(yùn)行,并應(yīng)對(duì)規(guī)模挑戰(zhàn)。但是,盡管Kubernetes可以編排應(yīng)用程序,但它不能解決數(shù)據(jù)管理問(wèn)題。應(yīng)用程序創(chuàng)建的所有信息仍然需要管理。
傳統(tǒng)上,要想成功地使用像Apache Cassandra這樣的數(shù)據(jù)庫(kù),用戶(hù)必須從操作系統(tǒng)開(kāi)始理解整個(gè)軟件堆棧。他們還必須確保其一致性并遵循嚴(yán)格的操作和部署手冊(cè)。這種方法不僅需要深入了解數(shù)據(jù)庫(kù)的工作原理,還需要隨著時(shí)間的推移進(jìn)行一些人工干預(yù)以處理擴(kuò)展。
使數(shù)據(jù)與應(yīng)用程序一樣易于編排
與Kubernetes一起管理云原生應(yīng)用程序數(shù)據(jù)需要一些計(jì)劃。一種方法是使每個(gè)服務(wù)的數(shù)據(jù)庫(kù)實(shí)例位于Kubernetes集群之外。這使企業(yè)的數(shù)據(jù)基礎(chǔ)設(shè)施脫離了控制平臺(tái),并為那些現(xiàn)在必須管理兩個(gè)環(huán)境的用戶(hù)創(chuàng)建了額外的工作。而這種情況并不理想。
更好的方法是從物理角度將數(shù)據(jù)與應(yīng)用程序組件一起分布,但需要在同一控制平臺(tái)內(nèi)。這確保了每個(gè)應(yīng)用程序服務(wù)都可以有效地讀寫(xiě)數(shù)據(jù),企業(yè)可以將這些數(shù)據(jù)和應(yīng)用程序作為一個(gè)整體進(jìn)行管理。更重要的是,這種方法應(yīng)該能夠像任何軟件容器映像一樣在多個(gè)云服務(wù)或云平臺(tái)上進(jìn)行擴(kuò)展。
為了與諸如Apache Cassandra之類(lèi)的數(shù)據(jù)庫(kù)一起運(yùn)行Kubernetes,企業(yè)將需要在Kubernetes集群中使用Cassandra Operator。這使Cassandra節(jié)點(diǎn)可以作為服務(wù)在現(xiàn)有Kubernetes集群內(nèi)部運(yùn)行。運(yùn)營(yíng)商在Kubernetes和更復(fù)雜的流程(例如Cassandra)之間提供了接口,以允許對(duì)其進(jìn)行一起管理。啟動(dòng)和停止Cassandra集群,對(duì)其進(jìn)行擴(kuò)展和處理故障都通過(guò)Kubernetes Operator以Cassandra理解的方式進(jìn)行處理。
更好地參與Kubernetes環(huán)境意味著需要深入了解集群狀態(tài)。實(shí)際上,這意味著以前屬于數(shù)據(jù)庫(kù)內(nèi)部的某些操作(例如自動(dòng)重試或建立Gossip鏈接以跟蹤內(nèi)部集群狀態(tài))被提升到API層。然后,Kubernetes可以基于整個(gè)集群的健康狀況做出決策,以便可以采取任何行動(dòng),例如如果需要更多節(jié)點(diǎn),則可以啟動(dòng)這些元素以自動(dòng)彌補(bǔ)。通過(guò)可用指標(biāo)可以觀察到所有這些情況。
圍繞數(shù)據(jù)思考狀態(tài)
通常情況,Kubernetes中的容器實(shí)例是無(wú)狀態(tài)的——根據(jù)需要?jiǎng)?chuàng)建它們,然后將其刪除,而不是隨時(shí)間存儲(chǔ)。存儲(chǔ)需求被認(rèn)為是短暫的。但是數(shù)據(jù)管理是不同的。對(duì)于像Cassandra這樣的數(shù)據(jù)庫(kù),節(jié)點(diǎn)將需要持久化數(shù)據(jù),因此必須被視為有狀態(tài)服務(wù)。因此,必須使用PersistentVolumes和StatefulSets來(lái)添加這些對(duì)象,以確保在任何重新啟動(dòng)事件之間將數(shù)據(jù)卷連接到相同的運(yùn)行節(jié)點(diǎn)。
這種基于Kubernetes的自動(dòng)化的使用可以使開(kāi)發(fā)人員和操作人員的工作更加輕松??梢允宫F(xiàn)有服務(wù)更高效、更輕松地進(jìn)行升級(jí),同時(shí)可以添加新服務(wù)來(lái)滿(mǎn)足客戶(hù)需求。除了一起運(yùn)行Kubernetes和數(shù)據(jù)庫(kù)外,還可以考慮它們?nèi)绾螢閮?nèi)部開(kāi)發(fā)人員提供數(shù)據(jù)庫(kù)即服務(wù)或DBaaS功能。
對(duì)于尚未熟悉設(shè)置和運(yùn)行Kubernetes或不想花費(fèi)太多時(shí)間的團(tuán)隊(duì)來(lái)說(shuō),將這些技術(shù)結(jié)合使用的數(shù)據(jù)庫(kù)即服務(wù)(DBaaS)選項(xiàng)可以從云平臺(tái)中按需提供。數(shù)據(jù)庫(kù)即服務(wù)(DBaaS)可以消除一些管理開(kāi)銷(xiāo),并使企業(yè)更容易專(zhuān)注于如何處理數(shù)據(jù),而不是人工管理數(shù)據(jù)庫(kù)實(shí)例。
支持企業(yè)業(yè)務(wù)的數(shù)據(jù)處理方法
對(duì)于希望更快地實(shí)施并交付客戶(hù)所需的企業(yè)而言,遷移到云原生應(yīng)用程序和數(shù)據(jù)至關(guān)重要。從開(kāi)發(fā)人員的角度來(lái)看,將“全局”方法與保持系統(tǒng)運(yùn)行所需的方法聯(lián)系起來(lái)可能是一項(xiàng)挑戰(zhàn),特別是在擴(kuò)展數(shù)據(jù)庫(kù)需要工作人員具有一定經(jīng)驗(yàn)的情況下。先前的流程和組織孤島可能是阻礙這些變化的主要問(wèn)題,因此需要消除轉(zhuǎn)變?yōu)閿?shù)據(jù)驅(qū)動(dòng)的業(yè)務(wù)所面臨的障礙。
對(duì)于正在尋求如何為他們的公司提供支持的團(tuán)隊(duì)來(lái)說(shuō),跟上客戶(hù)需求并更有效地提供服務(wù)的壓力都是巨大的。微服務(wù)的采用無(wú)疑對(duì)這一過(guò)程有所幫助,因?yàn)榕c原有的整體應(yīng)用程序相比,微服務(wù)更容易分解應(yīng)用程序并快速改進(jìn)。然而,這種方法日益增加的復(fù)雜性會(huì)使擴(kuò)展服務(wù)和支持?jǐn)?shù)據(jù)變得更加困難。
為了使這一過(guò)程更簡(jiǎn)單,將分布式數(shù)據(jù)庫(kù)設(shè)計(jì)(例如Apache Cassandra)作為帶有Kubernetes的云原生應(yīng)用程序的一部分可以提供幫助。同時(shí),隨著圍繞Cassandra的更多數(shù)據(jù)庫(kù)即服務(wù)選項(xiàng)的增長(zhǎng),也使采用和運(yùn)行分布式數(shù)據(jù)庫(kù)設(shè)計(jì)變得更加容易。
|