如何自動擴展K8S存儲池容量?

Portworx技術視頻系列:通過PX-AutoPilot自動擴展存儲池容量

https://v.qq.com/x/page/w3102db86te.html

歡迎來到Portworx技術系列視頻,我是Ryan Wallner。今天我們來介紹一下存儲容量管理。Portworx Autopilot,我們會專門介紹一下存儲池擴充、容量管理,這樣可以讓用戶基於一些提前設定的規則引擎,自動的添加磁盤。Portwortx Autopilot可以自動化的管理容量,自動化的運維,例如添加磁盤,擴充PVCs,或者在存儲池裏擴充磁盤。這些操作可以通過腳本自動執行,也可以手動方式,但都是以K8S雲原生的方式來進行的,定義YAML文件,給予Portworx權限來做這些事情。

當你完成了Portworx的配置,爲每個節點配置了每個100G的磁盤,假如是雲中,我們使用EBS,這樣我們就爲PVCs設定了一個Portworx存儲池,總共300G。應用會使用PVCs,後續可能有更多的應用,數據庫,服務會運行在K8S上,當它們開始使用存儲容量的時候,假設它們使用了150G的空間。這是所有存儲容量的一半。我們如何來管理這些容量?如何觸發動作呢?我們來看一下Autopilot是怎麼做的。

當你安裝了Portworx,開始使用Autopilot,你會需要Prometheus,Prometheus的作用,是收集K8S裏應用運行情況的信息,Portworx自身也使用Prometheus,方式是Portworx提供API,含有Prometheus端點,這個端點,會向Prometheus提供運行情況的信息,Prometheus就可以看到比如卷的數量、總體容量、已經使用了多少,CPU、內存這些。

AutoPilot,我們用AP來表示,會接入Prometheus,並且獲取狀況信息,這樣AutoPilot根據狀況信息,和事先制定的規則,對Portworx的運行進行自動化管理,現在我們對管理控制的流程有了概要性的瞭解,以及Autopilot的工作原理,我們需要創建一些規則,用Prometheus能夠理解的表達,同時Autopolit可以去執行,假設,已經使用的字節,和總共的字節數,表明了我們還有多少容量可以使用。我們設定一個規則:如果我們剩下的容量已經不到40%了,也就是我已經使用了60%的容量,就會觸發動作,來擴充我們的集羣。

擴充的方式是增加磁盤。我們可以制定一些規則增加額度的限制,例如,每次當使用到60%容量時,這種情況可能會經常發生,我們可以設定,觸發增加50%容量的動作,就是總體容量增加50%。也可以增加一些限制,例如,每個存儲池的上限不要超過2TB,這是考慮你有成本限制的情況。這就是通過Autopilot來設定一些自動化的規則,以及設定限制。

還有其他配置方式,主要的配置方式就是規則、動作、和方式,當存儲池增長到了60%,Prometheus會探測到,Autopilot就會觸發規則,來進行相應的動作,這裏動作就是增加存儲池容量,增加磁盤會增加存儲池容量50%,達到450G。這樣我們的容量使用率就不再是60%了,Portworx增加總容量後,它就會低於60%,這個規則仍然是有效的,因爲後續可能會進一步需要存儲容量。

​​​​​​​這裏我們演示了,Autopilot如何通過規則和動作,自動化的控制下層的存儲,如AWS, Azure,Vmware Vsphere,部署磁盤,加到存儲池裏面,確保一切都可以自動化的有序進行。這裏我們介紹了增加磁盤的類型,直觀的可以看到通過Portworx增加了存儲池的容量,爲PVCs服務。後續我們還會介紹其他類型,比如當磁盤達到使用率的閾值的時候,增加單個磁盤的容量,而不是增加新磁盤,以及介紹PVCs。上面我們介紹了Autopilot,自動增加磁盤容量,以及存儲池容量,希望對您有用,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章