diff options
author | Charalampos Kominos <Charalampos.Kominos@enea.com> | 2018-10-01 13:12:46 +0200 |
---|---|---|
committer | Charalampos Kominos <charalampos.kominos@enea.com> | 2018-11-18 16:18:08 +0100 |
commit | 8f75445a37099590f36ce6044109209c67ef0deb (patch) | |
tree | b34e9c39054ab86520e00465c09e574d4d1e4f94 /apex/virtual/configure_vm.py | |
parent | 9066cb52523aeb4a5b98c634aa6616233b0c0237 (diff) |
Bring in aarch64 support in apex
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>
Diffstat (limited to 'apex/virtual/configure_vm.py')
-rwxr-xr-x | apex/virtual/configure_vm.py | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/apex/virtual/configure_vm.py b/apex/virtual/configure_vm.py index ba0398bb..9d47bf03 100755 --- a/apex/virtual/configure_vm.py +++ b/apex/virtual/configure_vm.py @@ -102,6 +102,10 @@ def create_vm(name, image, diskbus='sata', baremetal_interfaces=['admin'], with open(os.path.join(template_dir, 'domain.xml'), 'r') as f: source_template = f.read() imagefile = os.path.realpath(image) + + if arch == 'aarch64' and diskbus == 'sata': + diskbus = 'virtio' + memory = int(memory) * 1024 params = { 'name': name, @@ -118,9 +122,6 @@ def create_vm(name, image, diskbus='sata', baremetal_interfaces=['admin'], 'user_interface': '', } - # assign virtio as default for aarch64 - if arch == 'aarch64' and diskbus == 'sata': - diskbus = 'virtio' # Configure the bus type for the target disk device params['diskbus'] = diskbus nicparams = { @@ -171,7 +172,7 @@ def create_vm(name, image, diskbus='sata', baremetal_interfaces=['admin'], """ params['user_interface'] = """ <controller type='virtio-serial' index='0'> - <address type='virtio-mmio'/> + <address type='pci'/> </controller> <serial type='pty'> <target port='0'/> |