ARM Server Deployment

Registered by Robie Basak on 2012-04-26

System management and service orchestration for ARM Server, including MAAS and juju enablement.

Rationale:
ARM servers are the next big thing, expecting to give us better performance-per-watt. Their dense nature lends itself to hyperscale. In combination with the power provided by juju and the charm store, ARM servers will be the perfect hardware platform for next generation datacenter requirements.

Ubuntu has run on ARM for years. If we enable system management and service orchestration for this first generation of ARM servers, Ubuntu Server will rock on ARM, too.

Goal:
Enable MAAS and juju on ARM

Blueprint information

Status:
Complete
Approver:
Antonio Rosales
Priority:
High
Drafter:
Ubuntu Server
Direction:
Approved
Assignee:
Robie Basak
Definition:
Approved
Series goal:
Accepted for quantal
Implementation:
Implemented
Milestone target:
milestone icon ubuntu-12.10-beta-2
Started by
James Page on 2014-06-19
Completed by
James Page on 2014-06-19

Related branches

Sprints

Whiteboard

User Stories

Alice's new ARM server cluster has arrived and she has plugged it in. She would like to take the charms that she has been testing in a third party Openstack cluster and deploy them to her new ARM server cluster.

ARM servers are so new that Bob, a seasoned datacentre technician, does not know how they work. But Bob does know how to use MAAS, because he has been testing it using his Intel servers. This was easy for him because he knows how PXE works. Bob would like MAAS on his ARM servers so that he doesn't need to care about how the system management works underneath.

Assumptions

ARM systems without system management via IPMI and U-Boot pxelinux emulation are out of scope for this cycle.

ARM systems that we do not have hardware to test with at the start of this cycle may not be able to be considered.

Test Plans

Charm testing on ARM hardware. This will exercise MAAS as well.

Release Notes:

MAAS now works on ARM! This also enables juju on ARM bare metal.

Notes:

 What will the supported installation methods be for Q? Eg. netinst (manual), MAAS, dd an oem image, cloud image, ...?
Use cases:
First time by-hand install (how important?)
juju-based bare-metal deployment
OpenStack (important, but out of scope)
First time by-hand install:
netinst sufficient?
Mechanisms for the installer to install/configure U-Boot.

(?)

Work Items

Work items:
[mark-mims] Charm testing on ARM (emulation only): POSTPONED
[ikepanhc] Add highbank kernel to quantal: DONE
[rbasak] Port highbank support to new flash-kernel: DONE
[rbasak] Enable highbank installer images: DONE
[rbasak] Verify that a preseeded installer on highbank works seamlessly: DONE
[craig.magina] Add highbank automatic preseeded installer test to continuous integration: DONE
[dannf] Port armadaxp support to new flash-kernel: DONE
[rbasak] Negotiate MAAS architectural changes to support ARM servers in trunk: DONE
[rbasak] Implement MAAS provisioner for ARM servers that have IPMI and pxelinux emulation: DONE
[rbasak] Verify that MAAS works on a real ARM server: DONE
[rbasak] Verify that juju works on a real ARM server: DONE

Dependency tree

* Blueprints in grey have been implemented.