在ceph監視器上執行
CINDER_PASSWD='cinder1234!'
controllerHost='controller'
RABBIT_PASSWD='0penstackRMQ'
1.創建pool池
爲cinder-backup服務創建pool池(因爲我只有一個OSD節點,所以要將副本數設置爲1)
ceph osd pool create cinder-backup 32
ceph osd pool set cinder-backup size 1
ceph osd pool application enable cinder-backup rbd
2.查看pool池的使用情況
ceph df
3.創建賬號
ceph auth get-or-create client.cinder-backup mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=cinder-volumes, allow rwx pool=cinder-backup' -o /etc/ceph/ceph.client.cinder-backup.keyring
#查看
ceph auth ls | grep -EA3 'client.(cinder-backup)'
4.修改ceph.conf配置文件並同步到所有的監視器節點(這步一定要操作)
su - cephd
cd ~/ceph-cluster/
cat <<EOF>> ceph.conf
[client.cinder-backup]
keyring = /etc/ceph/ceph.client.cinder-backup.keyring
EOF
ceph-deploy --overwrite-conf admin ceph-mon01
exit
5.安裝cinder-backup組件和ceph客戶端(如果ceph監視器是在控制節點上不需要執行這一步)
yum -y install openstack-cinder python-keystone ceph-common
6.配置cinder-backup服務與cinder-api服務進行交互
openstack-config --set /etc/cinder/cinder.conf DEFAULT transport_url rabbit://openstack:${RABBIT_PASSWD}@${controllerHost}:5672
openstack-config --set /etc/cinder/cinder.conf cache backend oslo_cache.memcache_pool
openstack-config --set /etc/cinder/cinder.conf cache enabled true
openstack-config --set /etc/cinder/cinder.conf cache memcache_servers ${controllerHost}:11211
openstack-config --set /etc/cinder/cinder.conf DEFAULT auth_strategy keystone
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_uri http://${controllerHost}:5000
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_url http://${controllerHost}:5000
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken auth_type password
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_domain_id default
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken user_domain_id default
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken project_name service
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken username cinder
openstack-config --set /etc/cinder/cinder.conf keystone_authtoken password ${CINDER_PASSWD}
openstack-config --set /etc/cinder/cinder.conf oslo_concurrency lock_path /var/lib/cinder/tmp
7.配置cinder-backup服務使用的後端存儲爲ceph
openstack-config --set /etc/cinder/cinder.conf DEFAULT enabled_backends ceph
8.配置cinder-backup服務驅動ceph
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_driver cinder.backup.drivers.ceph
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_chunk_size 134217728 #128Mb
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_conf /etc/ceph/ceph.conf
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_pool cinder-backup
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_user cinder-backup
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_stripe_count 0
openstack-config --set /etc/cinder/cinder.conf DEFAULT backup_ceph_stripe_unit 0
openstack-config --set /etc/cinder/cinder.conf DEFAULT restore_discard_excess_bytes True
9.啓動cinder.backup服務
systemctl enable openstack-cinder-backup
systemctl start openstack-cinder-backup
systemctl status openstack-cinder-backup