From 16ec568ee57045464cd2435358a28c25820a6a61 Mon Sep 17 00:00:00 2001 From: Richard Maw Date: Tue, 14 Apr 2015 18:54:57 +0000 Subject: OpenStack: Split nova into control and compute This adds NOVA_ENABLE_{CONTROLLER,COMPUTE}. Both are enabled by deafult, but if CONTROLLER is enabled but COMPUTE isn't, then the conductor service is enabled. Change-Id: I523a7270d4afdcd1e2a30eaac42ea499581fe971 --- openstack/usr/lib/systemd/system/openstack-nova-api.service | 3 ++- openstack/usr/lib/systemd/system/openstack-nova-cert.service | 3 ++- .../usr/lib/systemd/system/openstack-nova-compute.service | 3 ++- .../usr/lib/systemd/system/openstack-nova-conductor.service | 3 ++- .../lib/systemd/system/openstack-nova-config-setup.service | 11 +++++++++++ .../lib/systemd/system/openstack-nova-consoleauth.service | 3 ++- .../usr/lib/systemd/system/openstack-nova-db-setup.service | 12 ++++++++++++ .../usr/lib/systemd/system/openstack-nova-novncproxy.service | 3 ++- .../usr/lib/systemd/system/openstack-nova-scheduler.service | 3 ++- .../lib/systemd/system/openstack-nova-serialproxy.service | 3 ++- .../usr/lib/systemd/system/openstack-nova-setup.service | 9 --------- 11 files changed, 39 insertions(+), 17 deletions(-) create mode 100644 openstack/usr/lib/systemd/system/openstack-nova-config-setup.service create mode 100644 openstack/usr/lib/systemd/system/openstack-nova-db-setup.service delete mode 100644 openstack/usr/lib/systemd/system/openstack-nova-setup.service (limited to 'openstack/usr/lib/systemd') diff --git a/openstack/usr/lib/systemd/system/openstack-nova-api.service b/openstack/usr/lib/systemd/system/openstack-nova-api.service index 8ee9cefa..d06afcaa 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-api.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-api.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Compute Service (code-named Nova) API server -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-cert.service b/openstack/usr/lib/systemd/system/openstack-nova-cert.service index b2a2e1cc..418b060c 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-cert.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-cert.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Nova Cert -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-compute.service b/openstack/usr/lib/systemd/system/openstack-nova-compute.service index 95a3a872..c9c6924c 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-compute.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-compute.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Compute Service (code-named Nova) compute server -After=syslog.target network-online.target libvirtd.service +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target libvirtd.service openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target Requires=libvirtd.service diff --git a/openstack/usr/lib/systemd/system/openstack-nova-conductor.service b/openstack/usr/lib/systemd/system/openstack-nova-conductor.service index 1d2ece69..bf8e0631 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-conductor.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-conductor.service @@ -1,6 +1,7 @@ [Unit] Description=Database-access support for Compute nodes (nova-conductor) -After=syslog.target network-online.target libvirtd.service +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target libvirtd.service openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target Requires=libvirtd.service diff --git a/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service b/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service new file mode 100644 index 00000000..55416cec --- /dev/null +++ b/openstack/usr/lib/systemd/system/openstack-nova-config-setup.service @@ -0,0 +1,11 @@ +[Unit] +Description=Run nova-config-setup Ansible scripts +ConditionPathExists=/etc/openstack/neutron.conf +After=openstack-keystone.service openstack-keystone-setup.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/nova-config.yml + +[Install] +WantedBy=multi-user.target diff --git a/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service b/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service index 66442d11..68607354 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-consoleauth.service @@ -1,6 +1,7 @@ [Unit] Description=Openstack Console Auth (nova-consoleauth) -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service b/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service new file mode 100644 index 00000000..80db0be5 --- /dev/null +++ b/openstack/usr/lib/systemd/system/openstack-nova-db-setup.service @@ -0,0 +1,12 @@ +[Unit] +Description=Run nova-db-setup Ansible scripts +ConditionPathExists=/etc/openstack/neutron.conf +After=postgres-server.service openstack-keystone.service openstack-keystone-setup.service +Wants=postgres-server.service openstack-keystone.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/nova-db.yml + +[Install] +WantedBy=multi-user.target diff --git a/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service b/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service index 597f357a..ecdadde2 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-novncproxy.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Nova NoVNC proxy -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service b/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service index d317b624..9009d49a 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-scheduler.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Nova Scheduler -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service b/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service index 2d95c1fa..5f5a5b41 100644 --- a/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service +++ b/openstack/usr/lib/systemd/system/openstack-nova-serialproxy.service @@ -1,6 +1,7 @@ [Unit] Description=OpenStack Nova Serial Proxy -After=syslog.target network-online.target +ConditionPathExists=/etc/nova/nova.conf +After=network-online.target openstack-nova-config-setup.service openstack-nova-db-setup.service Wants=network-online.target [Service] diff --git a/openstack/usr/lib/systemd/system/openstack-nova-setup.service b/openstack/usr/lib/systemd/system/openstack-nova-setup.service deleted file mode 100644 index a4ad6ae7..00000000 --- a/openstack/usr/lib/systemd/system/openstack-nova-setup.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=Run nova-setup Ansible scripts -After=local-fs.target libvirtd.service openstack-keystone-setup.service postgres-server.service - -[Service] -ExecStart=/usr/bin/ansible-playbook -v -M /usr/share/ansible/ansible-openstack-modules -i /usr/share/openstack/hosts /usr/share/openstack/nova.yml - -[Install] -WantedBy=multi-user.target -- cgit v1.2.1