204 Commits

Author SHA1 Message Date
Jérôme Vizcaino
b072ea9c3d nova.conf: fix incorrect neutron credentials.
Nova should use Neutron credentials to interact with Neutron.

Backport: liberty
Closes-Bug: #1512070
Change-Id: I78ec4c032d457b519ccfed9cab190afd65027048
2015-11-01 12:02:00 +01:00
Sam Yaple
b27880aa77 Automate setting up a cache tier
Introduces a new flag to bootstrap cache devices

DocImpact
Partially-Implements: blueprint ceph-improvements

Change-Id: I09b5a0d5c61b3465237e5f01dc10120725561cd3
2015-10-22 10:51:44 +00:00
Sam Yaple
1d60be3770 Allow ceph pool names to be configurable
Change-Id: Ic408ef7aec7f1c95396a0ccf0209b104908a3f21
Partially-Implements: blueprint ceph-improvements
2015-10-22 10:51:44 +00:00
Sam Yaple
6932ca48b8 Allow specifying erasure as the pool type
Change-Id: I581efd7c0d138cb78ab3afd755521f3fb375c0ee
Partially-Implements: blueprint ceph-improvements
2015-10-22 10:51:44 +00:00
Jenkins
ef862427fa Merge "Add nova-spicehtml5proxy console" 2015-10-21 10:01:15 +00:00
Sam Yaple
a7d4431928 Add nova-spicehtml5proxy console
Change-Id: I0ca15e00ee52373b84f7021d86a29304526b7436
Partially-Implements: blueprint nova-proxies
2015-10-19 12:09:48 +00:00
Sam Yaple
d6bf048c34 Use bool filter for ironic
TrivialFix

Change-Id: Idaa6376c8585b9bebe1d68a518f965124dfe6b76
2015-10-18 19:19:43 +00:00
Sam Yaple
2ea87ebdb7 Use memcache for consoleauth and horizon
Unfortunately there was no was to avoid memcache for consoleauth, so
we might as well take advantage of it for Horizon as well.

Change-Id: Idd338a025b031f6b50fe0c9f03c2c8d862f9d4c0
Closes-Bug: #1504606
Closes-Bug: #1504800
2015-10-15 10:47:21 +00:00
Sam Yaple
b2ac6e80cd Add tty to containers
sudo requires a tty to function by default on centos. Instead of
tweaking the sudo conf we can just add a tty. This has the added
advantage of making the containers more friendly if you have to
`docker exec -i <container> bash` into them.

Change-Id: If97a02ca1d37c243a787d98ade54bde8d641aecd
backport: liberty
Partially-Implements: blueprint functional-testing-gate
2015-10-14 10:54:33 +00:00
Sam Yaple
c5be228be8 Bump ansible to 1.9.2
Ansible 1.9.2 contains the fix needed for docker-py >1.2.0

This is needed for some gate reasons, but it is also a good version
bump because it fixes a few issues with delegate_to.

Change-Id: Iafbabb3b0232620849d0548c5cd9d8d316c2b0f3
backport: liberty
Partially-Implements: blueprint functional-testing-gate
2015-10-13 15:13:34 +00:00
Sam Yaple
0cefd64450 Glance round robin for default file backend
Closes-Bug: #1504902
Change-Id: Id4cced68ef078adb3db19c67f62d96275ab2329f
2015-10-11 09:45:09 +00:00
Sam Yaple
a38868f9cb Fix wrong sysctl variable name (part 2)
Change-Id: I8e4c9beb90a0b289f56947ca6292f6455e26e07b
Closes-Bug: #1503416
2015-10-07 07:59:25 +00:00
Martin André
8c3a646c75 Fix wrong sysctl variable name
The bridge parameters should be net.bridge.* according to install
documentation at docs.openstack.org.

