This topic describes the architecture of Windows Diego Cells that VMware Tanzu Application Service for VMs [Windows] deploys to run containerized .NET apps and the stemcells that it supplies to BOSH as the operating system for the Windows Diego Cell VMs.
Operators, who want to run Windows Diego Cells in Ops Manager to enable developers to push .NET apps, can deploy the TAS for VMs [Windows] tile.
Deploying this tile creates a separate BOSH deployment populated with the Garden Windows release, which runs on a Windows Diego Cell built from a Windows stemcell.
After the Windows Diego Cell is running, developers can specify a Windows stack when pushing .NET apps from the command line. Ops Manager passes the app to the Windows Diego Cell in the TAS for VMs [Windows] BOSH deployment. The diagram below illustrates the process.
App instances in Ops Manager run inside containers. Garden is the API that creates and manages these containers. An implementation equivalent to that on Linux Diego Cells provides this infrastructure on Windows Diego Cells, utilizing native Windows Server containers.
By installing the TAS for VMs [Windows] tile, operators create a Windows Diego Cell from a stemcell that contains the Windows Server operating system. Garden on Windows uses Windows containers to isolate resources on Windows Diego Cells that Ops Manager manages alongside Linux Diego Cells.
For more information about installing the TAS for VMs [Windows] tile, see Installing and Configuring TAS for VMs [Windows].
For more information about Garden, see Garden. For more information about Diego Cells, see Diego Cell in TAS for VMs Components. For more information about stemcells, see What is a Stemcell? in the BOSH documentation. For more information about Windows containers, see Windows and containers in the Microsoft documentation.
A Windows Diego Cell includes the following components:
Guardian: Implements the Garden API on Windows.
Loggregator Agent: Forwards app logs, errors, and metrics to the Loggregator system. For more information about the Loggregator Agent, see Step 6: Sends Logs to Loggregator in Diego Components and Architecture. For more information about Loggregator, see Loggregator Architecture.
BOSH Agent: Executes instructions from the BOSH Director. For more information, see Agent in Components of BOSH in the BOSH documentation.
Diego Rep: Runs and manages Tasks and Long Running Processes. For more information, see Tasks and Long-Running Processes in How Diego Balances App Processes.
The following diagram illustrates the architecture of a Windows Diego Cell:
Garden on Windows uses the following runtime plugins to create and manage Windows containers for VMware Tanzu Application Service for VMs:
Container plugin winc
: Creates Open Container Initiative (OCI)-compliant containers, executes processes in the containers, and sets their CPU and RAM limits. For more information about OCI compliance, see the Open Container Initiative website.
Network plugin winc-network
: Creates a network compartment for the container, applies its DNS settings, and defines its inbound and outbound network access rules.
Rootfs image plugin groot
: Sets up the container filesystem volume and uses the File Server Resource Manager (FSRM) API to define its disk usage quotas. For more information about the FSRM, see File Server Resource Manager (FSRM) overview in the Microsoft documentation.
A stemcell is a customized operating system image containing the filesystem for BOSH-managed VMs. When deployed, the operating system includes the BOSH Agent process, which is dedicated to communicating with the orchestrating VM, the BOSH Director. The BOSH Agent executes and monitors BOSH jobs on its VM.
Deployments of Windows Server on Ops Manager currently use a stemcell containing Windows Server 2019.
For more information about obtaining or creating a stemcell for TAS for VMs [Windows], see Downloading or Creating Windows Stemcells.