264 Commits

Author SHA1 Message Date
OpenStack Proposal Bot
21acc02601 Updated from OpenStack Ansible Tests
Change-Id: I99d81db1f10e44d8d493452a25ac2c2a72b72884
2017-08-04 15:21:40 +00:00
Jenkins
0a60837dec Merge "Be more lenient on input version." 2017-08-04 10:46:35 +00:00
OpenStack Proposal Bot
a21585c9e4 Updated from OpenStack Ansible Tests
Change-Id: Ia9c13c909d9de1012434ba242792a05614c619d4
2017-08-03 15:26:12 +00:00
Jean-Philippe Evrard
81713f8e60 Be more lenient on input version.
RPC is using r11 and 11 for kilo, same for upper branches.
We should be more lenient to the version allowed, whether it's
starting with a r or not, as long as the major version is the
same number.

Change-Id: I42053681fdc5e0b2c16060d8a51b4a620569f38c
2017-08-03 13:57:40 +00:00
Jenkins
b6f024875a Merge "Re-run setup-hosts before re-deploy." 2017-08-03 13:15:57 +00:00
Jenkins
c6674599c8 Merge "Remove the | changed idempotency breaker" 2017-08-03 13:11:57 +00:00
Jean-Philippe Evrard
0de82c08d9 Remove the | changed idempotency breaker
If we interrupt the process in unarchive, we'll have a broken
idempotency state: The leapfrog process will run again the venv
prep, the synchronize will be unchanged, and the unarchive
rewire will never run.

Change-Id: I8e91ef39d4ecbc9ff5a6a4a73cd0ce4679d6ecf0
2017-08-02 17:28:46 +00:00
Jean-Philippe Evrard
8dcdc893e4 Re-run setup-hosts before re-deploy.
If a user is using a REDEPLOY_EXTRA_SCRIPT to migrate additional
variables before re-deploying, it's maybe best to re-run all the
playbooks that happen in a deploy. All the playbooks are already
there, excepted the openstack-hosts-setup, so we add it here.

Change-Id: I64bade46cb1ece6f21ed42c7622bd6e39f2420fe
2017-08-02 14:24:36 +00:00
Kevin Carter
6dbba8a3f8
fix vm server ip typo and isolate hosts into ip blocks
Change-Id: I27d4b9a304241c7572f3c634fb7d3ef4eaed6a3e
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-08-01 13:14:24 -05:00
Kevin Carter
369f68832e
Add environment options and re-flow the README.rst
Change-Id: I7a2640856045e36043de8508f9421fbd8a593591
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-08-01 09:13:15 -05:00
Kevin Carter
cec9c6bebc
Add force handlers to the build command
This change ensures that all handlers that are triggered are fired which
should assist in cases where a playbook fails and is then rerun.

Change-Id: I6b53611df72cbd0a98bc6d58cff786ae3662e9c5
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-08-01 09:03:25 -05:00
Jenkins
850c763a19 Merge "Convert vars in files to host_vars" 2017-08-01 13:36:49 +00:00
Antony Messerli
505f5bb19a Ensure openstack_deploy directory is create before copy
Change-Id: Ic28bbd01f0647914223885c89c7843b20073e081
2017-08-01 10:48:51 +00:00
Kevin Carter
cfc76ded4a
Convert vars in files to host_vars
This change allows the MNAIO to really be used as a stand alone kick
system which has the potential to be developed into a stand alone
project. At the very least this change improves playbook performance
by scoping variables.

The inventory has been converted into a typical Ansible inventory and
the "servers" used in the MNAIO are now simply host_vars
which will trigger specific VM builds when instructed to do so. This
gives the MNAIO the ability to serve as a stand alone kick system which
could be used for physical hosts as well as MNAIO testing all through
the same basic set of playbooks. Should a deployer want to use this with
physical servers they'd need to do nothing more than define their basic
inventory and where the the required pieces of infrastructure needed to
PXE boot their machines.

