For developers, virtualization offers an amazing opportunity to work more efficiently, contribute to savings in internal infrastructure operating expenses, and contribute to building out cloud technologies. Each of the major hypervisor vendors offers various methods of automating tasks for its platform; Microsoft, Citrix, and VMware have packages of offerings targeted at the development community. Further, some offer software application packaging and software distribution solutions.
One exciting area helping to ease and speed up development and test activities is leveraging automation everywhere in the software development lifecycle (SDLC), including the code, build, debug, test, stage and deploy stages. Another helpful development are ITIL offerings that allow for further application lifecycle control. And a hot field right now is desktop delivery based on virtualization (Virtual Desktop).
In this article, I break down the SDKs available for cloud development and other offerings such as code samples for the three leading hypervisors.
VMware Has Longest Hypervisor Product History and Most Offerings
VMware offers an extensive API suite for vSphere and vCenter automation including a Web Services SDK, Guest OS programmability, PHP, Perl, and Java SDKs and more. It also offers a complex deployment orchestration tool known as VMware vCenter Orchestrator which allows the automation of both VMware tasks as well as automating other IT infrastructure to accomplish IT tasks.
Leveraging the power of virtualization to the task of developing software, VMware vCenter Lab Manager offers an extensive SOAP API set that can provide solutions for test automation, build automation, and ease of access to development environments and tools. This includes integration points with HP BTO applications such as HP Quality Center
Third party software developers have leveraged the VMware SDKs to build entire applications and businesses around managing VMware infrastructure. Hence it is clear these tools are well tested in the real world and contain the tools needed to accomplish almost any task.