The VMware Event Broker Appliance (VEBA) Fling enables customers to unlock the hidden potential of events in their SDDC to easily implement event-driven automation based on vCenter Server Events.
It is commonly deployed using the familiar ova deployment process in vSphere. The inner workings of the VEBA are based on a lightweight Kubernetes deployment and yet another deployment model is to deploy the components that make up the appliance directly to a Kubernetes cluster.
If you’re running one or many VEBAs in production, you might want an easy and automated way to deploy a VEBA development environment for testing out new functions. To do this we can use Code Stream in combination with Cloud Assembly. If this is something you want to do, or if you want some hints on deploying any other ova using Cloud Assembly, read on…
Diagram
First a diagram of the components. In this instance, I’m going to be using the SaaS version of Code Stream, a local vCenter endpoint and an internally hosted Object store to host the ova. The diagram below shows how the pieces fit together.
VEBA Deployment Diagram
Sample Blueprint
The GitHub repository cloud automation content contains a sample blueprint that can be triggered by a Code Stream pipeline to deploy the VEBA. This can of course be modified to suit other ova files. The key pieces of the blueprint are the variables that provide input to all the options inside the ova. You can view the options by extracting the ova file then viewing the ovf file using a text editor such as Visual Studio Code, as shown in the screenshot below.
Once you have all the ovf:key information you can add corresponding variables to the blueprint. In the example blueprint, the repo cloud automation content uses inputs with defaults as examples. These will of course need to be adjusted based on your specific environmental requirements.
Object Store
In this example, I’ve used a Minio object store on an internal network to host the ova. I also tested this using S3 but you can host the ova wherever makes sense for your scenario.
Code Stream Pipeline
In this instance I used a Code Stream pipeline to trigger the blueprint deployment, this is useful because it can hold variables, rather than having to type them in for each deployment. Alternatively, variables can be stored in Code Stream itself. This simple example pipeline could be further built out to complete subsequent testing and validation tasks. This sample pipeline is also available in the cloud-automation-content repository.
Conclusion
With these components successfully configured developers are quickly and easily able to stand up a VEBA appliance for the development and testing of new functions. This example blueprint could also be easily adapted for deploying other ova’s.
About the Author:
James Wirth is a member of the Research Labs team within VMware Professional Services and focuses on DevOps, Site Reliability Engineering, Multi-Cloud architectures and new and emerging technologies. He is a proven cloud computing and virtualization industry veteran with over 15 years’ experience leading customers through their cloud computing journey.