Change-Id: I6c47e02ecfbe8ee7533e77b11041785db485a1a9
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-31 23:31:13 -05:00
Kevin Carter
a3d39c43cb
fix typo in osa user config for swift and inets
Change-Id: I0befea6c7e403ca847721de3a5a8338e0e734098
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-31 17:55:28 -05:00
OpenStack Proposal Bot
a1f67af84e Updated from OpenStack Ansible Tests
Change-Id: Ied22cbe9590e4875408cd391f6751f342c4073b4
2017-07-31 19:10:40 +00:00
Jenkins
db5e151534 Merge "move deploy node to infra1 and make a LB node" 2017-07-30 03:03:21 +00:00
Kevin Carter
9abaeba8c8
move deploy node to infra1 and make a LB node
Sadly the log node does not have enough ram to run a full ansible run.
Ansible 2.x requires more ram than one would expect, especially when the
inventory gets large. this change moves the deploy node to infra1 as it
will already have the ram needed to run the playbooks. Additionally the
container storage for infra nodes was too small which forces builds into
error. The default storage for VMs has been set to 90GiB each and the
preseed will create a logical volume for VMs mounted at /var/lib/lxc.

While the limited ram works well for the VMs and within a running
deployment of OSA, ansible-playbook is subject to crash like so:

  An exception occurred during task execution. To see the full traceback,
  use -vvv. The error was: OSError: [Errno 12] Cannot allocate memory
  fatal: [infra1_cinder_api_container-b38b47ea]: FAILED! =>
  {"failed": true, "msg": "Unexpected failure during module execution.", "stdout": ""}

So infra nodes have had the memory constraint raised to 8GiB

Change-Id: I7175ea92f663dfef5966532cfc0b4beaadb9eb03
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-29 15:52:36 -05:00
Jenkins
7485f32bf2 Merge "add acng to the host system and preseeds" 2017-07-29 01:13:32 +00:00
Kevin Carter
3f17e2b5db
add acng to the host system and preseeds
This change ensures that the VMs and host systems cache apt packges
locally which will speed up the boot and deployment process.

Change-Id: I234e338b9f1b9f11ff1e81ede8c5717e033fdad8
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 18:53:57 -05:00
Jenkins
10f2d21760 Merge "Updated from global requirements" 2017-07-28 23:07:20 +00:00
Kevin Carter
3788abcf8b
correct CPU topology
Change-Id: Ica5306483991a893a4bfd4f1aba8ad00cd51d045
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 17:02:34 -05:00
OpenStack Proposal Bot
8b57f94e07 Updated from global requirements
Change-Id: I756da3fda6e716274d7632614d0f4075f4db97ab
2017-07-28 21:43:59 +00:00
Kevin Carter
c3800224b0
move drive layout to deploy-vms and fix deploy-osa tags/tasks
Change-Id: Iaee4c3683d798320099dec77286e6fac7a10bee8
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 14:49:27 -05:00
Kevin Carter
ca24b28fdc
re-added missing bindep
Change-Id: Ia23b9096a5af10290e3aee368a69205151fdc7fd
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 11:47:33 -05:00
Jenkins
0c5971df88 Merge "Remove the deploy vm and use the log node instead" 2017-07-28 16:09:22 +00:00
Jenkins
907538c745 Merge "load virtio kernel modules by default" 2017-07-28 16:09:17 +00:00
Jenkins
89f2a5c6b1 Merge "Combine our two multi-node-aio processes into one" 2017-07-28 16:08:48 +00:00
Kevin Carter
96e9384277 Remove the deploy vm and use the log node instead
This reduces the resource consumption by removing the deploy node and
using the log node instead. This also ups the ram allocation to the
infra hosts which will improve the deployment experience by ensuring we
don't run out of memory.

