You can use Garden, the component that VMware Tanzu Application Service for VMs (TAS for VMs) uses to create and manage isolated environments called containers. Each instance of an app deployed to TAS for VMs runs within a container.
For more information about how containers work, see Container Mechanics in Container Security.
Garden has plug-in back ends for different platforms and runtimes. It specifies a set of interfaces that each platform specific back end must implement.
These interfaces contain methods to perform the following actions:
STDOUT
and STDERR
data out of containers.For more information, see the Garden repository on GitHub.
TAS for VMs currently uses the Garden-runC back end, a Linux-specific implementation of the Garden interface using the Open Container Interface (OCI) standard. Previous versions of TAS for VMs used the Garden-Linux back end. For more information, see the Garden-Linux repository on GitHub.
Garden-runC has the following features:
Uses the same OCI low-level container execution code as Docker and Kubernetes, so container images run identically across all three platforms
AppArmor is configured and enforced by default for all unprivileged containers
Seccomp allowlisting restricts the set of system calls a container can access, reducing the risk of container breakout
Allows plug-in networking and rootfs management
For more information, see the Garden-runC repository on GitHub.
This component uses the Healthchecker-release to perform the monit health checks. It adds TCP and HTTP health checks to extend standard monit service checks. Because the version of monit included in BOSH does not support specific TCP or HTTP health checks, this utility performs health checking and restart processing when they become unreachable.
Healthchecker is added to a BOSH release as a monit process under the Job to be monitored. It is configured to perform a health check against the main process in the Job. If Healthchecker detects a failure, it exits. The Healthchecker supplementary script restarts the main monit process, allowing up to ten failures in a row. After ten consecutive failures, it stops restarting the Job because the process is either in a poor state, or the health checker is misconfigured and is causing process downtime.
This component typically requires no additional configuration by platform operators.
Garden manages container file systems through a plug-in interface. TAS for VMs uses the Garden RootFS (GrootFS) plug-in for this task. GrootFS is a Linux-specific implementation of the Garden volume plug-in interface.
GrootFS performs the following actions:
For more information, see GrootFS Disk Usage and the GrootFS repository on GitHub.