WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud
  • Tanzu
    • Application Modernization
    • Tanzu services
    • Tanzu Community Edition
    • Tanzu Kubernetes Grid
    • vSphere with Tanzu
  • Home Lab
  • Nested Virtualization
  • Apple
You are here: Home / Automation / VUM UMDS Docker Container for vSphere 6.5

VUM UMDS Docker Container for vSphere 6.5

12.07.2016 by William Lam // Leave a Comment

Early last week, I had published an article on how to automate the deployment of VUM's Update Manager Download Service (UMDS) in vSphere 6.5 for an Ubuntu 14.04 distribution. The interesting backstory to that script is that it started from a Docker Container that I had initially built for the VUM UMDS. I found that being able to quickly spin up UMDS instance using a Docker Container purely from a testing standpoint was much easier than needing to deploy a full VM, especially as I have Docker running on my desktop machines. Obviously, there are limitations with using a Docker Container, especially if you plan to use UMDS for a longer duration and need persistence. However, for quick lab purposes, it may just fit the bill and even with Docker Containers, you can use Docker Volumes to help persist the downloaded content.

You can find the Dockerfile and its respective scripts on my Github repo here: https://github.com/lamw/vum-umds-docker

Below are the instructions on how to use the VUM UMDS Docker Container.

Step 1 - Download and extract the VCSA 6.5 ISO which contains the VUM UMDS Installer. You will need to copy the VMware-UMDS-6.5.0-4540462.tar.gz (located under umds directory) to your system that has the Docker Client.

Step 2 - Download both the Dockerfile and install_umds.sh on to the same system as the UMDS installer.

Step 3 - Next, we need to build our Docker Container which accepts four build arguments as a way to pass in variables to the UMDS installer script. The following variables are as defined:

  • UMDS_DATABASE_NAME - The name of the UMDS DB (e.g. UMDSDB)
  • UMDS_DSN_NAME - The name of the UMSDS DSN (e.g. UMDS_DSN)
  • UMDS_USERNAME - The name of the user to run the UMDS Service (e.g. umdsuser)
  • UMDS_PASSWORD - The password to the UMDS user account (e.g. VMware123)

Here is an example of passing in the variable names to build the Docker Container which I have just named "umds" for simplicity purposes.

docker build --build-arg UMDS_DATABASE_NAME=UMDSDB --build-arg UMDS_DSN_NAME=UMDS_DSN --build-arg UMDS_USERNAME=umdsuser --build-arg UMDS_PASSWORD=VMware123 -t umds .

Step 4 - To start the Docker Container, run the following command:

docker run --rm -it umds

vum-update-manager-download-service-docker-container
You can now use the vmware-umds CLI to add/remove patch repositories that UMDS can subscribe to. You would also use the utility to initiate the patch downloads by using the -D option. Once you have downloaded all of your content, you will need to setup an HTTP server to make it available to VUM instance in the vCenter Server Appliance (VCSA). You can configure any popular HTTP Server such as Nginx or Apache. For my lab environment, I actually just use the tiny HTTP server that Python can provide.

To make the content under /var/lib/vmware-umds available, just change into that directory and run the following command:

python -m SimpleHTTPServer

By default, port 8080 will be used, but you can also change it by simple appending a port number like: python -m SimpleHTTPServer 8081. Now if you open a browser to the IP Address and port of the UMDS Server, you should see directory listing of the files. You can take this URL and add that into your VUM instance. Be aware that once you stop the Docker Container, you will lose all downloaded content as it is not persisted.

If you wish to persist patch store which is located in /var/lib/vmware-umds, you could use a Docker Volume to mount a local directory on the Docker Client system and map that into the Docker Container. This would allow you to not have to download the files each time for testing purposes.

To do so, here is an example of starting the Docker Container and mounting /root from your local Docker Client system to /var/lib/vmware-umds:

docker run --rm -it -v /root:/var/lib/vmware-umds umds

More from my site

  • Automating the installation of VUM Update Manager Download Service (UMDS) for Linux in vSphere 6.5
  • Is my vSphere Cluster managed by vSphere Lifecycle Manager (vLCM) as a Desired Image or Baseline?
  • Project USB to SDDC - Part 3
  • Easily try out vSAN 6.6 Encryption feature using KMIP Docker Container
  • Project USB to SDDC - Part 2

Categories // Automation, Docker, vSphere 6.5 Tags // Docker, ubuntu, update manager download service, vSphere 6.5, vSphere Update Manager, vum

Thanks for the comment! Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Author

William Lam is a Senior Staff Solution Architect working in the VMware Cloud team within the Cloud Infrastructure Business Group (CIBG) at VMware. He focuses on Cloud Native technologies, Automation, Integration and Operation for the VMware Cloud based Software Defined Datacenters (SDDC)

Connect

  • Email
  • GitHub
  • LinkedIn
  • RSS
  • Twitter
  • Vimeo

Recent

  • How to disable the Efficiency Cores (E-cores) on an Intel NUC? 03/24/2023
  • Changing the default HTTP(s) Reverse Proxy Ports on ESXi 8.0 03/22/2023
  • NFS Multi-Connections in vSphere 8.0 Update 1 03/20/2023
  • Quick Tip - How to download ESXi ISO image for all releases including patch updates? 03/15/2023
  • SSD with multiple NVMe namespaces for VMware Homelab 03/14/2023

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2023

 

Loading Comments...