Change-Id: Id38ff386669308ac3fd1e539ae37c969f00353b8
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 15:36:49 +00:00
Kevin Carter
7917eb144d load virtio kernel modules by default
Change-Id: Ibef9b6ff273784566e6c7b479cacd2d2dd97fe0d
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 15:36:44 +00:00
Kevin Carter
a94f0a9026 Combine our two multi-node-aio processes into one
The original mnaio was built using a lot of bash and was tailored
specifically for ubuntu 14.04. The new mnaio was built using a mix of
bash and ansible and was tailored specifically for ubuntu 16.04. This
patch takes the two code bases and combines the best things from each
method and wraps it up into a single code path all written using ansible
playbooks and basic variables.

While underlying system has changed the bash environment variable syntax
for overrides remains the same. This allows users to continue with what
has become their normal work-flow while leveraging the new structure and
capabilities.

High level overview:
  * The general performance of the VMs running within the MNAIO will now
    be a lot better. Before the VMs were built within QCOW2 containers,
    while this was flexible and portable it was slower. The new
    capabilities will use RAW logical volumes and native IO.
  * New repo management starts with preseeds and allows the user to pin
    to specific repositories without having to worry about flipping them
    post build.
  * CPU overhead will be a lot less. The old VM system used an
    un-reasonable number of processors per VM which directly translated
    to sockets. The new system will use cores and a single socket
    allowing for generally better VM performance with a lot less
    overhead and resource contention on the host.
  * Memory consumption has been greatly reduced. Each VM is now
    following the memory restrictions we'd find in the gate, as a MAX.
    Most of the VMs are using 1 - 2 GiB of RAM which should be more than
    enough for our purposes.

Overall the deployment process is simpler and more flexible and will
work on both trusty and xenial out of the box with the hope to bring
centos7 and suse into the fold some time in the future.

Change-Id: Idc8924452c481b08fd3b9362efa32d10d1b8f707
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-07-28 15:35:23 +00:00
git-harry
b291961361 Fix neutron agent container removal
This change fixes the removal of neutron agent containers so that it no
longer relies on the containers existing on the deploy host.

The file `leapfrog_remove_remaining_old_containers` is only created on
the deploy host, when combined with the fact that the original task
couldn't fail, it resulted in the removal of the containers silently
failing on multi-node builds.

This change gets the list of containers from the file on the deploy host
before trying to delete them on all hosts.

Change-Id: Ic95187fd7e7ff93c796ce01f296cb06a16ba72bd
2017-07-27 21:14:49 +01:00
Weezer Su
56e888a375 add deploy node into mn-aio-xenial
1, add deploy node into mn-aio-xenial
2, change the nic to eth0 because kvm needs it
3, local cache the ubuntu image for faster installation.

Change-Id: I9be2493fc64481c3e6249cb5e2d36c708545ad3d
2017-07-21 09:21:30 -05:00
ZhongShengping
2c4f4cc434 Update URLs in documents according to document migration
Change-Id: I213c3a4569d0ba67c6f373e44dbfa8a37c24599b
2017-07-14 13:54:50 +08:00
Jenkins
1116df7528 Merge "Improve openstack-release file discovery" 2017-07-13 14:18:52 +00:00
Miguel Alex Cantu
ebb827ea46 Improve openstack-release file discovery
In cases where the deployment node is seperated from the infrastructure
node, the openstack-release file discovery logic might calculate the
wrong release since the /etc/openstack-release file does not get generated
on the deployment node.
This commit adds logic to pull down the /etc/openstack-release file from
the infrastucture node to the deployment node. This way, the release discovery
logic will properly assess the openstack release even in situations where the
deployment node is isolated from the infra node.
If the openstack-release file is not found, an attempt to retrieve the
rpc-release file is made.

A conditional is added to check if the rpc-release file exist in the
environment. If it does, and there is no openstack-release file, then
the deployment version is set to Juno.

Co-Authored-By: git-harry <git-harry@live.co.uk>

