DevCloud and CloudMonkey in Apache CloudStack Sebastien Goasguen @sebgoa
IaaS…
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 configured on-demand VLANS, no VLANS, existing net infra, SDN…
IaaS is really: A Data Center Orchestrator That can: Data storage Data movement Data processing That can: Handle failures Support large scale Be programmed
DevOps Bring your developers closer to the operations Make your sys admins develop the apps Move to Software Defined Data Center, Automate everything Dev: Java IDE Ops: Shell CLI
What the ASF did to CloudStack ? Caveat: A contributor is identified by sending a single email on the –dev or –users mailing list. This graphs plots the number of unique email addresses
“A little bit about the internals”
A Very Flexible IaaS Platform Compute XenServer VMware KVM Oracle VM Bare metal Hypervisor Storage Local Disk iSCSI NFS Fiber Channel Swift Block & Object Primary Storage Secondary Storage Network Network Type Isolation Load balancer Firewall VPN Network & Network Services http://www.slideshare.net/cloudstack/cloudstack-architecture
Architecture / Language Java application Tomcat6, Axis2, Maven build + ant Ant going away in 4.1 Moving towards a plugin architecture
Releases Apache CloudStack 4.0 released in November Time based releases Rather slip features but guarantee release Apache CloudStack 4.1 planned for March 22nd. 4.2 most likely in July
CloudStack Cloud Architecture Internet Hypervisor is the basic unit of scale. Cluster consists of one ore more hosts of same hypervisor All hosts in cluster have access to shared (primary) storage Pod is one or more clusters, usually with L2 switches. Availability Zone has one or more pods, has access to secondary storage. One or more zones represent cloud CloudStack Management Server Zone 1 …. L3 core Secondary Storage Pod N Primary Storage Pod 1 …. Cluster N Access Layer Host 2 Cluster 1 Host 1
Cloud Interactions CloudStack Clustered CloudStack CloudStack OVM Cluster Primary Storage XenApi vcenter Monitoring Primary Storage CS API vSphere Cluster Cluster Mgmt vCenter API CloudStack End User UI CloudStack Clustered CloudStack Management Server Primary Storage XS Cluster Admin UI XAPI CS Admin & End-user API Domain Admin UI Primary Storage JSON KVM Cluster NetConf Juniper SRX Cloud user {API client (Fog/etc)} Nitro API VNC JSON ec2 API JSON Netscaler MySQL Cloud user {ec2 API client } Console Proxy VM Console Proxy VM NFS Server {Proxied} SSH Sec. Storage VM NFS NFS Sec. Storage VM Ajax Console HTTPS Router VM HTTP (Template Download) Router VM HTTP (Template Copy) Router VM http://www.slideshare.net/cloudstack/cloudstack-architecture Cloud user HTTP (Swift)
“To get your feet wet…”
DevCloud A Virtual box appliance packaged to provide a working 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 ?
Self-Contained
DevCloud: as Host Run CloudStack on local machine Use DevCloud to setup hosts
CloudMonkey The CloudStack CLI, developed by Rohit Yadav ~600 lines of Python pip install cloudmonkey Lots of features: Auto-completion Tabular output Help , scriptable, interactive shell…
Intro $ cloudmonkey ☁ Apache CloudStack 🐵 cloudmonkey 4.0.0. Type help or ? to list commands. 🙉 cloudmonkey> set apikey plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg 🙉 cloudmonkey> set secretkey VDaACYb0LV9eNjTetIOElcVQkvJck_J_QljX_FcHRj87ZKiy0z0ty0ZsYBkoXkY9b7eq1EhwJaw7FF3akA3KBQ
🙉 cloudmonkey> list users 🙉 cloudmonkey> list virtualmachines 🙉 cloudmonkey> help list templates 🙉 cloudmonkey> deploy virtualmachine –help 🙉 cloudmonkey> list templates templatefilter=all 🙉 cloudmonkey> list serviceofferings | grep id 🙉 cloudmonkey> stop virtualmachine id=2c650856-a080-4766-a8b3-4166042ccec7
Welcoming contributions and feedback, Join the fun ! Info Apache incubator project http://incubator.apache.org/cloudstack #cloudstack and #cloudstack-dev on irc.freenode.net @CloudStack on Twitter http://www.slideshare.net/cloudstack http://incubator.apache.org/cloudstack/mailing-lists.html Collaboration Conference, Nov 30th -Dec 2nd http://collab12.cloudstack.org/ http://www.youtube.com/diycloudcomputing Welcoming contributions and feedback, Join the fun !
“Time for a Demo ?”