Change-Id: Ib29dd462e01f26e3fec48f0730ed322f2704cd8a
Closes-Bug: #1503416
2015-10-07 09:11:10 +09:00
Jenkins
719740ade8 Merge "Set sysctl values" 2015-10-06 05:20:36 +00:00
Sam Yaple
94162bd08f Bring Kolla inline with FHS
This brings Kolla images inline with FHS and should make finding
locations of things more consistent and reliable with the linux world
at large.

Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8
Closes-Bug: #1485742
2015-10-06 03:30:53 +00:00
Sam Yaple
0700100d82 Set sysctl values
A few sysctl values are required for networking to work. All of them
are documented at docs.openstack.org and while some of them are the
defaults on systems, they should be explicitly set since networking
will break without them set.

Change-Id: I4507eb2602e52eeab61bdceea4c94b1c35696a7d
Closes-Bug: #1482794
2015-10-04 06:29:20 +00:00
Jenkins
8f7006e323 Merge "Fix ceph after config-external removal" 2015-09-29 10:20:05 +00:00
Jenkins
a9eee17159 Merge "Make libvirt function on CentOS" 2015-09-29 10:13:03 +00:00
Sam Yaple
5223965b61 Fix ceph after config-external removal
Change-Id: I46dc2f02dda8219878eee3755b0891f4c3450682
Partially-Implements: blueprint replace-config-external
2015-09-29 08:39:43 +00:00
Steven Dake
655d88e3a1 Make libvirt function on CentOS
Recent regressions in the code base removed permission setting of
/dev/kvm to root:kvm 660 permissions which are default for CentOS's
version of libvirt.

Also Libvirt must be able to read its cnofiguration file, which was
previously 600 root:root.  Now its 644 root:root so its always readable.
This is fine, since this file doesn't contain any secret information.

Change-Id: Id87cf5da8e37bc5bb613ce919d0293803d0fe5ed
Closes-Bug: #1500733
2015-09-29 01:37:35 -07:00
Jeff Peeler
f5a50a1d7d Add Ansible support for Ironic
Configuration based off upstream documentation here:
http://docs.openstack.org/developer/ironic/deploy/install-guide.html

A few notes:
-ironic-api is not configured to use mod_wsgi
-several places it's noted that discoverd is going away and needs to be
replaced with ironic-inspector - (sqlite connection should be changed
too)
-currently enabling ironic reconfigures nova compute (driver and
scheduler) as well as changes neutron network settings
-a nice enhancement would be to configure the web console

Required post-deployment configuration:

Create the flat network to launch the instances:

neutron net-create --tenant-id $TENANT_ID sharednet1 --shared \
--provider:network_type flat --provider:physical_network physnet1

neutron subnet-create sharednet1 $NETWORK_CIDR --name $SUBNET_NAME \
--ip-version=4 --gateway=$GATEWAY_IP --allocation-pool \
start=$START_IP,end=$END_IP --enable-dhcp

And then the above ID is used to set cleaning_network_uuid in the neutron
section of ironic.conf.

Change-Id: I572e7ff1f23c4e57a2c50817cafe9269fd9950dd
Implements: blueprint ironic-container
2015-09-28 16:10:43 -04:00
Jenkins
57f5905db9 Merge "Bind novnc to single interface" 2015-09-28 10:10:16 +00:00
Sam Yaple
5e60d8ec87 Create nova-libvirt directory before copying files
The previous patch (I92f2eac895283791b2eea6a4351a43e90fdbb5a3) didn't
fix it because of the ceph patch that merged.

Change-Id: I82207f5cc684f7c180e301cac69fcc98fca63268
Partially-Implements: blueprint replace-config-external
2015-09-27 13:44:50 +00:00
Sam Yaple
aa1b2a1c4f Bind novnc to single interface
Change-Id: I163588ed369661bfa493ef3b28fc34c1b3a91b52
Closes-Bug: #1500166
2015-09-27 09:32:57 +00:00
Sam Yaple
06be8ce7e0 Ceph bugfix for missing host
Change-Id: I902e771a6e377f9ce3e452c123b2bbf65e3a2d7f
Implements: blueprint ceph-container
2015-09-26 13:21:34 +00:00
Sam Yaple
99c7eb1997 Make OpenStack use Ceph
This implements all the openstack pieces needed to make ceph work.

