What's Inside Your Cloud? IaaS Architecture and Implementation

download What's Inside Your Cloud? IaaS Architecture and Implementation

If you can't read please download the document

Transcript of What's Inside Your Cloud? IaaS Architecture and Implementation

  • 1. Whats Inside YourCloud?IaaS Architectureand ImplementationRich Wolski, CTOEucalyptus SystemsMay 22, 2012 2012 Eucalyptus Systems, Inc. -- confidential

2. Exciting Weather Forecasts315 M1.0 B 16 M 2012 Eucalyptus Systems, Inc. -- confidential 3. Is Cloud Computing ComputerScience? Idea: Develop an open-source, freely available cloud platform for commodity hardware and software environments Stimulate interest and build community knowledge Quickly identify useful innovations Act to dampen the hype First-principles cloud implementation Not a refactorization of previously developed technology Build from mature open source technologies J2EE, MySQL, Web Services are high quality and scalable as open source 2012 Eucalyptus Systems, Inc. -- confidential 4. Eucalyptus - Whats in a Name? Elastic Utility Computing Architecture Linking Your Programs To Useful Systems Web services based implementation of elastic/utility/cloud computing infrastructure Linux image hosting ala Amazon How do we know if it is a cloud? Try and emulate an existing cloud: Amazon AWS Functions as a software overlay Existing installation should not be violated (too much) Focus on installation and maintenance System Administrators are people too. 2012 Eucalyptus Systems, Inc. -- confidential 5. Eucalyptus ServiceComponents Cloud Controller (CLC) User request processing (except for Walrus), Credentials management, VM (instance) state management Walrus (S3) S3 user request processing, Append-only, Put/Get object storage Cluster Controller (CC) VM inventory, Network provisioning/security group implementation Storage Controller (SC) Block level, network attached storage (SAN and Linux) Node Controller (NC) Hypervisor interface and control, VM launch/decommissioning VMWare Broker Gateway between CC and ESX and/or vSphere for VMWare 2012 Eucalyptus Systems, Inc. -- confidential 6. Service Architecture Service User Requests DeliveryCLC Walrus CCSC CCSCCC SC NC/NC/NC/NC/NC/ VMWareBVMWareBVMWareBVMWareBVMWareB 2012 Eucalyptus Systems, Inc. -- confidential 7. Eucalyptus Generations Eucalyptus 1.X (June 08 through Sep. 10) University code Eucalyptus 2.X (June 10 through Feb. 11) Commercial focus, early production Eucalyptus 3.X (present - ) Production operational improvements Full commercial feature set (almost) Few, if any features deprecated BitTorrent? 2012 Eucalyptus Systems, Inc. -- confidential 8. Enterprise Cloud Features High-availability (HA) of the Eucalyptus Service Hot fail-over and repair for all components except NC AWS Identity and Access Management (IAM) API plus extensions for private clouds Quotas and metering Eucalyptus Block Storage improvements AWS Volume-backed instance API (persistent instances)bootable NetApp and JBOD support added to existing Dell Equallogic Full support for Windows images Seven different versions, AWS compatible authentication,sysprep, ephemeral disk Accounting/Usage reporting Charge-back interface linked to quotas 2012 Eucalyptus Systems, Inc. -- confidential 9. Platform Features Image caching Fast instance starts using copy-on-write VMWare support Image preparation, support for vSphere 4.X, improved scale, moreextensive deployment topologies Linux distro support RHEL 5 and RHEL 6, packages for Canonical LTS (Ubuntu 10.04) Automated QA Full QA sequence is 5 days (features + distros + hypervisors +deployment topologies + networking modes) Admin webUI Scriptable command-line admin tools Packaging, upgrade and dependency management Installation mechanism (package repositories) 2012 Eucalyptus Systems, Inc. -- confidential 10. Web Service Stack Java Enterprise Bus (Mule) Object Persistence API L1 Object Cache (Hibernate)L2 Object Cache (Tree Cache) Object Persistence (Hibernate) DB Connections (Proxool)Distributed DB Connection (HA-JDBC)Local DB Connection (JDBC) 2012 Eucalyptus Systems, Inc. -- confidential 11. High Availability Eliminate single point of failure Host failure Network connectivity failure (including network partitions) Tolerate as many multiple failure cases as possible Avoid data loss at all costs Fail stop is better than data loss Availability of the services that Eucalyptus offers Eucalyptus requests VM connectivity and storage Not VM HA -> application level Distributed Bootstrap layer for Group Management 2012 Eucalyptus Systems, Inc. -- confidential 12. HA Web Service Architecture All Eucalyptus components are implemented as Web Services CLC, Walrus, SC, VMWare Broker Java CC and NC - C CC and NC are each implemented in separate Axis2c service container CLC, Walrus, SC, and VMWare Broker share a web service stack and JVM when co-located 2012 Eucalyptus Systems, Inc. -- confidential 13. PoC ConfigurationVMVM SCSCWbWb Walr Walr CLCus CLC us Web ServiceWeb Service DB managementDB managementCC CCLinux Linux NCNC NCNC NC 2012 Eucalyptus Systems, Inc. -- confidential Linux LinuxLinuxLinux Linux 14. Multi-component FailureVMVM SCSCWbWb Walr Walr CLCus CLC us Web ServiceWeb Service DB managementDB managementCC CCLinux Linux NCNC NCNC NC 2012 Eucalyptus Systems, Inc. -- confidential Linux LinuxLinuxLinux Linux 15. Production DeploymentCLC CLC Wal Wal CCCCVMVMSCSC b b NCNC NCNC NC Linux LinuxLinux LinuxLinux 2012 Eucalyptus Systems, Inc. -- confidential 16. Group Membership andHeartbeat HA is from the perspective of the master CLC Jgroups determines which machines are up The network connecting the up machines is unpartitioned Heartbeat determines which services are available within the up group Back-up CLC monitors the up group to determine if it contains a master If not, it becomes the master Master and Back-up DBs kept synced Resync when failed CLC is restored 2012 Eucalyptus Systems, Inc. -- confidential 17. Interesting Wrinkles CLC and Walrus have externally visible URLs DNS remapping service is built into the CLC What happens if the master loses connectivity with the user? Back-up may have an alternative path to user If DNS remaps, and the back-up becomes active, the system may experience a split brain Fail stop Arbitrator service Multi-failure can cause split brain Master fails over, new master fails before original back, original then brought up => fail stop 2012 Eucalyptus Systems, Inc. -- confidential 18. Whats Next? Eucalyptus 3.1 (Q2) Refactoring for packaged plug-ins Postgres support Eucalyptus 3.2 (Q4) Feature release Possibilities ELB, Cloudwatch, Autoscaling Tags Eucalyptus 4 in 2013 and Eucalyptus 5 in 2014 Application features -> services and API Operational features -> ease of use, maintenance, performance Please help! tell us what Eucalyptus needs and when it needs it 2012 Eucalyptus Systems, Inc. -- confidential 19. Thanks!Questions? [email protected] @richwolski 2012 Eucalyptus Systems, Inc. -- confidential