Skip to content
Public Framework

Layers

v1.0 · in consultation

Deployment & Runtime (RUN)

Layer RUN of Public Framework Modelling Language 1.0 answers the question “Where and how does it run?”. This page describes the layer's concepts, how they relate, and its 16 element types.

Describes specification v1.0

What the layer describes

The RUN layer answers the question “Where and how does the software run?”. It describes execution: topology, configuration, storage and resource allocation. Physical equipment (PhysicalEquipment) and its placement belong to HST.

Concepts and how they relate

An environment (Environment) belongs to the location family. For that reason it may compose any element, for example its clusters (Cluster) and nodes (Node). The relationship is “composes” (composition). In turn, a cluster may compose its namespaces (Namespace), because both belong to the structure family.

A workload (Workload) realises an application container (ApplicationContainer) from APP through the “realises” relationship (realisation). A deployment (Deployment) records the installation of a release (Release) in a runtime context. Releases, artifacts (Artifact), workloads and deployments are deployed to an environment, a cluster, a node or a namespace. The relationship is “is deployed to” (deployedTo).

Where needed, a workload accesses a storage resource (StorageResource), a configuration set (ConfigurationSet) or a secret (Secret) through the “accesses” relationship (access). A network (Network) belongs to the location family and may compose its subnets (Subnet) and network zones (NetworkZone).

Where needed, clusters, nodes and managed services (ManagedService) are hosted by another element, through the “is hosted by” relationship (hostedBy). The target is a data centre (DataCentre), a cloud region (CloudRegion) or a hosting provider (HostingProvider). In this way a node links to its host without repeating rack placement properties.

Element types

The layer has 16 element types, in these families: structure (5), service (1), behaviour (1), access (1), information (3), store (1), location (4). Each type's own fields are listed under its definition; the fields common to every element are described under the core concepts.

  • EnvironmentEnvironment · location family

    A named operating environment for deployed software.

    Key attributes: kinddataClassificationregionhorizonProfiledeclaredKindpurpose
  • ClusterCluster · structure family

    A group of runtime resources operated together.

    Key attributes: platformversionregionhorizonProfilekindexternalReferencenodesenvironmentscontrolSoftware
  • NodeNode · structure family

    A runtime execution node, distinct from its physical equipment.

    Key attributes: kindoperatingSystemcpumemoryregionhorizonProfilecomputeKindhostnameexternalReferenceruntimeSoftwarehostedByenvironmentssubnetsphysicalEquipment
  • NamespaceNamespace · structure family

    A logical runtime scope used to organise or isolate workloads and resources.

    Key attributes: regionhorizonProfilekindidentifierclusterenvironmentparentScope
  • WorkloadWorkload · structure family

    A runtime unit of application execution.

    Key attributes: kindreplicascpuLimitmemoryLimitregionhorizonProfileenvironmentinstanceKindexternalRuntimeIdinstantiatesrunsOnscopepersists
  • DeploymentDeployment · behaviour family

    A record of placing a software version into a runtime context.

    Key attributes: deployedOnstrategystatusregionhorizonProfilereleasedefinitionenvironmenttargetdeploymentStrategyinstancesconfigurationsdesiredReplicasobservedReplicasreplicaObservedAtcapturedReleaseId
  • EndpointEndpoint · access family

    An address or access point through which a runtime service is reached.

    Key attributes: addressprotocolexposure
  • NetworkZoneNetwork zone · location family

    A runtime network segment with a defined trust or access boundary.

    Key attributes: trustLevelregionhorizonProfilezoneKindpurposeenvironments
  • NetworkNetwork · location family

    A network that connects runtime resources.

    Key attributes: cidr
  • ManagedServiceManaged service · service family

    A runtime capability operated as a managed service.

    Key attributes: kindtier
  • ConfigurationSetConfiguration set · information family

    A group of configuration values used by a runtime deployment.

    Key attributes: sourceregionhorizonProfileofversionconfigHashdefinition
  • SecretSecret · information family

    A model record describing a sensitive runtime credential or value.

    Key attributes: storerotationPeriod
  • ConfigTableConfig table · information family

    Structured runtime configuration represented as rows and values.

    Key attributes:
  • NetworkDeviceNetwork device · structure family

    A network device represented in the runtime topology.

    Key attributes: regionhorizonProfiledeviceKindimplementationKindexternalReferenceproducthostedByenvironmentszonesphysicalEquipment
  • StorageResourceStorage resource · store family

    A deployed storage resource used by runtime workloads.

    Key attributes: regionhorizonProfilestorageKindresourceIdentifierexternalReferenceenvironmentsallocatedFrom
  • SubnetSubnet · location family

    A network subdivision used to organise runtime addresses.

    Key attributes: regionhorizonProfileprefixzoneroutingDomainvlanIdaddressFamily

In the “Family support benefit” example

Figure 4.7 (page 34) shows the RUN layer in the example. The release “Benefits platform release 1.0”, from DEL, is deployed to the environment “Production environment”. The deployment “Benefits production deployment” records this installation and is deployed to the same environment.

The node “Benefits runtime node” is hosted by the data centre “Primary data centre”, from HST.

In its fields, the deployment names the release, the environment and the node it runs on; these links are not shown in the figure.

Was this page helpful?