Summary

As the ARM community grows we need secure Public PPA build machines. This is harder to achieve than it initially sounds as there is no cost effective virtualization for ARM CPU's at the current time. This spec outlines a method of mechanical virtualization that allows the same functionality as is achieved on the X86 PPA's but doing so without virtualization.

Release Note

The impact of this is that the data center (and anyone that wants to build the hardware) can deploy a cluster of ARMv7 Cortex A9 dual core build machines in a 4U rack mounted case. This will allow Ubuntu to offer ARM PPA's and also to allow the ARM arch to have more and faster builders and add more as necessary.

Rationale

User stories

Assumptions

Fit 20 or more Texas Instruments (TI) Panda boards into a 4 U rack case with daughter cards that enable secure booting and recovery of the boards when a build is complete.

Design

Original design called for a daughter card to control booting via relay, this fell though due to vendor not getting a working design completed in time. In the mean time USB Booting over the OTG port has been worked on and is a better solution in terms of cost and time. Essentially there will be a 21st Panda in the box that will be the master and supply the bootloader and kernel over the wire with no SD cards installed at all. The 21st Panda will export it's serial, and Ethernet ports for remote control by LP and IS. It will be on it's own subnet so a side effect of this change is that IS can remotely update the kernel image that the 20 builders boot without having to physically go to the data center. Turns out this is a better design then the original daughter card was.

Implementation

This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:

UI Changes

Should cover changes required to the UI, or specific UI that is required to implement this

Code Changes

Code changes should include an overview of what needs to change, and in some cases even the specific details.

Migration

Include:

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved.

BoF agenda and discussion

Currently we lack support of ARM Public PPA at Launchpad.

Pandaboard is now public available and can be used as our main arm build machine for the next cycle.

Because the lack of a proper virtualization on ARM, the only possible way would be to do native builds on the machine, giving the user a possibility to control it as root.

Requirements:

Boot:

Hardware:

Wiring for serial cable http://www.avocent.com/Services_and_Support/Technical_Support/Cabling_Options/Cabling_Diagrams.aspx#rj45_cyc.db9.st

Security:

Actions:


CategorySpec

Specs/N/ARM/public-panda-ppa-build-cluster (last edited 2011-05-18 14:13:27 by pool-96-226-231-215)