478 Commits

Author SHA1 Message Date
SamYaple
ddb7cd88c5 Convert Neutron to thin containers
*** Requires Docker 1.10 which is released ***

Documentation will be in the next patch. You must set the following
in your docker.service daemon control file for propogation to work:

    [Service]
    MountFlags=shared

======================================================================

Thanks to mount propagation in Docker 1.10 we can use thin containers
finally! This is extremely useful to operators since now they can
access the network namespaces from the hosts (outside the neutron
container). But additionally it allows us to implement the VPN agent
and other services easier.

Neutron containers and the neutron role are brought into the standards
of the new Kolla. Completely with drop-root and ansible formating
updates.

The ip_wrapper.py script was (thankfully) not needed so it has been
removed from the repo.

Partially-Implements: blueprint upgrade-neutron
Change-Id: Iaf5555283240457e1912459f397a6393d886fba1
2016-02-06 07:13:47 +00:00
SamYaple
e8d66766f0 Fix gate for docker 1.10
Docker 1.10 has broken the gate and this patch will correct that
breakage.

The issue comes with rsyslog. Due to a commit in Docker 1.10 [1] we
must change the way we get the log socket for rsyslog. The /dev/
folder will no longer populate as we used it. So instead we simply
make a new socket in a path we control and share that to the correct
location in the containers.

Additionally, adjust the gate for new Docker daemon.

[1] https://github.com/docker/docker/pull/16639
Partially-Implements: blueprint kolla-upgrade
Change-Id: I881a2ecdf6d7b35991e1d38a3f3e60d022d6577f
2016-02-06 06:48:53 +00:00
SamYaple
508f3863cc Fix two missing toolbox references
Two patches merged that did not have teh correct name for
kolla_toolbox

TrivialFix

Change-Id: I09e230e29cff496247c32bf227715bfb7caa0a95
2016-02-05 17:24:39 +00:00
Jenkins
b891afd64c Merge "Rename kolla_ansible to kolla_toolbox" 2016-02-05 15:04:37 +00:00
Jenkins
29833b67e1 Merge "Make libvirt reestablish connection with qemu" 2016-02-04 16:38:02 +00:00
Jenkins
3e586c9bcb Merge "Revert "fix miss rabbitmq config when hostname include special character"" 2016-02-04 16:33:49 +00:00
SamYaple
1ca35e688f Make libvirt reestablish connection with qemu
Libvirt stores some information in /run at runtime that is needed to
automatically reestablish a connection with the VM when a new
container is created. Without this information a long (and manual)
process is needed to redefine the running vms and reattach to the
running qemu process.

This mountpoint was removed as "unneeded" in the past, but it does
exist in Liberty branch enabling a no-vm-downtime upgrade.

TrivialFix

Change-Id: I2eb31c602d8d17cbd6a8e405daf4123070794843
2016-02-04 12:15:36 +00:00
Sam Yaple
84540a0632 Revert "fix miss rabbitmq config when hostname include special character"
This change breaks ubuntu

This reverts commit 04992a3de0a181a658cae2561a3a1adce313bbf1.

Change-Id: I5e38d4c4a37ee90603ad04ab4b9d03298b6b2eb2
2016-02-04 11:47:28 +00:00
Jenkins
8725ed652a Merge "Playbook for horizon upgrade" 2016-02-03 21:09:33 +00:00
Jenkins
7c264ca022 Merge "Create nova-api database" 2016-02-03 15:30:49 +00:00
Jeffrey Zhang
5c1bcb8d16 Playbook for horizon upgrade
Partially-Implements: blueprint upgrade-kolla
Implements: blueprint upgrade-horizon
Change-Id: I11f11a684becd43cb137fe2c5694ca7e887b38ba
2016-02-03 06:18:57 +00:00
SamYaple
e7dfd63bfc Create nova-api database
This is a required patch.

Kilo introduced a nova-api database but didn't use it. [1]
Mitaka now uses it and has broken booting instances. [2]

[1] https://wiki.openstack.org/wiki/ReleaseNotes/Kilo#OpenStack_Compute_.28Nova.29
[2] df0fca62cf/releasenotes/notes/request-spec-api-db-b9cc6e0624d563c5.yaml

Change-Id: If0a7f4ba4937fab8d60f5236ca00db06faa768c7
Closes-Bug: #1540579
2016-02-02 21:56:54 +00:00
Jenkins
262e880b86 Merge "Fix Swift for multinode P+ACO deployment" 2016-02-02 21:39:07 +00:00
Jenkins
572e80e6d0 Merge "Add an ansible role for mongodb" 2016-02-02 21:25:19 +00:00
SamYaple
80b7266ed1 Rename kolla_ansible to kolla_toolbox
This change is needed for clarity. We have a kolla-ansible script.
We have a kolla-mesos repo. We plan to have a kolla-ansible repo.
Already we have had far too much confusion about whether we are
talking about the container or the project. Naming this kolla-toolbox
eliminates all of that confusion and its probably a bit more accurate
of a name too.

