Change-Id: I2d16f6ed9e8a6e71100b10d1f0d8d13403d70bd6
3.4 KiB
Ceph and Swift guide
This guide provides instruction for adding Ceph and Swift support for CCP deployment.
Note
It's expected that an external Ceph cluster is already available and
accessible from the all k8s nodes. If you don't have a Ceph cluster, but
still want to try CCP with Ceph, you can use ceph_cluster
guide for
deploying a simple 3 node Ceph cluster.
Ceph
Prerequirements
You need to ensure that these pools are created:
- images
- volumes
- vms
And that users "glance" and "cinder" are created and have these permissions:
client.cinder
caps: [mon] allow r
caps: [osd] allow rwx pool=volumes, allow rwx pool=vms, allow rx pool=images
client.glance
caps: [mon] allow r
caps: [osd] allow rwx pool=images, allow rwx pool=vms
Deploy CCP with Ceph
In order to deploy CCP with Ceph you have to edit the
ccp.yaml
the file:
configs:
ceph:
fsid: "FSID_OF_THE_CEPH_CLUSTER"
mon_host: "CEPH_MON_HOSTNAME"
cinder:
ceph:
enable: true
key: "CINDER_CEPH_KEY"
rbd_secret_uuid: "RANDOM_UUID"
glance:
ceph:
enable: true
key: "GLANCE_CEPH_KEY"
nova:
ceph:
enable: true
Example:
configs:
ceph:
fsid: "afca8524-2c47-4b81-a0b7-2300e62212f9"
mon_host: "10.90.0.5"
cinder:
ceph:
enable: true
key: "AQBShfJXID9pFRAAm4VLpbNXa4XJ9zgAh7dm2g=="
rbd_secret_uuid: "b416770d-f3d4-4ac9-b6db-b6a7ac1c61c0"
glance:
ceph:
enable: true
key: "AQBShfJXzXyNBRAA5kqXzCKcFoPBn2r6VDYdag=="
nova:
ceph:
enable: true
fsid
- Should be the same asfsid
variable in the Ceph clusterceph.conf
file.mon_host
- Should contain any Ceph mon node IP or hostname.key
- Should be taken from the corresponding Ceph user. You can use theceph auth list
command on the Ceph node to fetch list of all users and their keys.rbd_secret_uuid
- Should be randomly generated. You can use theuuidgen
command for this.
Make sure that your deployment topology has a cinder
service. You could use etc/topology-with-ceph-example.yaml
as a reference.
Now you’re ready to deploy CCP with Ceph support.
Swift
Prerequirements
Make sure that your deployment topology has a radosgw
service. You could use etc/topology-with-ceph-example.yaml
as a reference.
Deploy CCP with Swift
Note
Currently, in CCP, only Glance supports Swift as a backend.
In order to deploy CCP with Swift you have to edit
ccp.yaml
the file:
ceph:
fsid: "FSID_OF_THE_CEPH_CLUSTER"
mon_host: "CEPH_MON_HOSTNAME"
radosgw:
key: "RADOSGW_CEPH_KEY"
glance:
swift:
enable: true
store_create_container_on_put: true
Example:
ceph:
fsid: "afca8524-2c47-4b81-a0b7-2300e62212f9"
mon_host: "10.90.0.2,10.90.0.3,10.90.0.4"
radosgw:
key: "AQBIGP5Xs6QFCRAAkCf5YWeBHBlaj6S1rkcCYA=="
glance:
swift:
enable: true
store_create_container_on_put: true
Troubleshooting
If the Glance image upload failed, you should check few things:
- Glance-api pod logs
- Radosgw pod logs
- Keystone pod logs