Change-Id: I6136609ef11be7b98ddcfc7589dd17cf1e98c362
2017-07-13 14:58:06 +01:00
Jean-Philippe Evrard
9c6cb57cf7 Change mirror used to fetch venvs by default
Move to use rpc-repo (the origin) instead of its mirror,
mirror.rackspace.com

Change-Id: I5991026faed73d7712bdc6385d5cf350fb435ad8
2017-07-13 10:24:15 +00:00
git-harry
6d26cf0c6d Ensure mysql-python dependency met
`libmysqlclient-dev` is missing, when performing a Kilo to Newton upgrade
on a multi-node AIO, causing `mysql-python` to fail to install. This
change ensures it is present.

Change-Id: Id418929b1713357bea183c50b64219f175aee9bc
2017-07-13 10:55:36 +01:00
git-harry
9ff145e3b2 Ensure PIP requirements are always met
This change is necessary to ensure that all the required PIP packages
are installed. Without this change the code assumes that if the version
of `pip` in okay then all the required packages are already installed.

Change-Id: I16a4eaf24e346411a7f0890d69939f666ecc6be3
2017-07-13 09:38:13 +01:00
Weezer Su
db23a2a2cc Do not exit if the REDEPLOY_EXTRA_SCRIPT is null or not set
Make sure the script is still going if REDEPLOY_EXTRA_SCRIPT is null
or not set, and will run extra script if it is not null.

Change-Id: Ic4b37ccc0ac6c23be892fee7ccd2c82f6f1d7da1
2017-07-12 14:07:56 +00:00
Jean-Philippe Evrard
c441ba4410 Do not delete containers named rpc.*
If leapfrogging from Kilo (and above) with a host named rpc.*
all the containers will be wiped during the step
``neutron-remove-old-containers.yml``.

Change-Id: I2e1106bcce12547d6ab9e0384cd96d5e0194001d
2017-07-11 13:36:58 +00:00
Melissa Kam
8a182302ee Support older versions for getting service ports
Kilo and Liberty have a different name for the
haproxy services than newer versions.

Change-Id: I070eb22cc219451f42c436fa31e4db33fa79a8fe
2017-07-07 11:19:11 -05:00
OpenStack Proposal Bot
fc7a6d0a6e Updated from OpenStack Ansible Tests
Change-Id: I7aabac59f66424093c95f346b8414ea7969a514f
2017-07-07 01:52:25 +00:00
Jenkins
0ee32f89a1 Merge "Fixing timing_counter based swift graphs" 2017-07-07 00:51:46 +00:00
Jenkins
7a1c0e49bc Merge "Fix a typo in all seed files" 2017-07-06 06:49:48 +00:00
Jenkins
5884762cbd Merge "Ensure liberasurecode-dev is installable" 2017-07-03 14:48:12 +00:00
Jean-Philippe Evrard
da7cc439f7 Ensure liberasurecode-dev is installable
Make sure the liberasurecode-dev is installable when needed, in order
to build the venvs for swift.
No distinction is done anymore for backports/anything else like UCA.

Change-Id: I552b77eeb05469b815592da1dd7fab45124ffe89
2017-07-03 15:01:24 +01:00
ZhongShengping
c0f718f4f2 Fix openstackdocstheme settings
To use openstackdocstheme 1.11.0 properly, this patch fixes
some settings according to follow[0].

[0]https://docs.openstack.org/openstackdocstheme/latest/

Change-Id: I1819557547bad6a598b834bd4200e28571efd40a
2017-07-03 16:13:07 +08:00
Weezer Su
8c98c87885 Fix a typo in all seed files
the auto reboot config should be
d-i finish-install/reboot_in_progress note
not
finish-install finish-install/reboot_in_progress note

Change-Id: Id8e44de5e6376bb576115b0eeca49dc04edf8ed8
2017-06-30 16:58:31 -05:00
Melissa Kam
8d92f0515b Increase size of deploy node to speed up deployments
Change-Id: I735b8f714ecead21df24cc3543616647e6b1ab94
2017-06-28 11:50:35 -05:00