存儲方式與k8s應用場景分析

摘自:https://www.kubernetes.org.cn/5128.html

1、將k8s中的存儲分類與熟知的存儲概念對應起來:

  • (1)塊存儲通常只支持RWO,比如AWSElasticBlockStore,AzureDisk,有些產品能做到支持ROX,比如GCEPersistentDisk,RBD,ScaleIO等
  • (2)文件存儲(分佈式文件系統)支持RWO/ROX/RWX三種模式,比如CephFS,GlusterFS和AzureFile
  • (3)對象存儲不需要PV/PVC來做資源抽象,應用可以直接訪問和使用

2、使用容器存儲的應用場景

瞭解各個業務對於存儲的需求

2.1 配置

無論集羣配置信息還是應用配置信息,其特點是併發訪問,也就是前邊提到的ROX/RWX,在不同集羣或者不同節點,都能夠訪問同樣的配置文件,分佈式文件存儲是最優選擇。

2.2 日誌

在容器場景中,日誌是很重要的一部分內容,其特點是高吞吐,有可能會產生大量小文件。如果有日誌分析場景,還會有大量併發讀操作。分佈式文件存儲是最優選擇。

2.3 應用(數據庫/消息隊列/大數據)

Kafka,MySQL,Cassandra,PostgreSQL,ElasticSearch,HDFS等應用,本身具備了存儲數據的能力,對底層存儲的要求就是高IOPS,低延遲。底層存儲最好有數據冗餘機制,上層應用就可以避免複雜的故障和恢復處理。以HDFS爲例,當某個datanode節點掉線後,原有邏輯中,會選擇啓動新的datanode,觸發恢復邏輯,完成數據副本補全,這段時間會比較長,而且對業務影響也比較大。如果底層存儲有副本機制,HDFS集羣就可以設置爲單副本,datanode節點掉線後,啓動新的datanode,掛載原有的pv,集羣恢復正常,對業務的影響縮短爲秒級。高性能分佈式文件存儲和高性能分佈式塊存儲是最優選擇。

2.4 備份

應用數據的備份或者數據庫的備份,其特點是高吞吐,數據量大,低成本。文件存儲和對象存儲最優。綜合應用場景,高性能文件存儲是最優選擇。

3、選擇性優先級

Kubernetes持久化存儲方案的重點在存儲和容器支持上。因此首要考慮存儲的核心功能和容器的場景支持。綜合本文所述,將選擇項按優先級列舉:

  • 存儲的三大核心,高可靠,高可用和高性能
  • 業務場景,選擇分佈式文件存儲
  • 擴展性,存儲能橫向擴展,應對業務增長需求
  • 可運維性,存儲的運維難度不亞於存儲的開發,選擇運維便捷存儲產品
  • 成本

摘自:https://www.kubernetes.org.cn/5128.html

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