summaryrefslogtreecommitdiffstats
path: root/apex/undercloud
AgeCommit message (Collapse)AuthorFilesLines
2019-01-11Fixes undercloud install failure with setting hostnameTim Rozet1-1/+4
There is a new bug when deploying master/rocky where the OS of the undercloud/overcloud is now upgraded to CentOS 7.6. When the undercloud install runs it fails to configure the hostname using hostnamectl. This is because systemd-hostnamed is not running and fails to start. Simply reloading dbus seems to fix the issue. In the dbus logs there are odd error messages like: dbus-daemon[3230]: Unknown username "root" in message bus configuration file Disabling selinux seems to fix this. This patch also moves to use podman instead of docker for container management and invokes a script in Ansible which updates NIC templates as new variables are added upstream. Furthermore, with the new patches for routed networks in OOO, it is now required that the MTU is set in network-data, as well as adding the External network to the Compute role. Now the External network is removed by default from the Compute role. Change-Id: Ie8b86f6f28d69bda11b1f7a430df882970ac3cb9 Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-11-18Bring in aarch64 support in apexCharalampos Kominos1-2/+2
RDO builds packages which are aarch64 compatible but some configuration is needed to succesfully deploy. This change: - Prepares the aarch64 docker.io repo as the source for Kolla Containers - Configures VM sizing for aarch64 undercloud. - Configures VM sizing for aarch64 virtual deploy targets. Vms need to be larger on aarch64 compared to x86 to avoid starvation of resources. (MYSQL) - Configures vda2 as the location of the Linux Kernel in aarch64 in an UEFI system - Configures the vNICs to be on the pci-bus instead of the virtio-mmio bus.This will enalbe the Nics to come up in the same order as the x86 ones, so the extra configuration in ansible is not needed - Configures apex to use a stable version of the ceph:daemon container - Configure apex for containerized undercloud in Rocky - Add extra ansible.cfg file for aarch64 which increases waiting times in ansible for aarch64 - Provide helper scripts for DIB to create aarch64 UEFI images Known limitations: - Selinux is interfering with DHCP requests in ironic and ssh so it must be disabled before the deploy command is ran. - The aarch64 containers are frozen for in this commit: https://trunk.rdoproject.org/centos7-rocky/f3/18/f3180de6439333a2813119ad4b00ef897fcd596f_70883030 - The 600s timeout defined in : https://bugs.launchpad.net/tripleo/+bug/1789680 is not enough for aarch64. A value of 1200s is recommended JIRA: APEX-619 Change-Id: Ia3f067821e12bba44939bbf8c0e4676f2da70239 Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com> Signed-off-by: ting wu <ting.wu@enea.com>
2018-11-13Remove downloading undercloud.qcow2Tim Rozet1-3/+18
OOO team is removing the undercloud disk image as it is no longer needed for containerized undercloud deployments. Instead, we can just use the overcloud image as the undercloud image. Additionally, OOO team has recommended we use current-tripleo instead of current-tripleo-rdo. current-tripleo-rdo was previously thought to be more stable with more promotion checks, but now it seems that it is older and current-tripleo now has the same stability/checks. This patch also bumps the undercloud RAM from 8GB to 10GB. With the new containerized undercloud there is more RAM consumption during deployment. Change-Id: I9e6bb2260dbe9f8796ee54d20527c0aad96476ec Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-11-01Fixes Docker image upload for master/rockyTim Rozet1-1/+3
The API has changed to create/upload the docker container images to be used for deployment. In the past the prepare commands would read the THT environment files passed, to determine which docker images to render into an environment file. The new behavior uses a new "containers-prepare-parameter.yaml" format (included in this patch), which Apex will now configure for deployment. By default docker images will be rendered for all TripleO services identified in the roles_data.yaml file. Therefore we must use several excludes patterns to only pull the docker images needed for a default deployment. JIRA: APEX-642 Change-Id: Iab00fcb874554bb98540dc9a4c3051e58ea68a3b Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-10-08Adding support for containerized undercloudRicardo Noriega1-4/+8
Master code only supports containerized undercloud now, so this migration is needed. - Containerized services in undercloud We can still apply patches to THT and other non-docker services, but we will need to add support for patching openstack services on undercloud. Change-Id: I1ca4c6108f144efef7b5889503af265ef0fff8b2 Signed-off-by: Ricardo Noriega <rnoriega@redhat.com> Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-08-17Fix ipv6 deployment failuresFeng Pan1-2/+5
- fix ipv6 enable command on bridge interfaces - fix external subnet creation command - enable NAT when admin is ipv4 - fix network settings file for ipv6 for br-ex interface type Change-Id: Ibd2dbe1d0c8e8df72ad1b0b3713a19f8bbc56eef Signed-off-by: Feng Pan <fpan@redhat.com>
2018-05-30Configure NAT with baremetal when necessaryTim Rozet1-1/+12
We currently only enable NAT on undercloud for virtual deployments. However, there could be a case where a baremetal deployment also needs NAT as it is not using an interface on the overcloud nodes with external access. Therefore this patch changes the behavior to configure NAT when the gateway of either the external or admin (when external is disabled) network matches an IP assigned to the undercloud. JIRA: APEX-605 Change-Id: I9c79af371913e6e5f0d39b433f68205bc7e106c5 Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-05-21Migrates master to use direct upstreamTim Rozet1-2/+2
We now move master to deploy from upstream. That means we do not need to build undercloud/overcloud images anymore. Changes-Include: - Remove bash build scripts as we do not need to build anything other than the python package anymore - Remove building images or iso from build.py - Remove building of images and iso from Makefile - Rename/refactor deploy settings files for nosdn and odl. The new convention is that the typical scenario names we use will deploy master. We also support n-1 OS, so in that case we use the branch name for the "feature" in the scenario name: os-odl-queens-noha. - Tacker/Congress are disabled in settings files until we fix that with upstream. Containers are now enabled by default. - Disable TLS for undercloud (was changed upstream to default enabled) - Fix environments docker directory for master THT (was changed upstream) - Includes fix for LP#1768901 - Includes workaround for LP#1770692 - Moves to docker.io for container images as it is more stable and should contain the same images - Removes the term 'common' from apex packaging for referencing the Python Apex package Change-Id: If6b433860b3ff882686c78d0f24a2f0c52b9b57a Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-04-06Fixes delorean repo update on undercloudTim Rozet1-1/+1
Previous fix to update delorean repo on undercloud was always failing because the operations passed to virt-customize were not in a list type. JIRA: APEX-565 Change-Id: Ic883309ac1c3aa6027dc252635e404e5355c269d Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-04-04Adds the ability to fetch logs from deploymentTim Rozet1-4/+15
Usage: opnfv-pyutil --fetch-logs python3 utils.py --fetch-logs --lib-dir ../lib Eventually all utils.sh functions will be migrated here. Note there is no support here for containers. Will be added later. Change-Id: I223b8592ad09e0370e287ee2801072db31f9aa12 Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-03-16Enables containerized overcloud deploymentsTim Rozet1-2/+13
Changes Include: - For upstream deployments, Docker local registry will be updated with latest current RDO containers, regular deployments will use latest stable - Upstream container images will then be patched/modified and then re-uploaded into local docker registry with 'apex' tag - Deployment command modified to deploy with containers - Adds a --no-fetch deployment argument to disable pulling latest from upstream, and instead using what already exists in cache - Moves Undercloud NAT setup to just after undercloud is installed. This provides internet during overcloud install which is now required for upstream container deployments. - Creates loop device for Ceph deployment when no device is provided in deploy settings (for container deployment only) - Updates NIC J2 template to use the new format in OOO since the os-apply-config method is now deprecated in > Queens JIRA: APEX-566 JIRA: APEX-549 Change-Id: I0652c194c059b915a942ac7401936e8f5c69d1fa Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-02-21Typo fix for disabling ipxeDan Radez1-2/+3
JIRA: APEX-535 Change-Id: If1d074d01246407b322d5a4bc27dfde35349e9db Signed-off-by: Dan Radez <dradez@redhat.com>
2018-02-16Merge "Fixes stale undercloud delorean repos"Feng Pan1-1/+19
2018-02-16Add http(s)_proxy handling to apexDan Radez1-0/+3
JIRA: APEX-512 Change-Id: I875bd99203b425e448e7a3f64eb9a8f99d03ddaf Signed-off-by: Dan Radez <dradez@redhat.com>
2018-02-16Fixes stale undercloud delorean reposTim Rozet1-1/+19
When we build artifacts for release, we try to freeze the disk images and artifacts we use for deployment. This includes the delorean repo which provides OpenStack packages. This repo however expires after a couple months and then if any packages were missing in the Undercloud released artifact, they will attempt to be downloaded during install and fail. This patch adds some logic to detect if there is internet connectivity, and if so then download and update the delorean repo on the undercloud. JIRA: APEX-565 Change-Id: I58c28437fb5c5b179033c939377fd97aefbf427c Signed-off-by: Tim Rozet <trozet@redhat.com>
2018-02-07Allow disabling ipxe for provisioningDan Radez1-7/+13
JIRA: APEX-535 Change-Id: I52d17e962fc4a504db1ddbc20df0ac56a208f34b Signed-off-by: Dan Radez <dradez@redhat.com>
2018-01-31wrapping up deploy items for aarchDan Radez1-1/+2
Change-Id: Ib5f4715d851dc91be6a57fcb5d18a0557a7b0c7f Signed-off-by: Dan Radez <dradez@redhat.com>
2017-11-30Merge "Disable introspection extras"Feng Pan1-0/+1
2017-11-29Disable introspection extrasTim Rozet1-0/+1
According to the documentation introspection extras attempts to collect more hardware info during inspection. This is causing problems for some users and we do not need it for our deployments. JIRA: APEX-534 Change-Id: Ia4a72ed14fb744a10d02ee2d3f4e283cc7208c2b Signed-off-by: Tim Rozet <trozet@redhat.com>
2017-11-29Fixes permissions and owner for undercloud.qcow2Tim Rozet1-1/+2
The undercloud storage disk is copied during our deployment from modified underloud from upstream. We copy it as owner root with wrong permissions. This changes the owner to qemu and sets the permissions the same as the other storage disks that virsh creates for overcloud nodes. Change-Id: Ie884a586f91be3461e4b511e224d061639f04c69 Signed-off-by: Tim Rozet <trozet@redhat.com>
2017-11-06Adds ability to deploy from upstream openstackTim Rozet1-4/+10
To deploy with upstream openstack branch, use new deploy setting 'os_version'. A default scenario file for nosdn with pike has been included in this patch. If 'os_version' is a version other than the default version for this OPNFV release, then upstream is used. In order to use upstream with the current OS version use '--upstream' argument to the deploy command, to force an upstream deployment. Also include '-e upstream-environment.yaml' to use default upstream deployment settings. Supports nosdn and odl-nofeature deployments. Change-Id: Ic07e308827b449637b4e86cdd086434e4de2fb69 Signed-off-by: Tim Rozet <trozet@redhat.com>
2017-09-28Adding python unittests for apex/virtual/*Dan Radez1-1/+1
Change-Id: I13dd395cd6270cbf0a02855b1d29794ecca06d76 Signed-off-by: Dan Radez <dradez@redhat.com>
2017-09-08Merge "Conditionalize VM console arg based on arch"Tim Rozet1-1/+3
2017-09-06Conditionalize VM console arg based on archDan Radez1-1/+4
Change-Id: Ide9159e5ba7d5388c7bf62bf865b0015422e9159 Signed-off-by: Dan Radez <dradez@redhat.com>
2017-09-06Enabling the aarch check for deploymentDan Radez1-2/+3
Change-Id: Ic5f1fc8a61f74f7aa6b2fabf67169c601a603367 Signed-off-by: Dan Radez <dradez@redhat.com>
2017-08-31Adds Undercloud retry and log fetchTim Rozet1-3/+15
Retry to install the undercloud if it fails due to sometimes failing. Also copy undercloud log over to host temp dir. Change-Id: I50f98c4f0d52fa6bb56d9dcd0766bbe745160452 Signed-off-by: Tim Rozet <trozet@redhat.com>
2017-08-28Passing deploy_dir through to create_vmDan Radez1-2/+5
Change-Id: I07a1c899d43c5edf1054fc819fff4336d9b3ed16 Signed-off-by: Dan Radez <dradez@redhat.com>
2017-08-23Migrates Apex to PythonTim Rozet2-0/+206
Removes all bash libraries and converts almost all of the code to a mixture of Python and Ansible. utils.sh and clean.sh still exist. clean.sh will be migrated fully to clean.py in another patch. The Apex Python package is now built into the opnfv-apex-common RPM. To install locally do 'pip3 install .'. To deploy: opnfv-deploy -d <file> -n <file> --image-dir /root/apex/.build -v --debug Non-python files (THT yaml, settings files, ansible playbooks) are all installed into /usr/share/opnfv-apex/. The RPM will copy settings files into /etc/opnfv-apex/. JIRA: APEX-317 Change-Id: I3232f0329bcd13bce5a28da6a8c9c84d0b048024 Signed-off-by: Tim Rozet <trozet@redhat.com>