Commit Graph

41 Commits

Author SHA1 Message Date
4ce35c46cc fix msec format string
in the else case, which was triggered for devstack gate
the msec format string was incorrect, thus largely scrambling
the usefulness of logs. Fix this to make devstack readable.

Change-Id: I59d0e73932daf27dc1d718dfcf217fe2edf4d491
2013-01-09 08:13:39 -05:00
2d9a4e4e37 Merge "Use new RPC notifier" 2013-01-08 19:44:15 +00:00
c99853ca71 Enable millisecond logging for nova and cinder
Change-Id: Ic28867ae9a436e81c7f2fcf79f40a1ecc251072c
2013-01-03 17:39:16 -08:00
6d04fd7ba5 Holiday docs and comment formatting cleanup
Change-Id: Ia4ca88c67d3b94e306a79a669805a2fa1b0dc069
2012-12-28 18:03:10 -06:00
eb26230be6 Merge "Set up Nova for TLS" 2012-12-28 23:47:00 +00:00
f35cf91a1d adding support for baremetal hypervisor
New files for baremetal driver:
- lib/baremetal
- files/apts/baremetal

Adds two dependencies:
- google shell-in-a-box
- diskimage-builder

Enable by setting both:
  VIRT_DRIVER=baremetal
  ENABLED_SERVICES="$ENABLED_SERVICES,baremetal"

Change-Id: Ibf6fe1671a759a449c9eb0df47751d1b31ade591
2012-12-28 11:33:58 -06:00
66afb47cb9 Refactor quantum installation
* Move quantum installation to lib/quantum
* Refactor quantum configuration
* Move Quantum service account creation from keystone_data.sh to lib/quantum
* Define generic functions to install third party programs

* Minor cleanups related to Quantum
  * Kill dnsmasq which watches an interface 'ns-XXXXXX' in unstack.sh
  * Set default_floating_pool in nova.conf to make default flaoting pool
    work when PUBLIC_NETWORK_NAME is other than 'nova'
  * Make tempest work even when PRIVATE_NETWORK_NAME is other than 'private'

Change-Id: I4a6e7fcebfb11556968f53ab6a0e862ce16bb139
2012-12-26 23:41:38 +09:00
8e36cbe8c8 Use new RPC notifier
Stop using the deprecated rabbit_notifier.

Change-Id: I84574c555031b23fb5f256d248af1cdafc8979ce
Signed-off-by: Julien Danjou <julien@danjou.info>
2012-12-21 15:39:28 +01:00
3a3a2bac67 Set up Nova for TLS
* Start n-api proxy if 'tls-proxy' is enabled
* Configure nova service catalog for TLS

Change-Id: If031eb315f76c5c441a25fe3582b626bbee73c6e
2012-12-20 14:46:57 -06:00
c439b5dfc2 Changed so that nova databases are only created once in a multi-host setup.
Change-Id: Idb17bcb8b6d558f03c188d14509bb5e732079585
Fixes: bug #1091730
2012-12-19 14:49:34 +01:00
23431f3526 Clear out the keystone pki data for each run
This prevents old invalid tokens from working after a rerun of stack.sh
and potentially providing users and tenants that don't exist.

Fixes bug 1089700

Change-Id: Icfc22978e41e459d51b50bc7ad2e6d98d766e402
2012-12-17 08:44:01 -08:00
3fae252c34 Merge "Fix polkit configuration to allow usage of libvirt on openSUSE" 2012-12-12 18:51:19 +00:00
e0195ed8ab Merge "Always create signing_dir regardless of token format" 2012-12-12 18:19:42 +00:00
f1c094cbcd Fix polkit configuration to allow usage of libvirt on openSUSE
There is a buggy limitation with pkla files on openSUSE, that blocks
using 'unix-group:libvirtd' from working. A pkla with such a matching
identity will be overruled by the pkla generated by polkit-default-privs
containing 'unix-group:*' (which will match the other groups the user
belongs to, likely after matching libvirtd).

To work around this, explicitly allow the user instead.

Also, move the creation of the libvirtd group a bit later, to clarify
the code.

Change-Id: Ia3e4ae982accfc247a744eaa6d6aa4935e4f404c
2012-12-12 16:15:51 +01:00
63ea3185de Merge "Move Nova account creation out of keystone_data.sh" 2012-12-12 15:03:06 +00:00
a0dce264d9 Move Nova account creation out of keystone_data.sh
Supports the coming HA/proxy configuration for Nova

