User Guide 101
This is the starting point of the EFPF Ecosystem User Documentation. This guide is designed to provide a general overview of the different aspects of the EFPF Ecosystem. This page serves as an entrypoint to most users.
As a new user, you might have some doubts about how to use or where to access certain components of the EFPF Ecosystem. This guide tries to fill that gap and offers a step-by-step procedure to get you ready.
Whenever you feel lost and cannot find information about any component, come back to this page and you will probably find your answer.
What is the EFPF Ecosystem?
EFPF (European Factory Platform) is a federated smart factory ecosystem that interlinks different stakeholders of the digital manufacturing domain. The EFPF Ecosystem offers the support to allow different stakeholders to share platforms, tools and services among each others. Using the EFPF Ecosystem, someone can provide their platform/tool/service, which in turn can be searched and consumed by others. The means of communication between the different stakeholders is covered by different components and tools inside the EFPF Ecosystem.
Architecture of the EFPF Ecosystem
An overview of the architecture of the EFPF Ecosystem is presented in the following image, followed by a short description of the main components with a link to the full description.
Data Spine: This is the central component of the EFPF Ecosystem. It allows to connect services and users, and enables to access tools and services from different platforms with a single set of credentials. It includes subcomponents for:
- Security & Single Sign-On (SSO): EFPF Security Portal (EFS / EFS Keycloak) & API Security Gateway (ASG / DS APISIX)
- Service Registration & Discovery: Service Registry (SR)
- Message Brokering: Message Bus (MB / DS RabbitMQ)
- Interoperability, Dataflow Management & Service Composition: Integration Flow Engine (IFE / DS NiFi) tool to easily integrate the existing services using a drag-and-drop style GUI to create composite applications.
The Data Spine is a cloud-native component that runs on the EFPF Servers. Further information on deployment environments, connection details and the support team can be found here.
Factory Connectors / IoT Gateways: These are the software components that run on premises, collect data and send it to the Data Spine.
EFPF platform: Provides innovative tools and services from Industry4.0, IoT, AI, Big Data and Digital Manufacturing domains. A list of all available services can be found here.
Base platforms: The platforms from the EU Collaborative Manufacturing and Logistic Cluster (FoF-11-2016) that were initially interlinked with the EFPF Ecosystem. The base platforms provide their own set of tools and services which can be accessed with the EFPF user credentials.
3rd Party platforms: Similar to the base platforms, but this refers to the platforms that are integrated to the EFPF Ecosystem by external stakeholders.
EFPF Portal: The single point of entry for the EFPF Ecosystem. It allows the users to access connected tools, services, platforms and marketplaces through a unified graphical user interface. The GUIs of many tools and services in the EFPF Ecosystem are already integrated with the EFPF Portal and can be accessed directly through the Portal.
Integrated Marketplace: Marketplace where you can find all products and services available from the EFPF platform, base platforms and 3rd party platforms.
Matchmaking: The matchmaking service facilitates EFPF users to find the best suited suppliers from across different platforms and enables them to transact with them efficiently and effectively.
How to use the EFPF Ecosystem
Depending on the type of user you are, you will need to perform certain steps. If you are just curious and want to see the possibilities the EFPF Ecosystem offers, you are good to go and you can visit the documentation of the different components.
If you want to be involved in the EFPF Ecosystem, there are different roles you might take. A link to each specific documentation is presented below, but in any case you will need to setup an account. The procedure for this is the same for all users, and you can find it at the end of the page.
Structure of the User Guide 101s (Open the image in new tab for clickable links)
Tool/Service Providers: If you have a service or tool that you want to provide as a part of the EFPF Ecosystem so others can consume it, you should follow the documentation here.
Tool/Service Consumers: If you want to consume an existing tool or service in the EFPF Ecosystem, you should follow the documentation here.
Composite Application Developers: If you want to consume the existing tools or services in the EFPF Ecosystem and create an application that works on the consumed information, you should follow the documentation here.
Platform Providers: If you have a platform which offers a set of tools and services and want to integrate it with the EFPF Ecosystem, you should follow the documentation here.
Setting up your account
Register to the EFPF Portal to get an EFPF user account: This is the point of entry for the EFPF Ecosystem where you will find a dashboard with a brief overview of the tools, services and platforms in the ecosystem. On the top right section, you will find the Register button. Follow the usual procedure to create your account.
Wait: this is an easy step. You need to wait for your account to be activated. You will receive an email when this happens.
Access your dashboard: Once your account is activated, you will be able to access your dashboard. Go again to the same page as before and look for the Login button. Enter your credentials and access your dashboard. It is recommended to have a quick look at the information available there.
Deployment Environments: The environment you will be working on depends on the type of user you are: Tool/Service Consumer, Composite Application Developer, Platform Provider or Tool/Service Provider. The environments are disjoint, i.e., the user credentials from one environment cannot be used to access the services in another environment. The deployment environments are introduced below with a short description of their relevance for different user types.
Note: The Open Call Participants will only need to use the Production environment. The Development and the Testing environments will be used only by the EFPF Ecosystem Administrators. The connection details for the the Production environment will soon be made available on the Connection Details page.
Production (Prod) environment: The Prod environment is the most stable, available, and reliable environment that is used by all types of users in the EFPF Ecosystem. The Prod environment uses Ansible playbooks and Gitlab CI/CD infrastructure for enabling automated deployments and Docker Swarm for container orchestration.
Testing (Test) environment: The Test environment is a replica of the Prod environment when it comes to setup and configuration. It is currently used only by the EFPF Ecosystem Administrators for upgrading the Ecosystem Enablers. The Test environment uses Ansible playbooks and Gitlab CI/CD infrastructure for enabling automated deployments. It acts as a “staging area” before “promoting” the components to the Prod environment. The functional quality and correctness of integration is validated using automated integration and system tests. In addition, scalability is assured using automated performance tests.
Development (Dev) environment: The Dev environment is used exclusively by the EFPF Ecosystem Administrators for major enhancements to the Ecosystem Enablers.
Data Spine Documentation
DS Documentation Structure (Open the image in new tab for clickable links)