Upload
buildacloud
View
1.197
Download
5
Embed Size (px)
Citation preview
Writing CloudStack Pluginsby Alex Huang
A little bit about me
• Cloud.Com Founding Engineer• Software architect for CloudPlatform• Responsible for overall architecture,
performance, and scalability• Committer and PPMC member• BS from UC Berkeley and MS from Stanford
Extending CloudStack Networking
Network Manager
Network Element
DnsService
MyDnsElementMyDnsDeviceMa
nager
MyDnsDeviceService
PluggableService
MyDnsDeviceResource
AgentManager Queue
1. prepare (part of start vm)2. prepare (Network, Nic, DeployDestination, VmInfo)
3. addDnsRecord(ip, fqdn)
4.Enqueue AddDnsRecord
5.API call to Dns Device
Device ConfigurationAdmin API (CRUD)
MySQLDemonstrates one way to inform an external DNS server when an instance starts.Classes shaded blue form a plugin / service bundle to integrate an external DNS server. Clients of the instance can then use DNS names to access the instance.
ServerResource
Outline
• Setup developer environment• Checking out source code• Setup devCloud• Setup a new plugin project• Write code• Write a unit test• Testing your new plugin• Potential Problems
Tools Needed
• JDK• MySQL • Maven• Eclipse– M2e– Pydev– EGit
• Cygwin if on Windows
The future needs you!
Project web site: http://incubator.apache.org/projects/cloudstack.html
Mailing lists: [email protected] [email protected]
IRC: #CloudStack on irc.freenode.net