OpenStack on SmartOS

advertisement
OpenStack on SmartOS
Daniele Stroppa, ZHAW
24.04.2014, Bern
3rd Swiss OpenStack User Group
www.cloudcomp.ch
Agenda
 Motivation
 Why SmartOS?
 OpenStack on SmartOS
www.cloudcomp.ch
Motivation


Cloud providers must be able to offer a single server to multiple users
without them noticing that that they are not the only users of that machine.
This means that the underlying operating system must:
o be able to provision and de-provision, VMs in a very fast seamless
way;
o allocate physical resources efficiently and fairly amongst the users;
o support multithreaded and multi-processor hardware;
o be highly reliable;
o must provide a way to quickly determine what’s causing the system to
misbehave.
A customer of the cloud provider will also expect the server to be:
o fast, i.e. the observed latency should be minimal;
o flexible, i.e. get extra power when needed;
o secure, meaning that neighboring users must not interfere with each
other.
www.cloudcomp.ch
Why SmartOS?


SmartOS is an open source type 1 hypervisor platform
o Based on Illumos, a descendant of OpenSolaris, and developed by
Joyent
SmartOS is a live operating system,
o It can be booted via PXE, USB or an ISO image
o Runs entirely from memory, leaving the full space on the local disk to
be used for virtual machines.
o This type of architecture makes it very secure, easy to upgrade and
recover
www.cloudcomp.ch
Why SmartOS? Zones & KVM!



Container-based virtualization
o A container is the combination of resource controls and Solaris zones.
o Provides a lightweight solution and a complete and secure user space
environment on a single global kernel.
o Can easily scale vertically, something that is more difficult with KVM
virtualization.
KVM virtual machines
o KVM virtual machines provide a solution for running a variety of guest
OS's, including Linux and Windows, in a full, hardware-assisted
virtualization.
o KVM images on SmartOS run as a process inside of a zone.
http://dtrace.org/blogs/brendan/2013/01/11/virtualization-performancezones-kvm-xen/
www.cloudcomp.ch
Why SmartOS? ZFS!


ZFS combines file system and logical volume manager.
o Fast file system creation - allowing to add new tenants almost instantly
- and data integrity guarantee.
o ZFS also includes storage pools - that simplify the task of expanding
storage capacity - copy-on-write snapshot creation and snapshot
cloning - allowing fast and reliable backup and cloning of virtual
machines.
Disk I/O throttling introduced to overcome a drawback in Solaris.
o All zones/applications are ensured to get a reliable turn at
reading/writing to disk.
o When a system is under heavy load from multiple tenants disk I/O
throttling comes into effect, while during quiet time, tenants can enjoy
faster I/O without affecting other users.
www.cloudcomp.ch
Why SmartOS? DTrace!

DTrace is a performance analysis tool included by default in different
operating system, amongst them Illumos and Solaris and therefore
SmartOS.
o DTrace can instrument code by modifying a program after it has been
loaded into memory.
o Not limited to use with user-space application, but can be used to
inspect the OS kernel and device drivers.
o In SmartOS, DTrace can be used to analyze and troubleshoot issues
across all zones in a server or within an entire datacenter.
www.cloudcomp.ch
Why SmartOS? Crossbow!



SmartOS makes use of Crossbow to provide a network virtualization layer.
o Fully integrated with the virtual machine administration tool of
SmartOS, i.e. vmadm.
o Allows each virtual machine can get up to 32 virtual network interfaces
(VNICs).
SmartOS inherits multipath IP (IPMP) from Solaris.
SmartOS can leverage data link multi-pathing (DLMP), i.e. trunk
aggregation.
www.cloudcomp.ch
OpenStack on SmartOS - Where are
we?



Idea initiated by Thijs (Intel) and Andy (ZHAW)
Working with latest OpenStack Grizzly release:
o nova-compute
o nova-network
Code publicly available on Github
www.cloudcomp.ch
OpenStack on SmartOS - What's
next?



Integrate with OpenStack Quantum
o Possibly integrate with OpenFlow controllers
Make DTrace metrics accessible from OpenStack Ceilometer
o Monitoring and billing
Integrate ZFS features
o VM cloning (snapshot)
o Block-type storage
www.cloudcomp.ch
Q&A?
Thank you!
www.cloudcomp.ch
References

https://blueprints.launchpad.net/nova/+spec/smartos-support

https://wiki.openstack.org/wiki/Smartos

http://www.cloudcomp.ch/2013/04/openstack-on-smartos/

https://github.com/dstroppa/openstack-smartos-nova-grizzly

https://github.com/dstroppa/openstack-smartos-bootstrap

strp@zhaw.ch, @moviolone
www.cloudcomp.ch
Download