5GCity Neutral Hosting Platform - Installation Instructions
Installation requirements and procedures
The 5GCity Scalable Orchestrator software components depend on lower-layer controllers as documented in the WP3 deliverables. As a result, the 5GCity Orchestrator requires:
- OpenStack as the core Virtual Infrastructure Manager (VIM). In case this is not already installed, please follow the official installation instructions for the “Queens” version to install and test it properly. After having installed OpenStack, the Slice Manager needs to be configured in order to use the installed instance(s) by following the Slice Manager documentation.
- An SDN RAN controller, currently using a proprietary implementation of i2CAT, which needs to be installed by following the procedure described at: https://github.com/5GCity/5GCity-infrastructure-abstraction/blob/1.0/RAN-Controller.md.
The installation of the 5GCity Orchestrator requires 7 Virtual Machines (in addition to any VMs used for the VIM and the RAN Controller).
The hardware requirements of each VM and the software modules that will be installed on it are listed in Table 1. Note that the components of VM5 can easily run on separate VMs (following the documentation of the 5GCity platform), but the table intends to reflect the minimal requirements. For example, in our testbed they have been deployed on the same VM in the Lucca infrastructure but on separate VMs in the Barcelona and Bristol infrastructures.
- Install OSM in VM7 by following the instructions at: https://osm.etsi.org/wikipub/index.php/OSM_Release_SIX#Install_OSM_Release_SIX
- NOTE: If you use release 5 (NOT RECOMMENDED), then in order to support the fog05/MEC connector (optional); please build the container images for RO, NBI and Keystone using the (modified) code in the 5GCity-OpenSourceMano GitHub repository (using the RO and NBI branches at: https://github.com/5GCity/5GCity-OpenSourceMano), and then replace the respective containers in the docker stack file of OSM (/etc/osm/docker/docker-compose.yaml) with the ones that you just built.
- Install the MEAO and the MEC-platform on VM6 by running the script:
- For a breakdown, further explanations, and troubleshooting of this script, please refer to: https://github.com/5GCity/5GCity-multi-tier-orchestration/blob/0.2/MEAO.md.
- Install the Slice Manager, the MTO, and the Resource Placement components in VM5 by following the installation instructions that can be found at: https://github.com/5GCity/5GCity-slice-manager/blob/v1.3/doc/deployment/README.md, https://github.com/5GCity/5GCity-multi-tier-orchestration/blob/0.2/README.md, and https://github.com/5GCity/5GCity-resource-placement/blob/1.0/README.md, respectively. Note that these instructions include the configuration of these components to use the previously installed OpenStack, RAN Controller, MEAO, MEC-platform, and OSM.
- Install monitoring in VM4 by following the instructions at: https://github.com/5GCity/5GCity-monitoring/blob/v2.2/README.md
- Install the Infrastructure Abstraction in VM3 by following the installation instructions at XXX. Note that this is not required if all RAN elements are controlled by the i2cat RAN controller.
- Install the SDK in VM2 by following the instructions linked at: https://github.com/5GCity/5GCity-SDK/blob/0.8/README.md.
- Install the Dashboard (which includes the SDK-GUI) and the AAA in VM1 by following the instructions at: https://github.com/5GCity/5GCity-Dashboard-new/blob/1.0/README.md and https://github.com/5GCity/5GCity-AAA/blob/1.0/README.md
A high-level understanding of the usage of the main user-facing components, namely the Dashboard and the SDK, is provided in the Appendices of this document.
Further, each 5GCity Orchestrator component provides its own (REST) API, which can be studied and used in order to exploit the features described in section 2, based on API documentation files (e.g. swagger), mini-tutorials, and README files, as indicated in the following list:
- Slice Manager:
- Swagger documentation of the API is available at port 8989 of VM5 after having installed and started the Slice Manager on this VM.
- Mini tutorial about how to use this API for slice creation and basic testing is included in: https://github.com/5GCity/5GCity-slice-manager/blob/v1.3/README.md
- Links to swagger documentation are provided inside at: https://github.com/5GCity/5GCity-multi-tier-orchestration/0.2/master/README.md
- Implements in a proprietary way the Mm1 interface of the ETSI MEC specification (NOTE: Mm1 interface in our system is the reference point between the MTO and the MEAO, it is used for triggering instantiation and termination of MEC applications and services in the MEC system as well as performing MEC platforms management).
- Implements in a proprietary way the Mp1 and Mm5 interfaces of the ETSI MEC specification (NOTE: Mm5 in our system is the reference point between the MEC platform and the MEAO. It is used for MEC Platform configuration, configuration of applications, DNS rules and services.)
- Resource Placement:
- See overview and API description at: https://github.com/5GCity/5GCity-resource-placement/blob/1.0/README.md
- Swagger documentation is available after having installed and started Resource placement on VM5 at localhost:3800