如何提高 openstack swift 复制速度?

如何提高 openstack swift 复制速度?

我在生产中使用 OpenStack 对象存储,并面临着大问题 - 复制速度低。

我的集群的复制因子为 3,有 3 个区域,每个区域有 25 个硬盘。我的容器有大约 1 亿个小物体。我添加了新的硬盘(每个区域 10 个)并开始重新平衡我的集群,并迅速报告我重新平衡将在大约 1 年后完成。 Swift 使用 rsync,我想如果我可以尝试使用 rsync 手动复制这个对象 - 它会比 swift 更快。

有什么方法可以提高 openstack swift 中的复制速度吗?我觉得 swift 对我的 HDD 来说是“遗憾”,没有使用 100% 的容量来加快复制过程。我试着问这个 开放堆栈论坛但没有答案(.

这是我的 /etc/swift/object-server.conf

[DEFAULT]
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /mnt/swift
mount_check = True
log_level = ERROR
conn_timeout = 5
container_update_timeout = 5
node_timeout = 5
max_clients = 4096

[pipeline:main]
pipeline = healthcheck recon object-server

[app:object-server]
use = egg:swift#object
replication_concurrency = 1500
replication_one_per_device = False
replication_lock_timeout = 30

[filter:healthcheck]
use = egg:swift#healthcheck

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock

[object-replicator]
concurrency = 1500
run_pause = 5
interval = 5
log_level = DEBUG
stats_interval = 10
rsync_io_timeout = 60

[object-reconstructor]

[object-updater]
concurrency = 200
interval = 20
slowdown = 0.008
log_level = DEBUG

[object-auditor]
interval = 300


[filter:xprofile]
use = egg:swift#xprofile

这是/etc/rsyncd.conf

[object]
path            = /mnt/swift
read only       = false
write only      = no
list            = yes
incoming chmod  = 0644
outgoing chmod  = 0644
max connections = 1500
lock file =     /var/lock/object.lock

相关内容