The host entity provides a simple model for the IT infrastructure (nodes, computers, etc) that data resources are hosted on. In today's systems, hardware is managed to get the maximum use out of it. Therefore, the concept of a host is typically virtualized to allow a single computer to be used for many hosts and for multiple computers to collectively support a single host.
The concept of a
Host is abstracted to describe a deployment environment that has access to hardware and has a basic software stack, typically including the operating systems.
The host can be linked to its location through the
DeployedOn relationship shows where IT Infrastructure is deployed to.
BareMetalComputer describes a connected set of physical hardware. The open metadata types today do not attempt to model hardware in detail but this could be easily added if a contributor with the appropriate expertise was willing to work on it.
VirtualMachine provides virtualized hardware through a hypervisor that allows a single physical bare metal computer to run multiple virtual machines.
VirtualContainer provides the services of a host to the software servers deployed on it. When the server makes requests for storage, network access, etc, the
VirtualContainer delegates the requests to the equivalent services of the actual host it is deployed on.
VirtualContainers can be hosted on other
VirtualContainers, but to actually run they need to ultimately be deployed onto a real physical
DockerContainer provides a specific type for the popular container type called docker .
HostCluster describes a collection of hosts that together are providing a service. Clusters are often used to provide horizontal scaling of services.
There are two specific types of host clusters defined: in both, the hosts that they manage are often referred to as nodes.
Within the host cluster is typically a special host (node) that is controlling the execution of the other members. This host is modelled with a
SoftwareServerPlatform that describes the cluster management platform, and optional
SoftwareCapabilities needed to manage the cluster are linked to these
ITInfrastructure using the
HadoopCluster describes a Hadoop cluster that uses multiple bare metal computers/virtual machines to manage big data workloads.
KubernetesCluster describes a Kubernetes cluster that manages containerized applications across multiple bare metal computers/virtual machines.
The containerized applications managed by Kubernetes are represented as
The host cluster is linked to the hosts it is managing using the
DeployedOn, which is more general.