The Eclipse Service Lifecycle Management (SLM) application is the latest addition to the Eclipse Digital Twin Top Level Project. It enables users to manage the life cycle of artificial intelligence (AI) services through the three phases of service life in production environments: release, deployment, and operation.
The project is designed to be used by three types of users in the service lifecycle:
- System administrators, who manage the infrastructure and make sure the services are working properly
- Service developers, who create services and provide deployable executables
- Service consumers, who use services provided by a service developer
Manage Infrastructure and Capabilities
System administrators require the ability to manage IT resources such as bare-metal or virtual machines, virtual resource providers, and hypervisors.
Administrators must also be able to roll out basic resource configurations, including monitoring tools and service runtime environments.
Eclipse SLM provides a sandbox for developing and testing the scripts that are used to install, use, and uninstall capabilities. It enables users to provision virtual machines with different operating systems and versions of those operating systems. System administrators can test the functionality of applications without interfering with real-world operations. They can also design applications capable of functioning in heterogeneous IT landscapes. This is crucial, as these landscapes are highly prevalent in factories and production environments.
Creating Services and Publishing Deployable Executables
When system administrators release an application, service developers build on top of its capabilities. To do so, system administrators and service developers must agree on common deployment definition types. For example, whether to use Docker Compose or Kubernetes workload definitions. Applications and services must both support the chosen deployment definition types.
Eclipse SLM allows developers to release a service by publishing it as an Eclipse SLM offering. Service offerings provide basic meta-information about the service and service requirements the offerings have regarding their runtime environment, including access to specific hardware and network connection.
Deploying and Using Executables
Based on the capabilities and the service offerings, service consumers can then use Eclipse SLM to configure their IT resources and deploy service instances in a self-service manner.
For service deployment, Eclipse SLM compares a service offering’s requirements and the capabilities and hardware specifications the consumer’s IT resources provide. After a match-making process, the SLM provides a filtered list of resources on which the service can potentially run. To finish the deployment, the user selects a resource and the SLM will deploy the service.
Eclipse SLM Uses Eclipse BaSyx for Asset Administration Shell Registry
To semantically describe all entities of a service in a consistent way, Eclipse SLM uses Asset Administration Shells (AASs).
AASs provide a digital representation of entities, enabling interoperability in production environments. They can also hold different sub-models that describe specific aspects of an entity. For example, one AAS might provide a sub-model showing almost static information about a PC, such as hardware specifications and operating system, and another sub-model could provide the current load state/metrics of a PC, such as CPU and RAM utilization.
Eclipse SLM uses Eclipse BaSyx to provide an AAS Registry and AAS Server, which host the AAS of entities and their sub-models. SLM also uses AASs to describe Information Technology (IT) and Operation Technology (OT) components in the same way.
FabOS Research Project Was the Birthplace of Eclipse SLM
The development of Eclipse SLM started in the FabOS research project — an initiative funded by the German Federal Ministry of Economic Affairs and Climate Action (BMWK) as part of the 2019 AI innovation competition. The project brought together 22 partners from German industry, research, and academia to provide an architecture and platform that would improve the applicability of AI services in factories.
Commenting on the addition of Eclipse SLM to the Eclipse Digital Twin project, Benjamin Goetz (Fraunhofer IPA), project lead of Eclipse SLM, noted that the team is “proud to contribute Eclipse SLM to the Eclipse Digital Twin/Industrie 4.0 community. We see many benefits in joining forces to create a strong open source ecosystem around the idea of Asset Administration Shells and beyond.”
The FabOS project has received funding from the German Federal Ministry for Economic Affairs and Climate Action (BMWK)'s AI Innovation Competition under grant agreement No. 01MK20010A.
|