Change-Id: I2baf1f51486537a1489f1376d38f5710bd96c314
2012-12-11 17:34:28 -06:00
5e3deb678e Always create signing_dir regardless of token format
Fixes bug 1088801

devstack does not create signing_dir when keystone token format is UUID.
If the default value of signing_dir is read-only, OpenStack services
such as Quantum server failed to start due to permission denied.

On the keystone client cannot know which token_format is used in keystone
in advance, so signing_dir should be created regardless of the token format.

Change-Id: I1b0d25c1ac4d22d9fb2c5443d15b96fdaa5a4c81
2012-12-11 18:16:05 +09:00
00011c0847 Add is_fedora and exit_distro_not_supported functions
Between is_fedora, is_ubuntu and is_suse, we can make the code a bit
simpler to read. We also use exit_distro_not_supported to identify
places where we need implementation details for new distros.

As "/sbin/service --skip-redirect" is Fedora-specific, guard this with a
is_fedora test too.

Change-Id: Ic77c0697ed9be0dbb5df8e73da93463e76025f0c
2012-12-07 09:06:07 +01:00
fb501d01ac Merge "Use getent to find if a group exists, not grep" 2012-12-05 19:49:31 +00:00
3ab927c9b0 Use getent to find if a group exists, not grep
Change-Id: Ia181f41ae122dc5e5d3d33633dfd1d0e7420f8a9
2012-12-05 16:15:26 +01:00
c18b965152 Add is_ubuntu function
This replaces all of the [[ "$os_PACKAGE" = "deb" ]] tests, except when
those tests are before straight calls to dpkg.

Change-Id: I8a3ebf1b1bc5a55d736f9258d5ba1d24dabf04ea
2012-12-04 18:30:13 +01:00
ff7f308e9c Start nova-conductor before nova-compute.
nova-compute is going to need to talk to nova-conductor during startup,
so go ahead and start it conductor before compute.

Change-Id: I565436e06b5bf4189ead0a57d57ec2ce4cf79bd8
2012-11-29 22:00:51 -05:00
856a11e0e4 Add partial openSUSE/SLE support
Note that this is the first part of the support. A second part involves
dealing with the package names.

Among the changes:
 - add several functions to determine some distro-specific behavior (how
   to call usermod, if some features are available on the distro, etc.)
 - correctly detect openSUSE and SLE in GetOSVersion, and set DISTRO
   accordingly
 - new is_suse() function to check if running on a SUSE-based distro
 - use zypper to install packages
 - adapt apache virtual host configuration for openSUSE
 - some simple fixes (path to pip, mysql service name)

Change-Id: Id2f7c9e18a1c4a7b7cea262ea7959d183e4b0cf0
2012-11-28 16:22:12 +01:00
0edfd6f6e3 Use NOVA_BIN_DIR for newer binaries.
We added a variable a while ago, NOVA_BIN_DIR which is set properly to the
location of the binaries. Rather than using the in-tree bin-dir, which is
going away in favor of entrypoints console_scripts.

Change-Id: I65040cfe8321d49595a909353870f981bbd6a480
2012-11-26 15:04:37 -08:00
d57ccf0271 Add nova-conductor service
This is a new service for nova that will soon be required for
n-cpu to function.

Change-Id: I9a2e62f25200a47233a7796084ad8ebabc852c59
2012-11-19 17:45:10 -05:00
6fd2811726 Remove support for nova-volume
* nova-volume has been removed in Grizzly
* part of delete-nova-volume

Change-Id: Iba91d69950767823d77aaaa93243b0f476dbb04d
2012-11-14 13:21:58 -08:00
308beccc24 Merge "Add PostgreSQL support to devstack" 2012-11-04 12:34:31 +00:00
00bd761474 Merge "Configure PKI cache dirs" 2012-11-04 12:31:07 +00:00
428af5a257 Add PostgreSQL support to devstack
This patch adds an interface for supporting multiple database backend
types and implemnts support for PostgreSQL. It also adds a function,
use_exclusive_service, which serves as a base for enabling a service
that conflicts with other services. The use_database function uses it,
and it might also be useful for selecting messaging backends.

MySQL is still selected by default. Tested on Fedora 17 and Ubuntu
12.04 with MySQL and PostgreSQL. Implements blueprint postgresql-support