Closes-Bug: #1541053
Change-Id: I8fd1f49d5a22b36ede5b10f46b9fe02ddda9007e
2016-02-02 18:12:15 +00:00
Jenkins
0e5ca754ac Merge "Playbook for upgrade mistral" 2016-02-02 17:05:34 +00:00
Jenkins
e45196e678 Merge "Playbook for upgrade memcached" 2016-02-02 16:42:05 +00:00
Jenkins
3659290d88 Merge "Playbook for upgrade murano" 2016-02-02 16:32:38 +00:00
Allen Gao
46ba4548cf Playbook for upgrade mistral
Change-Id: Iaec726be146fd93bf1437fcd859081858b1d541d
Partially-Implements: blueprint upgrade-kolla
Implements: blueprint upgrade-mistral
2016-02-02 20:49:28 +08:00
weiyu
04992a3de0 fix miss rabbitmq config when hostname include special character
Change-Id: I46db4d3547b120d1ccd87a48e31b699bdd1aa1a0
Closes-Bug: #1540234
2016-02-02 18:37:44 +08:00
Allen Gao
54aa896735 Playbook for upgrade murano
Change-Id: Iffb12c8e22724ba779e4ce80204710513875e725
Partially-Implements: blueprint upgrade-kolla
Implements: blueprint upgrade-murano
2016-02-02 15:03:08 +08:00
Allen Gao
bf35138042 Playbook for upgrade memcached
Change-Id: I98616610a2d665ba20085d3550975ea8093653fc
Partially-Implements: blueprint upgrade-kolla
Implements: blueprint upgrade-memcached
2016-02-02 14:52:29 +08:00
Qiu Yu
b209da1306 Fix Swift for multinode P+ACO deployment
Current Swift playbook is based on the preassumption of AIO setup.
However, if one goes with default multinode setup
(ansible/inventory/multinode), it follows the P + ACO deployment model,
which proxy-server runs on controller nodes where ACO
(account/container/object services) run on storage nodes.

