It looks like the host_bind_override isn't being set for the flat network.
This results in the neutron linuxbridge agent to error out when trying to
attach to br-flat instead of eth2. If attaching a device to the GATEWAY_NET
network, they will be unable to communicate.
Change-Id: Ia8de61011677ec1a7d9683fdff3c3d5848e85c2e
Closes-Bug: 1754097
It looks like bash was throwing single qoutes around the variable
default if the var was empty causing ansible to think it is the
play. Thanks to Matt Thompson's help, we pulled that out into
a separate export to remove the single quotes.
Change-Id: Id04f840871f3371cf8258a8135536d37738e4e12
Closes-Bug: 1752357
change the default value assiagment for container_tech from - to :- in
case the the parameter has been declared, but is null.
The extra : makes a difference only when parameter has been declared,
but is null.
Change-Id: I9be9df155c1db5b390f6b664c0f3046efb4a4d1b
This change allows someone to modify the vcpu count settings
similar to how the ram is currently done. It also allows for
custom ansible parameters via an MNAIO_ANSIBLE_PARAMETERS var
to add custom ansible parameters for the vpcu overrides as well
as other settings.
Change-Id: I3c1fa7b55a87931eff586c0e983bb9b8c6f34fc3
Closes-Bug: 1750402
This change updates the preseed files and the default
openstack-user-config file so that deployers can use and test nspawn
type containers using the in-built automation.
Change-Id: I2ec3bd284540fa9f79490a350f016ca594fb5f98
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Adds support for iPXE scripting. Allows for the
operator to specify a remote iPXE kernel to pull in
newer iPXE kernel features and specify a remote
default iPXE script for customizing the multi node
for other types of deployments.
Switches the installations to use netboot installer kernels
instead of ISO retrival and extraction.
Restructures directory to allow for future multi node configs
instead of just debian based installs.
Change-Id: Ie97f021dbd33ad3d852132b0b2850f54d4e13476
Stops running VMs when doing a deploy to ensure
the VMs start fresh and can reload their config
during deploy.
Also removes LVs to force a redeploy of the VMs.
Change-Id: I7992e25f4e0e103ae66487f2e88a99ca962a9355
the master branch is supporting multiple contianer techs now, use
lxc for mnaio's default container backend.
Change-Id: I587cb6041ad87d8901d84ab1d3d4f8763686751c
This should allow the proper gateway ip to be used for connectivity to/from
vms in the GATEWAY_NETWORK or with floating ips from it.
Change-Id: I0f4498baa2edbf24bbf2c407c6e5a2574454cfdc
Closes-Bug: 1746621
It looks like they update the builds pretty often. This change
is to make it use the more generic link to the latest build
that isn't changed as often.
Change-Id: I31d3b76e2b26c0ef5bfe1ec4a3f2dcc5c34f8f41
Closes-Bug: 1746604
This includes:
- removing two bad /etc/default/tftpd-hpa tasks
- relocating the good /etc/default/tftpd-hpa task
to the pre-tasks area of the broken configs.
- Removing OPTIONS from /etc/default/tftpd-hpa as they
were causing duplicate -s config errors. The -l is
taken care of in the init script as well.
Change-Id: Ie474fceb116c921a373f5711194e222594095e51
Closes-Bug: 1746354
A few of the links were outdated due to new builds or decommed versions.
Changes to the latest versions or builds were needed.
Change-Id: I61d3c76fd649e745262deb496615a4399c56f5f4
Closes-Bug: 1745680
The MNAIO serves as a good way to play with a production like OSA
environment on minimal hardware. While this is a good way to test it
does leave some options hard to address and change when trying to build
in an automated way. This change makes it possible for a deployer to set
an environmental variable to change the ram allocation of all default vm
types which should help folks build a more capable and customizable test
cloud.
Change-Id: Idc2cff091701ecda80165a98fffa1db222600d27
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
In the case the upstream mirror might be down or there might be a
faster mirror available, this allows you to specify the desired
Ubuntu mirror and base directory.
Change-Id: I49c33b9e4e107990f2abb418b859fd280ba91107
Occasionally the VM install will exceed the timeout
if it doesn't fire correctly. Instead of treating
the host as down and continuing on with the others,
fail early.
Change-Id: I543d8e354a5357f7059fe82497edb9b7e3a22097
2.4.1.0 appears to have introduced some different behaviors
around vars and breaks. Locking to 2.4.0.0 until we can
work through those issues.
Change-Id: I0f577e5e3cbeef082f2a870a7214116937e84351
echo y seems to still prompt for each volume
when using -f will complete the action without
prompting.
Change-Id: Ic8231817656e2093e53e0bfcd1fd5e72bd8181b2
This change makes it possible to deploy ACNG within a physical
host NOT automatically tied to an MNAIO installation. This also
adds an infra preseed file which can be used to provision physical
hosts.
By default the domain name is now passed into the server boot params
which is useful when setting up an environment in support of
RFC-1034/5.
Ubuntu 16.04 has an issue with the options "quiet splash" being passed
in which cause it to have no usable console. See [Related-Issue] for
more.
Related-Issue: #1656605
Change-Id: I731dfb70e4b5d676d8c22082da77c0d22d5afb58
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The package, linux-image-generic, should be used by the MNAIO to ensure
we're testing with the supported LTS kernel for the distro being
deployed.
Change-Id: I25b3318a02a3c8e79fb300e93b2fdb18a7cc3b20
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Deployers sometime need the ability to opt out of specific deployment
groups. While a deployer can modify or extend the configuration
groups using conf.d files, until now they didn't have the ability
to remove groups when testing different scenarios. This change
simply adds conditionals to the openstack_user_config giving users
the ability to tailor the default user configuration options to
their needs.
Change-Id: I100ddf09faa072a999b72c4e46a1d3de6480d7e6
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
the previous group build outs for the osa user config were statically
defined. This change makes all of them dynamic which gives a user the
ability to add or remove hosts from the basic inventory as they need.
Change-Id: I1eae7de6d62435e8222ec80b05b6c0a060c5bb69
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
It makes sense to allow a user to provide their own inventory as needed.
this change simply allows a user to explort the option "MNAIO_INVENTORY"
prior to running `build.sh` which will allow them to define their own
inventory using the general purpose build script.
Change-Id: Ib5233da1bf34620ec8bf3decc4ecd51823b50b79
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The user_variables file may be empty. If it is, some older
versions of OSA will break. This new task simply ensures the variable
file is populated which will help us build and test more versions of OSA
as needed.
Change-Id: I38d204b41f781fe303d145878dfdbaa8172e16ba
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
The VMs deployed are using a very conservative setting for RAM. If a
user has the memory to spare they should have the option to set this
based on their needs.
Change-Id: Ib0fcdada64f009ad5924db171831840120a3eaee
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
Currently, attempting to use Trusty (14.04) VMs causes VMs to not
provision correctly due to a grub-install error. With respect to this
specific issue, this commit updates vm.preseed.j2 by removing some
grub-installer options which were not present before the ansible
rewrite.
Secondly, with that change in place, VMs do not come online on their
10.0.236 addresses as something is overwriting
/etc/networking/interfaces, which wipes out the source of the
/etc/network/interfaces.d directory. Bug [1] seems to indicate this
is in fact an issue and has been resolved, however attempts at using
this preseed option (netcfg/target_network_config) were not successful.
As a workaround, we simply chattr +i the interfaces file in
vm-post-install-script.sh.j2, and then remove the attr in
deploy-vms.yml when the instance is up an accessible.
[1] https://bugs.launchpad.net/ubuntu/+source/netcfg/+bug/1361902
Change-Id: I12d0c5108d1df0ab02b69d1b8cdb271a02999602
This commit moves playbooks/inventory into a file
called playbooks/inventory/hosts. This is being done so that users can
drop in additional inventory without having to necessarily modify the
existing static inventory.
Change-Id: Ia3f9436a460e48006cce27a17a00c5265c62b913
The multi-node-aio update that moved the provisioning from bash to
ansible dropped a few features that we use for gating purposes. This
commit re-adds the following:
1. The ability to drop iptables rules to do port redirection from the
host to private IPs. This is controlled by CONFIG_PREROUTING and
the ansible variable mnaio_host_iptables_prerouting_ports.
2. /etc/hosts on the physical node is now updated w/ the hostname and
IP of each VM so we can access VMs by name.
NOTE: With #1, we redirect to the VM's DHCP address, and not it's
management address. The latter seemed to the desired address
but didn't work, which is why we've resorted to DHCP. If using
this address is incorrect please note so we can investigate
further.
Change-Id: Ib194c314280f2474a2e4dac6d0feba44b1ee696f
Deploying the multi-node-aio from master on a machine running Ubuntu
14.04 fails frequently as libvirt doesn't think it has the hvm
OS type. I was able to manually run "virsh capabilities" shortly after
libvirt was installed and sure enough it didn't list any guest
capabilities. Subsequent runs of "virsh capabilities" then returned
the <guest> XML element w/ <os_type>hvm</os_type> defined.
This commit simply adds a task that checks "virsh capabilities",
retrying up to 6 times if the <guest> element is not present. From my
limit testing this seems sufficient to ensure that the domains are
defined and created successfully.
Lastly, we add a task to create /etc/libvirt/storage which is expected
to exist, but doesn't on a 14.04 deployment.
Change-Id: I158987270b71d3781e91d819fdcb02da736f3c1d
Currently, the execution of site.yml fails as site.yml installs
python-netaddr in the same run as it uses it, which fails since
ansible-playbook can't see the newly installed module.
This commit simply removes python-netaddr from
mnaio_host_distro_packages and adds a new task to build.sh to
install it before site.yml is kicked off.
NOTE: This commit also switches to installing netaddr via pip
instead of system package since that does not require pre-loading
vars files depending on OS, etc.
Change-Id: I324ba61a860f5942b40972903ae1c40caa7839e5
Currently, deploying a multi-node AIO results in
internal_lb_vip_address and external_lb_vip_address being set to the
same IP (10.0.236.150), which results in services having issues
communicating with the lb.
This commit simply sets external_lb_vip_address to use the
load balancer's dhcp address, which is fixed to 10.0.2.150.
Change-Id: I6faabd641c0559a0381e559f364cc76c49293014
Currently, instances will not boot as nova.conf is configured with
`reserved_host_memory_mb: 2048` while the compute VMs themselves only
have 2048MB of RAM assigned.
This commit bumps the compute VMs to have 8192MB of RAM so that
instances can be successfully booted.
NOTE: Prior to all the recent refactors that have taken place, we were
giving the compute VMs 9216MB of RAM. I'm not entirely sure why
this number was chosen but can happily change 8192MB to 9216MB to
match what was being used before.
Change-Id: Ie36fcb4fb3f3b5bce27f2851fba0afc6e0d1966a