Cloud Computing - Cloud disk
概念
- 云硬盘:
云虚拟机
可以挂载
和使用
的硬盘(系统盘
+数据盘
) - 将
云端磁盘服务
称为块存储
(Block Storage),与Linux
中的块设备
相对应,可以格式化
并施加文件系统
数据持久化
(非易失性存储):最少三副本
,高可用,极少发生数据丢失- 但
不能完全依赖
云硬盘的可靠性,应该进行额外的备份
- 但
- 云硬盘和传统硬盘的
核心差异
:绝大多数的云硬盘都是远程
的 –计算存储分离
- 在云端,虚拟机的硬盘大概率不在宿主机上,而是在
专用
的磁盘服务器阵列
中 - 通过云数据中心
内部
的特有 IO 线路
进行连接 - IO 优化实例
- 对
云虚拟机
和云硬盘
之间的网络传输
,进行了软硬件
层面的优化,进而充分发挥所挂载磁盘的性能
- 对
- 在云端,虚拟机的硬盘大概率不在宿主机上,而是在
性能
性能指标:
IOPS
、吞吐量、访问延时等
最终性能受
存储介质
和容量大小
共同影响
等级
存储介质
基于 HDD
性能一般
,最高 IOPS 大概在数百
左右,但成本低
基于 SSD / HDD
IOPS 在
数千
左右,通常为默认选项
,综合发挥SSD
的性能优势
和HDD
的容量优势
基于 SSD
IOPS 能够
上万
,有非常稳定的 IO 能力,用来承载关键业务
或者数据库等IO 密集型应用
基于 高性能 SSD
IOPS 能够突破
十万
,用于满足最为苛刻的性能场景
软硬结合
:通过采用最新一代的企业级闪存硬件
,配合自研或者改进的底层传输协议
和虚拟化技术
来提供服务
容量
容量与性能
正相关
,云硬盘的容量越大,其性能越高,直到达到这个等级的上限
(底层设计:云上磁盘能力共享
)
实战
1 | $ lsblk |
混合硬盘
:4K 随机读取的平均 IOPS 为2482.90
1 | $ sudo fio --name=mytest1 --filename=~/testfile1 --rw=randread --refill_buffers --bs=4k --size=1G -runtime=10 -direct=1 -iodepth=128 -ioengine=libaio |
SSD
:4K 随机读取的平均 IOPS 为13056.70
1 | sudo sudo fio --name=mytest2 --filename=/var/lib/container/testfile2 --rw=randread --refill_buffers --bs=4k --size=1G -runtime=10 -direct=1 -iodepth=128 -ioengine=libaio |
本地磁盘
- 选择了
带有本地磁盘的机型
,在启动后,对应的本地磁盘会被自动挂载
- 本地磁盘一般为
高性能
的NVMe SSD
高吞吐
的先进 HDD
- 优缺点
- 优点:
离计算单元(宿主)更近
+没有三副本的负担
+价格相对便宜
- 缺点:本地磁盘本质上为
易失性存储
(数据可能损坏
或者丢失
,不如云硬盘可靠)
- 优点:
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.