It will break because swift proxy-server no longer has access (it
shouldn't have) to /srv/node path. This change ensure disk mounting part
only happens on storage node. It also moves chown from proxy-server
Dockerfile to rsyncd because no matter with PACO, P+ACO or P+A+C+O
model, rsyncd is always running on each storage node.

Change-Id: I3aa20454902caa9c84d3901bb91e4e4c93ac5f34
Partially-Implements: blueprint swift-physical-disk
Closes-Bug: #1537544
2016-02-02 02:14:31 +08:00
Jenkins
b3c205dd40 Merge "Convert rabbitmq to named volume" 2016-02-01 10:37:38 +00:00
Jenkins
c755a62ee0 Merge "Fix missing swift proxy server image in pull action" 2016-02-01 09:41:32 +00:00
Qiu Yu
d1d8308b51 Fix missing swift proxy server image in pull action
Add back missing swift proxy server image which was removed in Swift
shared image change.

TrivialFix

Change-Id: Icf13d4a1550192f73e266a6c6aa74f604ee4e77a
2016-01-30 06:00:59 +08:00
SamYaple
64a767db4d Convert rabbitmq to named volume
Change-Id: I81413ffcaa4efb881d13fef62823d60b676e871d
Implements: blueprint docker-named-volumes
2016-01-29 20:39:55 +00:00
Qiu Yu
a0fc2bd644 Detect and use physical disks for Swift storage
This change let Swift detect and use physical disk for storage. The
old named volume for storage isn't really useful for any serious setup.
Also updated swift-guide.rst accordingly.

Change-Id: I4f577b7b69d8bcd8b3961500946241c65a16db22
Partially-Implements: blueprint swift-physical-disk
2016-01-30 04:03:55 +08:00
Jenkins
5fc2794eb0 Merge "Update ceph-mon keyrings" 2016-01-29 18:47:57 +00:00
SamYaple
6d8959a962 Update all bootstraps to use Label
Add bootstrap label to all bootstrap containers to ensure that when
the a new container is launched a difference is seen between it and
the bootstrap container since we cannot rely on ENV variables for
this. This only affects mariadb at this stage, but it is needed to
ensure rabbitmq works when we switch to named volumes.

Change-Id: Ia022af26212d2e5445c06149848831037a508407
Closes-Bug: #1538136
2016-01-28 20:26:41 +00:00
SamYaple
7e2ce01431 Cleanup mariadb and make compatiable with mesos
There is no reason to have a hostname-unique pidfile in the container
as we currently have. This posed problems with kolla-mesos reusing
the same script. Since there is no reason for this pidfile to be
configurable in path _at_ _all_, we hardcode the path.

Additionally, we adjust the file perm change to only update the perms
on the folder if it is not already properly set.

This also incorperates a kolla-ansible file in the bootstrap process
which follows our other container techniques of using the idempotent
creation of a volume in the bootstrap process (see nova)

TrivialFix
Related-Bug: #1538136
Change-Id: I2380529fc7146a9603145cdc31e649cb8841f7dd
2016-01-28 20:26:41 +00:00
SamYaple
33f3e1d8ca Update ceph-mon keyrings
Since the fetch script fetched _all_ keyrings from the ceph-mon
container, the ceph-mon container must contain all keyrings. This
setup works AIO but was broken on multinode because the ceph-mon
container did not have the radosgw keyring. This issue affects every
multinode install regardless of using the radosgw or not.

TrivialFix

Change-Id: Ie416de1a5275862da6d77ef0dd174e85e499fc0f
2016-01-28 17:47:30 +00:00
Jenkins
42fc119658 Merge "Add the missed stub upgrade.yml" 2016-01-28 10:15:12 +00:00
SamYaple
e80b44da08 Remove the libvirt socket
We use tcp connection rather than socket so we can remove the config
options related to it.

Additionally adjust the _extremely_ verbose logging from INFO to
WARNING.

TrivialFix
Change-Id: I88bf660134192f11732d012985df5c4f688419ba
2016-01-27 20:04:13 +00:00
Allen Gao
727a69e41e Add the missed stub upgrade.yml
After introduction of pull action and turing every main.yml into
{{action}}.yml we lost ability to perform upgrade.

Change-Id: Id6b5921bd1e3e7b196c4b3223920e51ae5e0b840
Closes-Bug: #1538210
2016-01-27 18:34:51 +00:00
Hui Kang
3ae0063944 Add an ansible role for mongodb
Change-Id: Ia6ac371845d1f2b545406d096b35a6d5f68be5f6
Implements: blueprint ansible-mongodb
2016-01-27 10:48:34 -05:00
Jenkins
b6c9d2acfa Merge "Add bootstrap task for ironic-pxe" 2016-01-27 13:52:36 +00:00
Jenkins
c70cefe19c Merge "Fix ironic-pxe map-file location" 2016-01-27 13:51:38 +00:00
Jenkins
4ee8f78051 Merge "Added Kibana and its deployment." 2016-01-27 13:49:49 +00:00
Jenkins
1360c9f776 Merge "Update ring builder filenames in Swift config" 2016-01-27 10:20:19 +00:00
Jenkins
6c35db3683 Merge "Fix swift.conf.j2 so that merge_configs can recognize" 2016-01-26 19:42:56 +00:00
Qiu Yu
40a17b559e Update ring builder filenames in Swift config
Update Swift config playbook to use correct name of Swift ring
builer file. Those are the names generated if one follows document in
doc/swift-guide.rst

TrivialFix

Change-Id: If1d713e3cccc851ef6f2cc3cb5a736b43fa26957
2016-01-27 02:24:03 +08:00
Michal Jastrzebski
375965ddfb Add stub upgrade.yml
After introduction of pull action and turing every main.yml into
{{action}}.yml we lost ability to perform upgrade

Change-Id: Ie9fa2cd083b061033abc733fba53d54f9c55e393
Fixes-Bug: #1538210
2016-01-26 11:52:19 -06:00
akwasniewska
3672152d9d Added Kibana and its deployment.
Part of ELK stack. Includes Dockerfiles for both Centos and Ubuntu.

Change-Id: I1d955a5c51e416cc572eb2c9b4c57982a1d6ab67
Partially-implements: blueprint central-logging-service
2016-01-26 15:53:13 +00:00
Andrey Shestakov
5855a07212 Add bootstrap task for ironic-pxe
PXE files should be copied after volume mount to avoid overwrite.

Change-Id: I023cc316e6873abd658478dfa05be839e44a80c7
Closes-bug: #1538164
2016-01-26 15:35:09 +00:00
Andrey Shestakov
9da034dc0a Fix ironic-pxe map-file location
map-file should not be overwriten by volume

TrivialFix

Change-Id: I57bf963fd4af8c010fda0c4504e83dc33f6e9162
2016-01-26 14:28:21 +00:00
Qiu Yu
1f430a4935 Fix swift regression caused by swift shared image change
Correct the leftover image name.

Change-Id: I54c46bfabc2afbdd2ada697decec1f67bf70b6ed
Related-Id: I929689f93b56396a41b19fda46e4679c4de84ca1
Closes-Bug: #1537993
2016-01-26 13:41:18 +08:00
Jenkins
b7fea50b65 Merge "Share the same image between swift services" 2016-01-25 17:07:29 +00:00
Qiu Yu
654fe9e585 Fix swift.conf.j2 so that merge_configs can recognize
This change fixes the problem that `swift_hash_path_suffix` and
`swift_hash_path_prefix` not picked up because of the relative path
merge_configs can not recognize.

Change-Id: I4d93269babe71e51ba7949b719f753c1e1b34e3c
Closes-Bug: #1537331
2016-01-23 16:25:50 +08:00
Jenkins
e410386e45 Merge "Fix deprecated parameter name in nova.conf" 2016-01-22 12:59:01 +00:00