Introduction to Apache CloudStack by David Nalley
-
Upload
buildacloud -
Category
Software
-
view
376 -
download
3
description
Transcript of Introduction to Apache CloudStack by David Nalley
![Page 2: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/2.jpg)
#whoami
Recovering sysadmin
Apache CloudStack and Apache jclouds
Work for Citrix Open Source Business Office
VP Infra, Apache Software Foundation
Intro to Apache CloudStack
![Page 3: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/3.jpg)
Questions
Intro to Apache CloudStack
![Page 4: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/4.jpg)
A brief history of CloudStack
2008-2010 – Stealth mode startup (VMOps)
2009 – First production in public cloud
2010 – Released as open source (GPLv3)
2011 – Cloud.com acquired by Citrix
2012 – Transferred to the ASF (ASLv2)
2013 – Graduated as TLP
Intro to Apache CloudStack
![Page 5: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/5.jpg)
Cloud
Infrastructure as a Service
• Compute, Network, Storage
Cloud requires:
• On-demand
• Self-service
• Scalable
• Measurable
Intro to Apache CloudStack
![Page 6: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/6.jpg)
What is CloudStack
Orchestration platform for Infrastructure as a
Service
Focused heavily on compute
Somewhat monolithic – by design
Written in Java
Intro to Apache CloudStack
![Page 7: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/7.jpg)
Where do we dive in?
Intro to Apache CloudStack
![Page 8: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/8.jpg)
IaaS is Orchestration
IaaS doesn’t really provide new services, it
orchestrates existing services
•Hypervisors
•Storage
•Network
•Isolation
•Accounting
Intro to Apache CloudStack
![Page 9: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/9.jpg)
CloudStack Hypervisor Support
KVM
XenServer
VMware vSphere
Hyper-V
Oracle VM (reappearing in 4.5)
LXC
Baremetal
Intro to Apache CloudStack
![Page 10: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/10.jpg)
CloudStack Storage - Primary
Local
NFS
iSCSI
Distributed (GlusterFS, Ceph, etc)
$anything_hypervisor_supports
Intro to Apache CloudStack
![Page 11: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/11.jpg)
CloudStack Storage - Secondary
NFS
Object Storage (S3 or Swift API)
Intro to Apache CloudStack
![Page 12: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/12.jpg)
Networking
The bane of any cloud operators existence
Intro to Apache CloudStack
![Page 13: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/13.jpg)
Networking - Challenges
Network guys are luddites (generally)
We have scale issues
Intro to Apache CloudStack
![Page 14: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/14.jpg)
Scale
VLANs – don’t scale
Firewalls – don’t scale
Loadbalancers – don’t scale
Intro to Apache CloudStack
![Page 15: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/15.jpg)
How we scale the network
Amazon’s Security Groups
In CloudStack we reuse the Security Groups
terminology.
SDN
The interesting pieces aren’t in Layer 2-3,
but 4-7, and still being developed.
Intro to Apache CloudStack
![Page 16: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/16.jpg)
Resources, hierarchy, failure
domains
Regions
Zones (DCs)
Pods
Clusters
Machines
Intro to Apache CloudStack
![Page 17: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/17.jpg)
Actual use
UI is beautiful
…..but…..
API is where real people do work.
Intro to Apache CloudStack
![Page 18: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/18.jpg)
API
Native CloudStack API
http://cloudstack.apache.org/docs/api/
EC2, GCE APIs
https://github.com/imduffy15/ec2stack
https://github.com/NOPping/gstack
Intro to Apache CloudStack
![Page 19: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/19.jpg)
API
Use an abstraction library (jclouds, fog,
libcloud)
Use tools that use abstraction libraries
(knife-cloudstack,
Intro to Apache CloudStack
![Page 20: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/20.jpg)
![Page 21: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/21.jpg)
Stop thinking of VMs
{
"name": "hadoop_cluster_a",
"description": "A small hadoop cluster with hbase",
"version": "1.0",
"environment": "production",
"servers": [
{
"name": "zookeeper-a, zookeeper-b, zookeeper-c",
"description": "Zookeeper nodes",
"template": "rhel-5.6-base",
"service": "small",
"port_rules": "2181",
"run_list": "role[cluster_a], role[zookeeper_server]",
"actions": [
{ "knife_ssh": ["role:zookeeper_server", "sudo chef-client"] }
]
},
{
"name": "hadoop-master",
"description": "Hadoop master node",
"template": "rhel-5.6-base",
"service": "large",
"networks": "app-net, storage-net",
"port_rules": "50070, 50030, 60010",
"run_list": "role[cluster_a], role[hadoop_master], role[hbase_master]"
},
{
"name": "hadoop-worker-a hadoop-worker-b hadoop-worker-c",
"description": "Hadoop worker nodes",
"template": "rhel-5.6-base",
"service": "medium",
"port_rules": "50075, 50060, 60030",
"run_list": "role[cluster_a], role[hadoop_worker], role[hbase_regionserver]",
"actions": [
{ "knife_ssh": ["role:hadoop_master", "sudo chef-client"] },
{ "http_request": "http://${hadoop-master}:50070/index.jsp" }
]
}
]
}
![Page 22: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/22.jpg)
{
"name": "hadoop_cluster_a",
"description": "A small hadoop cluster with hbase",
"version": "1.0",
"environment": "production",
![Page 23: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/23.jpg)
"servers": [
{
"name": "zookeeper-a, zookeeper-b, zookeeper-c",
"description": "Zookeeper nodes",
"template": "rhel-5.6-base",
"service": "small",
"port_rules": "2181",
"run_list": "role[cluster_a], role[zookeeper_server]",
"actions": [
{ "knife_ssh": ["role:zookeeper_server", "sudo chef-client"] }
]
},
![Page 24: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/24.jpg)
{
"name": "hadoop-master",
"description": "Hadoop master node",
"template": "rhel-5.6-base",
"service": "large",
"networks": "app-net, storage-net",
"port_rules": "50070, 50030, 60010",
"run_list": "role[cluster_a], role[hadoop_master], role[hbase_master]"
},
![Page 25: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/25.jpg)
{
"name": "hadoop-worker-a hadoop-worker-b hadoop-worker-c",
"description": "Hadoop worker nodes",
"template": "rhel-5.6-base",
"service": "medium",
"port_rules": "50075, 50060, 60030",
"run_list": "role[cluster_a], role[hadoop_worker], role[hbase_regionserver]",
"actions": [
{ "knife_ssh": ["role:hadoop_master", "sudo chef-client"] },
{ "http_request": "http://${hadoop-master}:50070/index.jsp" }
]
![Page 26: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/26.jpg)
knife cs stack create hadoop_cluster_a
![Page 27: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/27.jpg)
Prereqs
Configuration management
Automated provisioning
Monitoring
Intro to Apache CloudStack
![Page 28: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/28.jpg)
Jevon’s Paradox
Intro to Apache CloudStack
![Page 29: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/29.jpg)
Rants
Portability is a red herring – Config
Management is a prereq
Portability is pointless – moving data is the
problem
Scale is hard – expect to iterate, a lot.
Failure is even harder – fail proactively
Intro to Apache CloudStack
![Page 30: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/30.jpg)
Next gen predictions
Lots of people need IaaS
Many people need workload orchestration
(Kubernetes, Apache Mesos, etc)
Intro to Apache CloudStack
![Page 31: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/31.jpg)
Questions
Intro to Apache CloudStack
![Page 32: Introduction to Apache CloudStack by David Nalley](https://reader034.fdocuments.net/reader034/viewer/2022052622/559513071a28ab84598b4600/html5/thumbnails/32.jpg)
Get Involved
Web: http://cloudstack.apache.org/
Mailing Lists: cloudstack.apache.org/mailing-lists.html
IRC: irc.freenode.net: 6667 #cloudstack
Twitter: @cloudstack
LinkedIn: www.linkedin.com/groups/CloudStack-Users-Group-3144859
If it didn’t happen on the mailing list, it didn’t happen.
Intro to Apache CloudStack