
新钛云服已为您服务1296天

在 Windows 上本地使用 Ceph
由于Cloudbase Solutions和Suse 的合作,当前Ceph 16 (Pacific)提供了 Windows 原生支持。
Ceph 可能是最常用的软件定义存储解决方案。根据调查(https://www.openstack.org/analytics),超过 70% 的 OpenStack 部署由 Ceph 提供支持。考虑到它可以在商用硬件上运行,而且能够扩展到数百个存储节点并提供不错的性能,这也就不足为奇了。
在 Windows 上使用 Ceph 一直是一个痛点,以往需要iSCSI网关等代理或使用 Samba重新导出CephFS。这些方法提供了次优的性能并使部署架构过于复杂。现在所有麻烦都没有了,因为RBD和 CephFS 可以原生地在 Windows 上使用。
为获得最佳性能和功能,建议使用Windows Server 2019。Windows Server 2016也受支持,但有一些已知限制。较旧的 Windows Server 版本以及客户端版本(如 Windows 10)可能也能正常工作,但目前不受支持。

安装:
配置:
[global]
log to stderr = true
; Uncomment the following to use Windows Event Log
; log to syslog = true
run dir = C:/ProgramData/ceph/out
crash dir = C:/ProgramData/ceph/out
; Use the following to change the cephfs client log level
; debug client = 2
[client]
keyring = C:/ProgramData/ceph/keyring
; log file = C:/ProgramData/ceph/out/$name.$pid.log
admin socket = C:/ProgramData/ceph/out/$name.$pid.asok
; client_permissions = true
; client_mount_uid = 1000
; client_mount_gid = 1000
[global]
mon host = <ceph_monitor_addresses>
RBD:
rbd create blank_image --size=1G
rbd device map blank_image
$mappingJson = rbd-wnbd show blank_image --format=json
$mappingJson = $mappingJson | ConvertFrom-Json
$diskNumber = $mappingJson.disk_number
# The disk must be online before creating or accessing partitions.
Set-Disk -Number $diskNumber -IsOffline $false
# Initialize the disk, partition it and create a fileystem.
Get-Disk -Number $diskNumber | `
Initialize-Disk -PassThru | `
New-Partition -AssignDriveLetter -UseMaximumSize | `
Format-Volume -Force -Confirm:$false

WNBD:
wnbd-client map export_name $nbdAddress --port $nbdPort
CephFS:
ceph-dokan.exe -l x
当前限制:
RBD镜像还不能用于备份群集共享卷(CSV)在Windows Server故障转移群集(WSFC) ,这需要SCSI永久保留的支持 WNBD 磁盘无法实时调整大小 Python 绑定不可用 Ceph CLI工具还不能以本机方式使用。但是,它可以通过Windows Subsystem for Linux与正在运行的服务联系。
Windows 上的 Ceph – 性能

测试环境:
CPU Intel(R) Xeon(R) E5-2650 @ 2.00GHz 2 sockets 8 cores per socket 32 vcpus memory 128GB 1333Mhz network adapters Chelsio T420-C 2 x 10Gb/s LACP bond 9000 MTU
fio --randrepeat=1 --direct=1 --gtod_reduce=1 --name=test --bs=2M --iodepth=64 --size=8G --readwrite=randwrite --numjobs=1 --filename=\\.\PhysicalDrive2
Windows 调优:
Windows 电源计划——很少有人认为这是服务器的问题,但默认情况下,“高性能”电源计划默认不启用,这会导致 CPU 节流 将 Ceph 和 FIO 二进制文件添加到 Windows Defender 白名单 使用巨型帧 - 我们注意到性能提高了 15% 在 Windows Server 2016 上启用 CUBIC TCP 拥塞算法
检测结果:
裸机 RBD 和 CephFS IO
+-----------+------------+--------+-------+--------+-------+
| OS | tool | rand_r | seq_r | rand_w | seq_w |
+-----------+------------+--------+-------+--------+-------+
| WS2016 | rbd-wnbd | 854 | 925 | 807 | 802 |
| WS2019 | rbd-wnbd | 1317 | 1320 | 1512 | 1549 |
| WS2019 | iscsi-gw | 324 | 319 | 624 | 635 |
| Ubuntu 20 | krbd | 696 | 669 | 659 | 668 |
| Ubuntu 20 | rbd-nbd | 559 | 567 | 372 | 407 |
| | | | | | |
| WS2016 | ceph-dokan | 642 | 605 | 690 | 676 |
| WS2019 | ceph-dokan | 988 | 948 | 938 | 935 |
| Ubuntu 20 | ceph-fuse | 162 | 181 | 121 | 138 |
| Ubuntu 20 | kern ceph | 687 | 663 | 677 | 674 |
+-----------+------------+--------+-------+--------+-------+
虚拟机
+-----------------------+--------------+--------------+
| Hypervisor \ Guest OS | WS 2019 | Ubuntu 20.04 |
+-----------------------+------+-------+------+-------+
| | read | write | read | write |
+-----------------------+------+-------+------+-------+
| Hyper-V | 1242 | 1697 | 382 | 291 |
| KVM | 947 | 558 | 539 | 321 |
+-----------------------+------+-------+------+-------+
WINBD
+---------+------------------+
| Workers | Bandwidth (MB/s) |
+---------+------------------+
| 1 | 1518 |
| 2 | 2917 |
| 3 | 4240 |
| 4 | 5496 |
| 8 | 11059 |
| 16 | 13209 |
| 32 | 12390 |
+---------+------------------+
RBD 命令
+---------------------------------------------------------------------------------+
| Duration (s) |
+--------------------------+----------+----------+-----------+----------+---------+
| function | min | max | total | mean | std_dev |
+--------------------------+----------+----------+-----------+----------+---------+
| TestRunner.run | 283.5339 | 283.5339 | 283.5339 | 283.5339 | 0.0000 |
| RbdTest.initialize | 0.3906 | 10.4063 | 3483.5180 | 3.4835 | 1.5909 |
| RbdImage.create | 0.0938 | 5.5157 | 662.8653 | 0.6629 | 0.6021 |
| RbdImage.map | 0.2656 | 9.3126 | 2820.6527 | 2.8207 | 1.5056 |
| RbdImage.get_disk_number | 0.0625 | 8.3751 | 1888.0343 | 1.8880 | 1.5171 |
| RbdImage._wait_for_disk | 0.0000 | 2.0156 | 39.1411 | 0.0391 | 0.1209 |
| RbdFioTest.run | 2.3125 | 13.4532 | 8450.7165 | 8.4507 | 2.2068 |
| RbdImage.unmap | 0.0781 | 6.6719 | 1031.3077 | 1.0313 | 0.7988 |
| RbdImage.remove | 0.1406 | 8.6563 | 977.1185 | 0.9771 | 0.8341 |
+--------------------------+----------+----------+-----------+----------+---------+
总结:
参考:
https://cloudbase.it/ceph-on-windows-performance/ https://cloudbase.it/ceph-on-windows-part-1/
了解新钛云服
新钛云服荣膺第四届FMCG零售消费品行业CIO年会「年度数字化服务最值得信赖品牌奖」
新钛云服三周岁,公司月营收超600万元,定下百年新钛的发展目标
当IPFS遇见云服务|新钛云服与冰河分布式实验室达成战略协议
新钛云服正式获批工信部ISP/IDC(含互联网资源协作)牌照
新钛云服,打造最专业的Cloud MSP+,做企业业务和云之间的桥梁
往期技术干货
刚刚,OpenStack 第 19 个版本来了,附28项特性详细解读!
OpenStack与ZStack深度对比:架构、部署、计算存储与网络、运维监控等

点👇分享

戳👇在看
文章转载自新钛云服,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