DocImpact
Change-Id: I1d24476a966602cf955e5ef872b0efb01319894a
Partially-Implements: blueprint ceph-container
Implements: blueprint kolla-live-migration
2015-09-25 20:11:18 +00:00
Ryan Hallisey
0ebb67346f Add missing when statments when copying JSON files in ansible
Change-Id: I865b3f4c63520ec318c8b50f4ba60b5715d283ee
Partially-Implements: blueprint replace-config-external
2015-09-24 13:36:54 -04:00
Jenkins
a83d84b383 Merge "Create nova-libvirt directory before copying files" 2015-09-24 12:15:33 +00:00
Sam Yaple
931335528f Create nova-libvirt directory before copying files
Change-Id: I92f2eac895283791b2eea6a4351a43e90fdbb5a3
Partially-Implements: blueprint replace-config-external
2015-09-24 11:36:31 +00:00
Michal Jastrzebski
3d0b540064 Nova logging to rsyslog
Configure nova to use rsyslog container as logging mechanism

Change-Id: I9c595e8ac7b4aedc6ba4fe6bb7cfe7e624133c41
Implements: bp logging-container
2015-09-24 12:45:46 +02:00
rthallisey
aebb16fff9 Replace config-external with a JSON file for Nova
Change-Id: I38c545484a7b1f3906d844eb3a7486e11c4b276a
Partially-Implements: blueprint replace-config-external
2015-09-23 19:33:27 +00:00
Hui Kang
83157d1a19 Add nova_novncproxy port to haproxy configuration
Make novncproxy_port configurable

Change-Id: I54f7918b1927562baf2e125b7f5c8edaec87e993
Closes-Bug: #1497673
2015-09-22 15:48:09 +00:00
Steven Dake
ca4db1d965 Enable nova-libvirt to be updated
Libvirt shuts down existing virtual machines.  To solve this problem,
the /var/lib/libvirt directory needs to be persisted.  By persisting
this directory in the nova data container, libvirt can communicate
with the sockets setup by the previous data container.

Change-Id: I362c533f8493984123686fe6e3f8e43d97434ca6
Closes-Bug: #1494060
2015-09-09 21:08:34 -07:00
Steven Dake
1025890e99 Make nova use a data container
Make nova-libvirt and nova-compute use a data container called
nova_data.  This data container contains /var/lib/nova/instances
data so upgrades to nova-compute work properly.

Change-Id: I89362eb0857f7b07503c35178475bc91d0d19ca8
Closes-Bug: #1486333
2015-09-09 21:08:32 -07:00
Sam Yaple
f42528acaf Properly check failed status
No need for a new task.

Change-Id: I958f87ac9a1434a2f6052e0271f37e5f3109775e
Closes-Bug: #1492337
2015-09-06 11:21:44 +00:00
Vladislav Belogrudov
7f81dbc85b Check exit status of bootstrap containers
Currently bootstrap containers are waited to exit but are not
checked for exit status and ansible runs further tasks. If
bootstrapping fails we notice it at much later time.

Change-Id: I137fc11b0f9d1f03d2ded08a213e8dbd62741f92
Closes-Bug: #1492337
2015-09-04 19:47:54 +03:00
Jenkins
f8c2f03094 Merge "nova-libvirt requires a /sys/fs/cgroup bindmount" 2015-08-31 19:55:38 +00:00
Steven Dake
e2d35ad054 nova-libvirt requires a /sys/fs/cgroup bindmount
Nova-compute is curerntly generating a backtrace when trying to nova
boot a VM.  The backtrace is described in the bug log.  Bind-mounting
/sys/fs/cgroup:/sys/fs/cgroup in the libvirt container resolves the
problem.

Change-Id: I5a56b61fd260728fb76e19bcbdf403b80a4ec5a6
Closes-Bug: #1490326
2015-08-31 10:44:52 -07:00
Paul Bourke
f5c996e77d Fix typo in task bootstrap task names
Not quite halloween yet...

