Add nova::compute::rbd setting into nova-libvirt profile
authorGiulio Fidente <gfidente@redhat.com>
Wed, 19 Jul 2017 13:15:42 +0000 (15:15 +0200)
committerGiulio Fidente <gfidente@redhat.com>
Wed, 19 Jul 2017 13:18:33 +0000 (15:18 +0200)
Some of the tasks carried by nova::compute::rbd class apply to the
compute service, others to the libvirt service so it needs to be
included in both.

Change-Id: I28557deb13b75922932cd3e86c3467a541c988d0

docker/services/nova-libvirt.yaml
puppet/services/nova-libvirt.yaml

index a552774..36bdc7f 100644 (file)
@@ -96,7 +96,7 @@ outputs:
         get_attr: [NovaLibvirtBase, role_data, step_config]
       puppet_config:
         config_volume: nova_libvirt
-        puppet_tags: nova_config
+        puppet_tags: nova_config,file,exec
         step_config: *step_config
         config_image: {get_param: DockerNovaLibvirtConfigImage}
       kolla_config:
@@ -134,6 +134,7 @@ outputs:
                   - /run:/run
                   - /sys/fs/cgroup:/sys/fs/cgroup
                   - /var/lib/nova:/var/lib/nova
+                  - /etc/libvirt/secrets:/etc/libvirt/secrets
                   # Needed to use host's virtlogd
                   - /var/run/libvirt:/var/run/libvirt
                   - /var/lib/libvirt:/var/lib/libvirt
@@ -148,6 +149,7 @@ outputs:
             path: "{{ item }}"
             state: directory
           with_items:
+            - /etc/libvirt/secrets
             - /etc/libvirt/qemu
             - /var/lib/libvirt
             - /var/log/containers/nova
index 3a5d753..1c2958e 100644 (file)
@@ -30,6 +30,20 @@ parameters:
     description: Mapping of service endpoint -> protocol. Typically set
                  via parameter_defaults in the resource registry.
     type: json
+  CephClientUserName:
+    default: openstack
+    type: string
+  CephClientKey:
+    description: The Ceph client key. Can be created with ceph-authtool --gen-print-key. Currently only used for external Ceph deployments to create the openstack user keyring.
+    type: string
+    hidden: true
+  CephClusterFSID:
+    type: string
+    description: The Ceph cluster FSID. Must be a UUID.
+  CinderEnableRbdBackend:
+    default: false
+    description: Whether to enable or not the Rbd backend for Cinder
+    type: boolean
   NovaComputeLibvirtType:
     type: string
     default: kvm
@@ -113,6 +127,9 @@ outputs:
             nova::compute::libvirt::migration_support: false
             tripleo::profile::base::nova::manage_migration: true
             tripleo::profile::base::nova::libvirt_enabled: true
+            nova::compute::rbd::libvirt_rbd_user: {get_param: CephClientUserName}
+            nova::compute::rbd::libvirt_rbd_secret_key: {get_param: CephClientKey}
+            nova::compute::rbd::libvirt_rbd_secret_uuid: {get_param: CephClusterFSID}
             nova::compute::libvirt::services::libvirt_virt_type: {get_param: NovaComputeLibvirtType}
             nova::compute::libvirt::libvirt_virt_type: {get_param: NovaComputeLibvirtType}
             nova::compute::libvirt::libvirt_enabled_perf_events: {get_param: LibvirtEnabledPerfEvents}
@@ -120,6 +137,7 @@ outputs:
             nova::compute::libvirt::qemu::max_files: 32768
             nova::compute::libvirt::qemu::max_processes: 131072
             nova::compute::libvirt::vncserver_listen: {get_param: [ServiceNetMap, NovaLibvirtNetwork]}
+            rbd_persistent_storage: {get_param: CinderEnableRbdBackend}
             tripleo.nova_libvirt.firewall_rules:
               '200 nova_libvirt':
                 dport: