Creating ARM VMs for use with Fedora 12 March 22, 2010Posted by Paul Whalen in Uncategorized.
We have decided to work on Fedora support for the ARM architecture. As mentioned previously the two primary architectures for Fedora are i386 and x86_64 however there are a number of secondary architectures including ARM. ARM is a widely used processor that many people may be unfamiliar with. ARM processor uses range from cell phones, tablets and netbooks. The plan is to create a Koji build farm for the ARM architecture. Because we currently do not have a ARM box to run initial mock tests on so we can get an idea of how long it will take for each build, we will do the first part of the testing on Virtual Machines through QEMU emulation.
The eight ARM VM’s are to be created on Hong Kong and assigned to individual builders and use mock to build a total of 7 larger packages each. The instructions for setting the VM’s can be found on the Fedora website (http://fedoraproject.org/wiki/Architectures/ARM/HowToQemu) as well as the resources required to get started including the Root file system tar-ball and pre-built kernel images or instructions to create the image from source. The machines were named “arm-001-00x” with the ‘x’ representing the individual machine number. Small edits were required to the XML file’s for each machine including changing the paths, VM name as well as making sure the MAC addresses for each of the machines were unique. Once completed a machine was booted using the commands
virsh define NameOfFile.xml
virsh start arm-001-007
After the machine was booted, I used the “virt-manager” GUI to sign in and “dhclient” to obtain an IP address, then download “system-config-network-tui” and ran “system-config-network” to set up the network. Once completed I assigned the static IP address and made sure the VM was online. The VM was shutdown using the command “virsh shutdown arm-001-007″. I then mounted the file system to copy the network information from the completed machine to each of the other seven VM’s, making small changes to ensure all machines were using different IP’s and MAC addresses.
After this process was complete, the hosts file on Hong Kong was edited to allow users to ssh into the VM with the machine name, rather then the IP. All VM’s were booted and tested for connectivity. The list of VM’s and assigned user can be found here: http://zenit.senecac.on.ca/wiki/index.php/Fedora_ARM_Secondary_Architecture/ARM_VMs.
Next… Mock testing on the VM’s.