Click here to load reader

Apache CloudStack AlpesJUG

  • View

  • Download

Embed Size (px)


Presentation at the AlpesJug:

Text of Apache CloudStack AlpesJUG

  • 1.Apache CloudStackSebastien GoasguenAlpesJUG, January 30th 2013 Grenoble, France

2. Info Apache incubator project #cloudstack on @cloudstack on Twitter contributions and feedback, Join the fun ! 3. OSS SaaSand more 4. OSS PaaS 5. OSS IaaS 6. IaaS challenges Not out of the box by itself. Need a farm of hypervisors Xen, KVM, Vmware Need storage For image catalogue For volume/snapshot management Need flexible network that can be configuredon-demand VLANS, no VLANS, existing net infra, SDN 7. French Use Cases INRIA service national dintegration continue Grid5000 , iKoula Usharesoft, BtrCloud, Activeeon Integration Appalia integrator 8. A bit of History Original company VMOPs (2008) Founded by Sheng Liang former lead dev on JVM Open source (GPLv3) as CloudStack Acquired by Citrix (July 2011) Relicensed under ASL v2 April 3, 2012 Accepted as Apache Incubating Project April16, 2012 First Apache release ACS 4.0 in November2012 9. Apache Software Foundation 10. Apache Process 100% community driven New ideas, decisions only taken on mailing lists.Votes taken by community Project led by Project Management Committee(PMC): Non committers get invited as committers: 11. Apache Processes 12. What the ASF did to CloudStack ? 13. Releases Apache CloudStack 4.0 released in November Check out the testing procedure: Or watch my amazing screencast: Apache CloudStack 4.1 planned for March 22nd.Feature Freeze tomorrow... 14. Contributions Examples: Sungard: Announced that 6 developers were joining the Apache project Schuberg Philis: Big contribution in building/packaging and Nicira support PCextreme: RBD/Ceph support Caringo: Support for own object store Basho: Devcloud packaging, S3 integration 15. What Does it do ? Open source Infrastructure as a Service (IaaS)platform. Data Center orchestrator Hypervisor agnostic (with addition of baremetal provisioning) Support complex enterprise networking (e.gFirewall, load balancer, VPN, VPC) Multi-tenant 16. A Very Flexible IaaS PlatformCompute HypervisorStorage Block & ObjectPrimary StorageSecondary StorageNetwork Network & Network Services 17. Architecture / Language Java application Tomcat6, Axis2, Maven build + ant Ant going away in 4.1 Moving towards a plugin architecture Collaboration Conference, Nov 30th -Dec 2nd 18. Build and Run in 4.1 git clone mvn clean mvn install mvn P developer pl developerDdeploydb mvn pl :cloud-client-uijetty:run 19. Cloud InteractionsOVM ClusterPrimaryStorage Ap i Xen vcenter vcenterMonitoringPrimary CS API CluIste AP vSphere ClusterStorager M n terEndEnd gmvCe t User UIUser UI PrimaryXS Cluster Storage AdminAdminClusteredClusteredCloudStack XAPI UIUI CloudStack DomainDomainCS Admin &CloudStackCloudStack CloudStack CloudStackEnd-user API Primary AdminAdmin UIUIManagement ManagementJSON KVM Cluster Storage ServerServerNetConf Juniper SRXCloud user Nitro API{API client (Fog/etc)} VNCJSONec2 API JSONNetscalerCloud user ConsoleConsoleConsole{ec2 API client } ProxyConsoleVM Proxy VM Proxy VMProxy VMNFSMySQLMySQL Server Sec. StorageSec. Storage NFS NFS {Proxied} SSHSec. VM Storage Sec. StorageVMAjax Ajax HTTPSVMVM ConsoleConsole Router VM Router VMHTTP (Template Download)Router VMRouter VMHTTP (Template Copy) Router VM Router VMCloud user HTTP (Swift) 20. Terminology Zone: Availability zone, aka Regions. Could be worldwide. Different data centers Pods: Racks or aisles in a data center Clusters: Group of machines with a common type of Hypervisor Host: A Single server Primary Storage: Shared storage across a cluster Secondary Storage: Shared storage in a single Zone 21. CloudStack Cloud Architecture InternetInternet Hypervisor is the basic unit of CloudStackManagement scale. ServerZone 1 Cluster consists of one ore more hosts of same L3 coreL3 corehypervisor All hosts in cluster have accessPod 1 Access Layer Access Layer Pod Nto shared (primary) storage Secondary . Storage Pod is one or more clusters,Cluster Nusually with L2 switches. Availability Zone has one or .more pods, has access to secondary storage.Cluster 1 One or more zones represent Host 11Host cloud Primary StorageHost 22 Host 22. Storage Primary Storage: Anything that can be mounted on the node of a cluster. Cluster LVMiSCSI Holds disk images of running VMs Support for CEPH with KVM hypervisors Secondary Storage: Available across the zone Holds snapshots and templates (image repo) Can use Openstack swift or any object store (Gluster FS) New support for Caringo Can use NFS for both to start Storage Abstraction refactoring underway 23. Networking Extremely flexible to: Provide isolation with VLANs Provide isolation at L3 with shared L2 (scalability) Support hardware devices that exposes API Deployed on existing networking infrastructure Support new networking paradigm (SDN) Support for Nicira Virtual P Extensive use of Open VSwitch 24. Layer-2 Guest Virtual Network CS Virtual Router provides Network Services External Devices provide Network Services Network Hardware exposing API can be controlledGuest Virtual Network Guest Virtual Network 100 VLAN 100PublicPublicNetwork/Inter Network/InternetGuestnetGuestGuestGuestPrivate IP VM 11 Public IP10.1.1.1 VM 1110.1.1.1VM VMGateway65.37.141.11 JuniperJuniperPublic IP1SRXSRXaddress65.37.141.11 CSFirewallFirewall CS GuestGuestGuestGuest VirtualVirtual10.1.1.3 VM 22VM10.1.1.3 VM 22VM RouterRouterPublic IP Private IP DHCP, DNS65.37.141.NetScaler NetScaler NAT Guest112 Load GuestGuest LoadGuest Load Balancing VM 33 Blancer VM 33VMBlancer VPN GuestGuestGuestGuest 44VM10.1.1.5 VM 44VM CSCS DHCP, VirtualVirtual RouterRouter DNSSlide from Chiradeep Vittal, 25. L3 isolation To go beyond the limitation of VLANs (4096vlans per switch) Move to L3 isolation Shared L2 Manage one firewall per VM Potential use of GRE tunnels to create singleL2 overlay GRE in tech preview for site to site VPN. 26. L3 isolation with distributed firewallsTenant Public IP address1 VM 1Internet 1 L2Tenant 2 VM 1Tenant VM 2 L3 CorePod 2 L2 Switch Tenant VM 2 Load Pod 3 L2 BalancerSwitchTenant2 VM 3 Tenant1 VM 3 VM 4 Slide from Chiradeep Vittal 27. A customizable GUIAJAX + API 28. A very extensive API 29. API Not really REST A set of methods available over http(s) Unauthenticated on integration port Authenticated on 8080 using Access andSecret Key Python/Ruby clients available Internal Marvin client CLI under development Other clouds client support the API 30. EC2 /S3 compatibility Significant development work happening to makeCloudstack highly compatible with EC2 /S3 API. Euca tools, boto etcshould work with cloudstack. 31. Enabling EC2 and S3 Via the GUI Via API call on integration API port 8096http://localhost:8096/client/api?command=updateConfiguration&name=enable.s3.api&value=truehttp://localhost:8096/client/api?command=updateConfiguration&name=enable.ec2.api&value=true 32. Highly Scalable See: From Alex Huang. 10k resources managed perMgt server. 30k resources with 30k VM insimulation. Management server can be setup in a multi-node configuration with a load-balancer andreplicated MySQL. 33. SandBox: DevCloud A Virtual box appliance packaged to provide aworking CloudStack environment. Aimed at developers but has other use cases: Xen PV hosts gives nested virtualization Local EC2/S3 Cloud on your laptop Networking experiments ? 34. DevCloud: self-containedCloudStack runs in the appliance 35. DevCloud: as HostRun CloudStack on local machineUse DevCloud to setup hosts 36. DevCloud to test 4.1 branch mvn -P developer clean mvn -P developer install mvn -P developer -pl developer Ddeploydb mvn -P developer -pl tools/devcloud Ddeploydb mvn -pl :cloud-client-ui jetty:runConfigure infrastructure: mvn -P developer,deploysvr -pltools/devcloud -Ddeploysvr 37. Testing Framework for the PyUG [environment] Marvin is a Pythondns= framework to against a[cloudstack]private.gateway= installprivate.pod.startip= Could be used as aprivate.netmask= of apublic.vlan.startip= Used to configure anhypervisor=XenServerhost= on a mgt host.password=password#storage poolsserverprimary.pool=nfs:// 38. CloudMonkey New ASF CloudStack CLI Python code, built using Marvin Available from CloudStack source or pypi: 39. Build A Cloud Events @build_clou

Search related