| # ceph.sh - DevStack extras script to install Ceph |
| |
| if is_service_enabled ceph; then |
| if [[ "$1" == "source" ]]; then |
| # Initial source |
| source $TOP_DIR/lib/ceph |
| elif [[ "$1" == "stack" && "$2" == "pre-install" ]]; then |
| echo_summary "Installing Ceph" |
| check_os_support_ceph |
| if [ "$REMOTE_CEPH" = "False" ]; then |
| install_ceph |
| echo_summary "Configuring Ceph" |
| configure_ceph |
| # NOTE (leseb): Do everything here because we need to have Ceph started before the main |
| # OpenStack components. Ceph OSD must start here otherwise we can't upload any images. |
| echo_summary "Initializing Ceph" |
| init_ceph |
| start_ceph |
| else |
| install_ceph_remote |
| fi |
| elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then |
| if is_service_enabled glance; then |
| echo_summary "Configuring Glance for Ceph" |
| configure_ceph_glance |
| fi |
| if is_service_enabled nova; then |
| echo_summary "Configuring Nova for Ceph" |
| configure_ceph_nova |
| fi |
| if is_service_enabled cinder; then |
| echo_summary "Configuring Cinder for Ceph" |
| configure_ceph_cinder |
| fi |
| if is_service_enabled cinder || is_service_enabled nova; then |
| # NOTE (leseb): the part below is a requirement to attach Ceph block devices |
| echo_summary "Configuring libvirt secret" |
| import_libvirt_secret_ceph |
| fi |
| |
| if [ "$REMOTE_CEPH" = "False" ]; then |
| if is_service_enabled glance; then |
| echo_summary "Configuring Glance for Ceph" |
| configure_ceph_embedded_glance |
| fi |
| if is_service_enabled nova; then |
| echo_summary "Configuring Nova for Ceph" |
| configure_ceph_embedded_nova |
| fi |
| if is_service_enabled cinder; then |
| echo_summary "Configuring Cinder for Ceph" |
| configure_ceph_embedded_cinder |
| fi |
| fi |
| fi |
| |
| if [[ "$1" == "unstack" ]]; then |
| if [ "$REMOTE_CEPH" = "True" ]; then |
| cleanup_ceph_remote |
| else |
| cleanup_ceph_embedded |
| stop_ceph |
| fi |
| cleanup_ceph_general |
| fi |
| |
| if [[ "$1" == "clean" ]]; then |
| if [ "$REMOTE_CEPH" = "True" ]; then |
| cleanup_ceph_remote |
| else |
| cleanup_ceph_embedded |
| fi |
| cleanup_ceph_general |
| fi |
| fi |