524 Commits

Author SHA1 Message Date
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
Sam Yaple
1167f11813 Adds glance and nova data volume
Change-Id: I179a20e637274659cf6e3b2d8a61ff2728fa084b
Closes-Bug: #1478315
2015-07-26 08:12:52 +00:00
Sam Yaple
3b30760e2d Fix compute permissions and start params
neutron-server was not properly using ml2_conf.ini

nova did not have ovs utils, and it had incorrect libvirt permissions

Change-Id: I43d2110d0b5fc1940d887dace95787e1ebbe142d
Partitially-Implements: blueprint ansible-service
2015-07-23 18:20:42 +00:00
Steven Dake
9c5e708fe2 Add pid_mode to libvirt
Libvirt requires pid_mode to Host to operate on Fedora Hosts.  Further
we will need this for libvirt upgrade.  I am not entirely sure why
libvirt running with pid=host gets things working, but it definately
has something to do with CentOS's libvirt's integration with systemd.

Nailing down the problem, the interface to the Docker module accepts only
None or "host".  There is no way to generate a None type except with !!null
in yml, but this does not work in the jinja2 parser.  As a result, one
solution is this conditional.  A better long term solution would be for
the Docker module to take some other argument to indicate None that can
be expressed in a string.

Change-Id: I54eb87e8ce8679bbf12f671527280c73e195b2e4
Closes-Bug: #1473270
2015-07-15 13:24:35 -07:00
Sam Yaple
7da0b2a80c Ansible Nova w/ libvirt support
Initial support for Nova in Ansible

Partially-Implements: blueprint ansible-service

Change-Id: I4b0a74bd3e5daa5664f5e1e622bfb40c3285949e
2015-07-12 12:44:14 +00:00