Change-Id: I4b1373e25676fd9a9809fe70cb4a6450a2479174
2012-11-03 18:19:21 -04:00
6e7e1c941a Don't enable osapi_volume if n-vol not enabled.
Enabling cinder removes osapi_volume from enabled_apis in nova.conf but
if neither cinder or n-vol are enabled it should not be there.  It seems
that volume code is being removed from nova so osapi_volume should not
be enabled by default.

Fixes bug #1073701

Change-Id: I626a941f434b1c8c1a73b32318e21c99445b5541
2012-10-31 17:01:45 -04:00
bc071bcef0 Configure PKI cache dirs
* Configure Cinder, Glance, Keystone, Nova to put cached credentials
  from keystone.auth_token into /var/cache/<service>

It is not obvious to me that having each of these service share a
credentials cache is a good idea.  It does appear to work but this
patch takes the conservative approach of putting each service's cache
in a distinct directory.

More importantly it gets them out of $HOME!

Change-Id: If88088fc287a2f2f4f3e34f6d9be9de3da7ee00d
2012-10-31 13:23:39 -05:00
1fcc6a1fc9 Modify nova config for ceilometer if enabled
If ceilometer is enabled, nova instance usage auditing and the
appropriate notification drivers should be automatically enabled,
as opposed to relying on manual reconfiguration and service restart.

Change-Id: I41643a1418a87942be7b2b7979797ff5eb7e5479
2012-10-25 17:37:10 +01:00
9f8da4b09b Merge "Clean up local state paths" 2012-10-25 11:36:18 +00:00
58ffa670cd Merge "Remove unused nova.conf option image_service" 2012-10-25 01:15:59 +00:00
cf59999019 Merge "Extract create_nova_conf() from init_nova()" 2012-10-24 21:17:45 +00:00
0921c453e4 Remove unused nova.conf option image_service
FLAGS.image_service was removed in:
[3aaa0b103447d56f8d3b259c693cd9a3a8dcbe36] Cleanup of image service code

Change-Id: Ie566f972e2c196228cd83edda0924b5a679a63a6
2012-10-23 17:10:56 -07:00
1331445b6f Clean up local state paths
Puts additional state and lock paths for swift, quantum and nova
into $DATA_DIR/project that can be set independently of $DEST.

Change-Id: I2cca701856d3caa7fe472fefdd8b070a3c7f3adf
2012-10-23 16:36:27 -05:00
da7b8091b9 Extract create_nova_conf() from init_nova()
Allows creating a new nova.conf without wiping the database,
say, during an upgrade.

Change-Id: I7703b54bc3a32485b3cdab8d6185f93a6675040d
2012-10-22 11:08:26 -05:00
602cf9bd68 Add support for the Quantum Ryu plugin.
This patch allows using the Quantum Ryu plugin.
Ryu plugin lets Quantum link Open vSwitch and Ryu OpenFlow controller[1].

Ryu OpenFlow controller is not Openstack component, but I added some
processing that is related with Ryu to stack.sh for the convenience of
the person who intend to try the plugin.

Instructions for using Ryu plugin:
1. Enable services: "q-svc", "q-agt", "q-dhcp", "q-l3", "quantum", "ryu"
2. Set Q_PLUGIN to "ryu"
3. Set an internal network interface name to connect br-int on plural
   hosts to RYU_INTERNAL_INTERFACE (optional)

Example localrc:
  disable_service n-net
  enable_service q-svc q-agt q-dhcp q-l3 quantum ryu
  Q_PLUGIN=ryu
  RYU_INTERNAL_INTERFACE=eth1

[1] http://osrg.github.com/ryu/

Change-Id: Ic1da132fa421f1c70c10a319ee3239831b0f956f
2012-10-19 07:00:32 +00:00
3cf1ffbcdd Fix NOVA_CONF usage
NOVA_CONF now includes NOVA_CONF_DIR, fix remaining usage in lib/nova

Change-Id: I750d6e3ad73bed5c8a911f6dfe61770bbc804704
2012-10-03 10:49:15 -05:00
bf67c19c30 Move Nova to lib/nova
The next in a line of changes to break down stack.sh and make
it a bit more manageable.

Part of blueprint devstack-modular

Change-Id: I3fae739996aad0b340dae72ef51acd669a3ab893
2012-09-27 17:21:50 -05:00