Change-Id: Ib1973eea0b2dddc0e0845731d1212c4d4447cca5
Closes-Bug: #1490502
2015-08-31 11:27:10 +01:00
Vladislav Belogrudov
04ba3ccb51 Wait for bootstrap containers on the same hosts they run
Change-Id: Id6a82e6622f712c6fca8205357dec4e5161e46d2
Closes-Bug: #1487387
2015-08-24 13:38:36 +03:00
Sam Yaple
dc0abd1019 Uses the appropriate port value for Glance
nova.conf was not using the proper port value for glance and would
only work with the default port in that situation.

Additionally, the state_path defaults to the python directory rather
that the expected /var/lib/nova/ directory.

Paritially-Implements: blueprint update-configs

Change-Id: I9cc2117c1d786fc1b81c53848e543d27afaf8979
2015-08-23 03:56:31 +00:00
Steven Dake
98b98924ee Use database_user_create in the register operation
The register operation was registering user_database which is a global
variable in group_vars/all.yml.  This results in glance not being deployable
because user_database is overwrriten at keystone task registration time.

The result of this is the playbooks fail to deploy.

Change-Id: Ic69725fb09aa0a368ec5b0d8f47bfc768c29c70c
Closes-Bug: #1486876
2015-08-20 00:49:31 -07:00
Swapnil Kulkarni
b3ef443cd3 Remove Ansible abstraction for Nova
Co-Authored-By: Sam Yaple <sam@yaple.net>
Change-Id: Iad9fd7010eaf112f169feb54d9a0e97fd693e5f1
Partially-Implements: blueprint remove-abstraction-ansible
2015-08-18 09:35:17 +00:00
Sam Yaple
bf8d7d04d0 Fixes typo in nova.conf
Change-Id: Idba2f4a0f2a0e57b5e0d80d4a31a24808db6a14d
Closes-Bug: #1484357
2015-08-13 05:09:06 +00:00
Sam Yaple
d91346377e Update nova.conf and ports
Cleanup all options in the minimal nova.conf. Remove options where
the default value was specified explicitly. Updated ports and bindings
to be configurable.

Partially-Implements: blueprint update-configs
Change-Id: I0bca7a8f9c4c6fa40145d66a95de7e98edc0edce
2015-08-10 23:54:52 +00:00
Sam Yaple
98a379b0fd Reduce dependencies on the dest nodes
Currently we require a slew of deps on each destination node, this
includes a gcc compiler and installing things via pip. We can remove
these dependencies by containerizing them and running and Ansible
inside the container itself. The container would then report back
facts about idempotency.

DocImpact
Closes-Bug: #1481495
Implements: blueprint containerize-dependencies
Change-Id: I3dfccbf9fafc06ffc36e78f3006fe5d3367891df
2015-08-06 01:32:05 +00:00
Sam Yaple
b401a90254 Add linuxbridge as option to ansible
Allows the user to configure neutron_plugin_agent value for Ansible.
Current allowed values are openvswitch and linuxbridge.

Implements: blueprint ansible-neutron-linuxbridge

Change-Id: I0572464a5459d2f9da09b6da22db16e240511f99
2015-08-02 11:48:21 +00:00
Sam Yaple
8e03952c10 Fixes race condition in ansible playbooks
Bundling in a run_once error that beaks with multinode and the race

Change-Id: Ia3779d9a291f8d652fc81fe5ebcab88241805c8d
Closes-Bug: #1480468
2015-07-31 22:40:21 +00:00
Vladislav Belogrudov
2887c6d2e4 Add missing slash if docker registry is specified
If user specifies registry a full image name is constructed by
concatenation of the registry, namespace and image. Currently
concatenation does not include '/' if registry is non-empty but
it should. If registry is empty '/' is not required.
This fix covers both use cases with help of Ansible filter.

Change-Id: I0588dd0da55d777e6caa7eb47d51b2435d38d5e0
Closes-Bug: #1479013
2015-07-31 18:38:16 +03:00
Sam Yaple
3bc9adf9b2 Forces metadata to bind to single interface
Also adds haproxy config for metadata.

Change-Id: I65c1ae5f491d66bf4dccaa38a9a2ad4026c1f72e
Closes-Bug: #1478333
2015-07-30 19:10:11 +00:00