Introduction
An application that is managed by the Availability Management Framework to provide high levels of service availability must be structured into logical entities according to the model expected by the Framework. This article delves into the key logical entities and their attributes.
What are the Safplus logical entities?
The Service Availability Forum Application Interface Specification (AIS) document defines several logical entities that are part of an abstract system model used to represent resources under the control of the Availability Management Framework. These logical entities, which are identified by unique names, their attributes, relationships, and mappings to the resources they represent, are typically preconfigured and stored in a configuration repository.
Here’s an overview of the key logical entities:
- Cluster and Nodes:
- Node:
An Availability Management Framework node is the logical representation of a physical node that has been administratively configured in the Availability Management Framework configuration. Node is also a logical entity whose various states are managed by the Availability Management Framework. There are Availability Management Framework administrative operations that are defined for such nodes.
- Cluster:
The complete set of Availability Management Framework nodes in the Availability Management Framework configuration defines the Availability Management Framework cluster.
- Component:
A component is a logical entity that represents a set of resources in the Availability Management Framework. The resources represented by the component encapsulate specific application functionality. This set can include hardware resources, software resources, or a combination of the two.
It is the smallest logical entity on which AMF performs error detection, isolation, recovery, and repair. A component is a single process or multiple processes that AMF manages based on its configured attributes. A component is further classified depending on whether it is an SA-aware or a non SA-aware, whether it is pre-instantiable or not, and whether it is a proxy for other components or can be proxied by other components.
It is the smallest logical entity on which AMF performs error detection, isolation, recovery, and repair. A component is a single process or multiple processes that AMF manages based on its configured attributes. A component is further classified depending on whether it is an SA-aware or a non SA-aware, whether it is pre-instantiable or not, and whether it is a proxy for other components or can be proxied by other components.
- Component Service Instance:
A component service instance (CSI) represents the workload that the Availability Management Framework can dynamically assign to a component. High availability (HA) states are assigned to a component on behalf of its component service instances.
Each component service instance has a set of attributes (name/value pair), which characterize the workload assigned to the component. These attributes are not used by the Availability Management Framework, and are just passed to the components.
- Service Unit:
A service unit (SU) is a logical entity that aggregates a set of components combining their individual functionalities to provide a higher level of service. Aggregating components into a logical entity managed by the Availability Management Framework as a single unit provides system administrators with a simplified, coarser grained view. Administrative operations are directed at service units as opposed to individual components.
A service unit can contain any number of components, but a given component can be configured in only one service unit. The components that constitute a service unit can be developed in isolation, and a component developer might be unaware of which components constitute a service unit. The service units are defined at deployment time.
As a component is always enclosed in a service unit, from the Availability Management Framework’s perspective, the service unit is the unit of redundancy in the sense that it is the smallest logical entity that can be instantiated in a redundant manner (that is, more than once).
- Service Instances:
In the same way as components are aggregated into service units, the Availability Management Framework supports the aggregation of component service instances into a logical entity called a service instance (SI). A service instance aggregates all component service instances to be assigned to the individual components of the service unit in order for the service unit to provide a particular service. A service instance represents a single workload assigned to the entire service unit.
When a service unit is available to provide service (in-service readiness state), the Availability Management Framework can assign HA states to the service unit for one or more service instances. When a service unit becomes unavailable to provide service (out-of-service readiness state), the Availability Management Framework removes all service instances from the service unit. A service unit might be available to provide service but not have any assigned service instance.
The Availability Management Framework assigns a service instance to a service unit programmatically by assigning each individual component service instance of the service instance to a specific component within the service unit.
The number of component service instances aggregated in a service instance may differ from the number of components aggregated in the service unit the service instance is assigned. In such cases, some components may be left without any component service instance assignment while other components may have several component service instances assigned to them.
- Service Group:
To ensure service availability in case of component failures, the Availability Management Framework manages redundant service units. A service group (SG) is a logical entity that groups one or more service units in order to provide service availability for a particular set of service instances. Any service unit of the service group must be able to take an assignment for any service instance of this set. Furthermore, to participate in a service group, all components in the service unit must support the capabilities required for the redundancy model defined for the service group.
Relationships within AMF

This diagram illustrates how different logical entities interact to ensure service management and high availability within a distributed system.
Clusters serve as the logical grouping for system components and services. Each cluster contains one or more nodes. Nodes contain Service Units (SUs). SU is an aggregation of one or more components that are managed together to provide a service. SG is a collection of service units (SUs) of the same type that collectively provide service availability for one or more service instances. SI is an aggregation of various CSIs that can be assigned to the components in the SU.
Conclusion
The logical entities defined by the AIS document are central to the Availability Management Framework’s operation. By understanding these entities and their attributes, system architects and engineers can design resilient and efficient systems that meet the demands of high-availability applications.
Other support, please send email to support@openclovis.org.
