“If This Then That” for vSphere: The Power of Event-Driven Automation
Business processes today are more complex than ever to satisfy unprecedented customer expectations around instant feedback, continuous product improvements and always-on availability. It’s no surprise that developers are in high demand and are the driving force behind new technologies, such as containers, functions and changes in established architecture paradigms.
But we’re not only talking about developers in the enterprise here. These organizational changes and new demands affect everyone, including vSphere admins and architects. Being able to quickly react to new requests and changes in scope from different lines of businesses is the new normal. E.g. A third-party that needs to be integrated into a vSphere environment, a newly rolled out automation tool that interacts with vCenter Server, an external database (CMDB) to persist all audit events from your vSphere infrastructure or a messaging system like Slack where the new DevOps team requests alerts to be sent to.
Without immediately noticing, we are entering a highly interconnected world with tens or hundreds of services connected to and dependent on each other to fulfill these complex business needs. This is not without consequences to an organization’s vSphere environment and vCenter Server in particular. vSphere administrators and architects must balance business requirements and timeliness with operational concerns, such as:
- Security – How do we keep vCenter Server secure but also allow business units to connect and integrate?
- Stability – How do we prevent vCenter Server from becoming a bottleneck in the overall architecture as the number of consumers grows, often unpredictably?
- Extensibility – How do we potentially allow any system to integrate into vCenter Server, even though vCenter Server or a particular solution might not support it out of the box – or never will?
The typical approach to address these concerns, such as writing an ad hoc (PowerCLI) script, executing a periodic (cron) job to pull out data from vCenter Server, or using one of the vSphere SDKs, may not scale with these new demands. We are forced to reevaluate our design choices and toolset. Fortunately, we are not the first ones to solve this…
With the rise of container platforms and serverless computing, such as Kubernetes and AWS Lambda, developers are changing the way they design modern applications by embracing events as a first-class concept. This is what we refer to as event-driven architectures (EDA). You might recall that vCenter has supported events almost from its inception. This poses an interesting question. Can we apply this design approach to vSphere as well?
In our recent VMworld 2019 session, “If This Then That” for vSphere – The Power of Event-Driven Automation we explored this space in greater detail. We also demoed a prototype of a soon to be released Virtual Appliance (VMware Fling) which can get you started quickly. Make sure you watch this VMworld US session to find out more or attend it live at the upcoming VMworld Europe event.
Note: You will need to sign in with a free VMworld account to view the video.
It’s never been more exciting to be part of the technology industry. Similar to how Project Pacific is evolving vSphere to become a modern application platform, could vCenter Server evolve to become an easy to use compute engine for event-triggered function execution and lightweight systems integration?
If you think VMware should continue to explore this space or have any feedback, we would love to hear from you. Feel free to reach out to us on Twitter and share your feedback: William (@lamw) and Michael (@embano1).
William Lam is a Staff Solutions Architect on the VMware Cloud on AWS team. He primarily focuses on Automation, Integration and Operation of our Software-Defined Datacenter (SDDC). He works closely with various engineering teams within VMware to help provide early feedback on usability, design and architecture.
Michael Gasch is an Application Platform Architect and distributed Systems Engineer in the Office of the CTO at VMware. He works closely with our customers and VMware R&D to advance all things Kubernetes on the VMware Software-Defined Data Center.