[科技創新]
雲原生(Cloud Native)加快開發速度,實現可靠應用擴展,提供更高安全性,更重是加快企業數碼轉型,對企業競爭力至關重要,所以大部分企業正加將淘汰傳統應用,過渡至雲原生平台,以容器為基礎的「微服務」架構正成為主流。
簡單而言,容器只虛擬化了應用,微服務架構耗用更少資源,簡化擴充容錯和反覆運算,開發和維護更快速,開發人員可自助營運,毋須再採構基建,以CI/CD開發流動,加快推出應用反覆運算,以應對營商形勢變化。
容器必須協調(Orchestration)才能發揮上述優勢,直至Google開源了Kubernetes平台,交由CNCF基金會管理,以無伺服器和容器為主調的微服務架構,才正式成為雲原生工業標凖。
不過Kubernetes有不少先天缺點,是持久化存儲(persistence) 一直成為部署難題。通常一個容器服務升級或者失效,流程會關掉舊版本容器,拉取啟動新版本容器,預設情況舊容器所包含數據就會消失,如何持久保護數據,一直受到關注。
雲原生進入企業環境
容器技術初期出現,只是針對「無狀態應用」(Stateless App),「無狀態」乃指應用、服務或功能,不因時間、是否有數據寫入、接收請求次數,在任何狀態下會改變服務回傳的數據,類似一般的網站應用,就是屬於「無狀態」應用。事實上,不少社交媒體,甚至人工智能訓練,以及API服務,都屬於「無狀態」,都次請求和回應都獨立運算,雲原生計設足以應付有餘。
不過,問題在於大部企業傳統應用,卻屬於「具狀態應用」(Stateful App);幾乎所有數據庫,從關聯性類似MySQL、Oracle和PostgreSQL,以至近年流行的NoSQL,均屬於Stateful應用,紀錄的每筆數據狀態,即使服務關掉重啟,數據須保留和保持完整,容器須具備所謂「持久化儲存」功能,確保數據完整性,也必須有適當保護和可快速復原。
數據庫對企業營運極之重要,Kubernetes發展歷程,為了持久化儲存,先後有不少方案;從最早出現Flocker以至各種Kubernetes插件,效果未盡人意,原因是企業級儲存要求嚴格;從備份至容錯,嚴格的災難復原及加密,以至數據管理,甚至不同儲存層級和存取速度,導至不少軟件方案以失敗告終,直至Portworx出現,實現了大部份企業儲存要求,Kubernetes才算有企業級儲存和數據的軟件方案。
兩年前,Pure Storage收購了Portworx,擴展Kubernetes數據保護至AWS等公有雲和及紅帽OpenShift等內部的Kubernetes平台。
兩分鐘恢復應用
Pure Storage 港澳區總經理楊玉珊說,以加拿大皇家銀行(RBC)為例,透過OpenShift平台推動雲原生應用,不過單靠Kubernetes無法滿足RBC嚴格的可用性要求,PX-DR 的Portworx儲存平台可實現零RPO和極短RTO數據保護指標,兩分鐘內在另一數據中心恢復應用,而不遺失數據。
隨著開源軟件流行,不少數據庫包括MySQL和PostgreSQL興起,而類似MangoDB和Cassandra的NoSQL日漸流行,加上搜尋工具Elastic和內存數據庫Redis出現,數據庫和數據服務百花齊放,數據儲存在多種應用,處理備份和恢復、加密、轉移數據庫的工作,也再不可能聘請專精某一平台的DBA,自動化管理成為唯一出路。
Portworx正好實現了「數據庫即服務」(Database as a service),以雲平台自動管理,開發人員不用關注數據庫架構,直接以API寫進不同數據庫和服務,並自行管理備份和容錯等功能。
楊玉珊說,雲原生應用流行,如何在Kubernetes平台保護數據愈來愈重要,Portworx產品也獲不少查詢,Portworx可將不同數據庫,快速變成雲原生的「服務」,企業內部仍可保留管理和保護數據的自主權;包括如何實行備份、災難復原、加密以至數據管理,令雲原生數據庫真正可部署在企業環境。
Portworx Data Services針對Kubernetes架設的「數據庫即服務」平台,毋須DBA可由開發人員自行一鍵部署數據庫、自行維護和決定保護數據,透過One Platform可支援Cassandra、Kafka、PostgreSQL、RabbitMQ、Redis和Zookeeper等數據庫。
Portworx亦可令Kubernetes平台適用於更多應用景境,其Portworx Enterprise可快速移轉傳統工作負載至Kubernetes,轉移故障時間可縮短至數秒,並提供更細緻的儲存控制和部署,變成多租戶(multi-tenant)的「平台即服務」,可控制個別應用或租戶,享用每秒輸入/輸出(IOPS)及寬頻資源。
Portworx Enterprise亦可支援5G或邊緣及IPv6制式:以5G在邊緣環境部署Kubernetes平臺。Portworx Backup-as-a-Service可簡化Kubernetes數據的保護及營運,並已於AWS上EKS提供服務。