7. Why did cloud succeed?
1. Re-introduced the concept of pay-
as-you-go computing
infrastructure
2. Solved a very common use case in
a spectacular way
9. Bob's Use Case
1. Give me a new server machine
(with this much CPU, RAM, disk)
2. Install my chosen operating system
3. With the drives configured like this
4. On this specific network
5. With my credentials on it
12. Any OS
Windows
Custom images
“Please provide a machine
with 24 GB RAM, a root
disk of 300GB and at least
6 more 3TB disks, and an
nVidia GPGPU”
Ubuntu, Red Hat, SUSE
14. What can MAAS do?
● Discover new hardware
● Configure disks
● Configure networking
● Install an operating system
● Set up admin credentials
● Configure devops automation
15. Chef & MAAS
● Fully-supported devops automation
● Manage bare metal kit with knife & Chef
provisioning
16. How does MAAS do it?
● Packs in a lot of functionality
DHCP, DNS, TFTP, iSCSI, HTTP
IPMI, iLO, DRAC, UCS, AMT
● Probes and configures BMCs and PDUs & remotely controls
machine power state
● Unique image-based installer
● Detects hardware component details & auto-tags machines based
on capabilities
● Models L2 & L3 networks & interfaces
● Secure decommission
17. Cloud-style RESTful API
● Find me a node
POST /api/1.0/nodes/?op=acquire
[cpu_count, mem, arch, tags, name]
● Install OS & boot
POST /api/1.0/nodes/{id}/?op=start
● Get node hardware & LLDP details
GET /api/1.0/nodes/{id}/?op=details
● Discover servers in a chassis
POST /api/1.0/nodegroups/{id}/?op=probe
18. What should I use MAAS for?
● Managing bare-metal at scale
OpenStack, Web, Storage, Hadoop & more
● Replacing homegrown provisioners
Fully supported PXE & OS install
● Building your own bare-metal cloud
Embedding MAAS is easy
● Keeping your ops team happy
Abstract your bare-metal complexity
19. Region Controller
- highly available
- users and groups
- resource allocation
- central postgres db
- machine inventory
Machine allocation, status,
workflows, web UI. Needs low
bandwidth to many clusters.
Handles 100,000 machines.
Cluster Controller
- close to machines
- typically in-rack
- large-file cache
Provides PXE boot and OS
delivery for installation.
Has high bandwidth to a few
servers - the cluster.
Cluster Controller
Cluster Controller
Cluster Controller
Cluster Controller...
server
server
…typically x 10-200
server
server
…
server
server
server
…
1x HA 2000x 100,000x
24. 1
2
3
4
5
Reality meets design
Autopilot deploys OpenStack
Autopilot monitors cloud state
Administrator allocates additional resources
Autopilot calculates delta between current state and desired state
25. 1
2
3
4
5
Reality meets design
Autopilot deploys OpenStack
Autopilot monitors cloud state
Administrator allocates additional resources
Autopilot calculates delta between current state and desired state
Autopilot orchestrates service models until reality meets design
35. Canonical’s OpenStack CI-as-a-Service
● Validate code with upstream git tip or stable
● Validate new vendor code against upstream git tip or stable
● Validate enterprise branches against upstream git tip or stable
● Run CI tests in “real-world” multi-node scenarios
● Build a cloud of arbitrary scale and complexity from tip
● Deploy to metal, cloud, or virtualized environment
● Verify deployed cloud with Tempest, Rally, or other tests
MAAS Juju OpenStack Jenkins OILTesting