Exploring Containers with VMware vRealize
How to build containers in vRealize Automation and monitor them with vRealize Operations
VMware and WWT
One thing is certain about VMware vRealize Automation (vRA): every version just keeps getting better and better. What started as an Infrastructure as a Service (IaaS) tool in vCloud Cloud Automation Center (vCAC) has now become a complete IT as a Service (ITaaS) cloud management platform (CMP).
Thanks to a broad ecosystem full of integrations from OEMs, select third-parties like Blue Medora and SovLabs, groundwork has been laid in the VMware marketplace to manage your entire data center from a single pane of glass. Combine that with custom workflow, API and plug-in development from WWT Application Services, and you have everything you need.
So, what’s trending out there in IT land? Integrations, multicloud and comparing the need for containerization vs. traditional virtual machines. We have several posts on working with Docker and Kubernetes containers, so I figured we should take a look at how we can build these containers in vRA and then monitor them with vRealize Operations (vROps).
Let’s start with the basics:
- VMware vRealize Automation 7.3: Enterprise preferred for software components, or include an application management tool like Ansible or Puppet. This also includes the integrated VMware Admiral open source container management platform.
- Photon OS 1.0 or 2.0 to utilize as container hosts provisioned from the vRA catalog.
- An On-Prem or Public Docker Repository.
Here’s some samples:
The container host
Photon OS is VMware’s open source operating system that's being developed to streamline how they build and manage virtual appliances for all VMware software solutions. Products like VMware vCenter Server Appliance (VCSA) have already adopted this new OS in version 6.5.
In this example, we are using a machine blueprint and VMware vRA software component to execute the Bash script for deploying Docker. The custom properties shown in the screenshot below allows for the host to be automatically added into Admiral as a container host. Our blueprint in particular builds a minimum three-host cluster, and leverages Infoblox IPAM as well as ServiceNow ITSM/CMDB during processing.
Host automatically added to Admiral
Here we can see the final blueprint added to the vRA Catalog and entitled for users to run. Typically, you would only entitle this blueprint to someone with a Container Administrator role in vRA, so they can access the Containers tab later for further management.
Final blueprint added to vRA Catalog
Once provisioned, the deployment and associated components appear in the Items tab for vRA. Here, an Administrator manages Day 2 resource actions such as providing backup as a service, lifecycle controls or scaling in/out the deployment. This is handled by clicking on the VM or deployment and then clicking Actions at the top. Custom Actions can be added by integrating vRO workflows into vRA and then entitling.
Admin's view managing Day 2 resources
VMware admiral management
After provisioning the Container Hosts, head over to the Containers tab. Here you can see the list of hosts added to Admiral and configure placement policies so hosts can be assigned to particular placement zones. Zones allow specific container services to operate on a specific cluster of hosts. So you can have staging, QA and dev zones or, in my case, a differentiation between our Advanced Technology Center (ATC) lab work versus Application Services work.
List of hosts added to Admiral
If your company requires the use of a private registry instead of using a public one like Docker Hub, simply add the registry connection in the Containers tab as well and indicate the type of login to support (user, ssh key, etc.)
Add the registry connection
Creating container blueprints
From the Containers tab in vRA, click the templates link in the tree. The most popular templates will appear, but you can search for, import or write one with Docker Compose.
In this example, I’m going to use Crate by clicking the drop-down menu and then clicking Enter Additional Info.
Click Save as Template.
Save your work
Next you can add additional containers, container networks and container volumes.
Adding more containers
The Policy tab of container definition is where you define the deployment policy for the new container.
Editing Container Definitions
Once the changes are complete, click Push and then head over to the Design tab to publish the new blueprint before adding entitlements.
Push to save
If you’re dealing with multiple containers that needs to communicate with each other, Admiral also includes a Link feature to map dependencies between them. In this example, WordPress is linked with MySql in order to deploy WordPress with the DB backend.
The Items tab in vRA provides the Day 2 actions to support the deployment of any containers from the self-service catalog, however there might be a need by a Container Admin to review logs and system performance. All deployments through vRA are tracked under the Applications and Containers sections.
Shows current logs, performance and links to ports in use (for quick access to the running app)
Finally, here’s a look at some templates pushed out to the catalog.
Templates pushed to catalog
Docker on Admiral alternatives
Running Docker on Photon OS with Admiral isn’t the only way to deliver containers in vRA 7.3. Administrators can also run CoreOS and supply vSphere Integrated Containers. Another option is to deploy products like Kubernetes and Docker Swarm using a multi-machine blueprint.
Alternatives to Docker on Admiral
Monitoring Docker with VMware vROps
By leveraging the Blue Medora management pack for Docker, administrators can monitor their Docker CE or EE hosts directly from vROps. Multiple dashboards and Docker-based report templates are included with the management pack that make it easy to get started with monitoring the overall health of the container hosts, Docker services and containers.
Docker Overview Dashboard
Docker Container Details Dashboard
See a live demo of these capabilities in our ATC by contacting your account manager. Or explore the ATC on your own with our ATC Connect app. We offer more than 50 active demonstrations and proof of concepts on cloud automation.
Don’t forget to check out my other articles on integrating with the VMware vRealize Suite.