Introduction
...
Introduction
The guide covers the installation details which are related to ELIOT Iot Gateway Blueprint.
...
Note: For Development environment two nodes is sufficient, where one node plays a dual role of One-Click Deployment Node and Master Node with other as IotGateway Node.
Figure: ELIOT Deployment Architecture
Note: ELIOT IotGateway Blueprint Deployment has been tested on Cloud VM and is not tested on Bare-Metal Environment. Though, theoretically deployment should work in bare metal, provided hardware and software prerequisites are met. Kindly refer R4 - Test Documentation of Edge Lightweight IotGateway (ELIOT) to get details on the tested deployment.
...
No | Usage |
---|---|
1 | One Click Deployment Node |
2 | ELIOT Master Node |
3 | IotGateway Node |
All the nodes should have internet connectivity , network interface and network connectivity between the VM's.
In this release to install the ELIOT environment.
i) ELIOT Deployment using Ansible-Playbook single command
Standard Deployment Overview
Jump Host Software Installations:
Login to the Jump Host and perform the below steps:
- Install Ansible > 2.9.6 [ https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html]
- Install git
- Install GoLang > 1.14+
- Git clone the Kubespray repo. [https://github.com/kubernetes-sigs/kubespray.git]
- Install python3 and pip3
- cd kubespray && pip install -r requirements.txt
...
IotGateway Node |
All the nodes should have internet connectivity , network interface and network connectivity between the VM's.
In this release to install the ELIOT environment.
i) ELIOT Deployment using Ansible-Playbook single command
Standard Deployment Overview
Jump Host Software Installations:
Login to the Jump Host and perform the below configuration steps (Steps : as below-
1. Generate public key : #ssh-keygen
2. Copy the ssh key to all the nodes in the MECM Cluster, using ssh-copy-id. (example : #ssh-copy-id root@159.178.17.16)
3. Kubespray configuration
cd kubespray && cp -rfp inventory/sample inventory/mycluster
Update ansible inventory file provided in kubesrpay repo with MECM Cluster node IP's
Example:
declare -a IPS=(158.176.15.55 158.176.15.56 158.176.15.57)
CONFIG_FILE=inventory/mycluster/hosts.yaml python3 contrib/inventory_builder/inventory.py ${IPS[@]}steps:
- Install Ansible > 2.9.6 [ https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html]
- Install git
- Install GoLang > 1.14+
- Git clone the Kubespray repo. [https://github.com/kubernetes-sigs/kubespray.git]
- Install python3 and pip3
- cd kubespray && pip install -r requirements.txt
Jump Host Pre-Configurations for MECM Components Installation
Login to the Jump Host and perform the below configuration steps (Steps : as below-
1. Generate public key : #ssh-keygen
2. Copy the ssh key to all the nodes in the MECM Cluster, using ssh-copy-id. (example : #ssh-copy-id root@159.178.17.16)
3. Kubespray configuration
cd kubespray && cp -rfp inventory/sample inventory/mycluster
Update ansible inventory file provided in kubesrpay repo with MECM Cluster node IP's
4. Review and Change Parameters under inventory/mycluster/group_vars
...
5. Alter the config.yml and change parameters under path NEED TO BE PROVIDED eliot/blueprints/iotgateway/playbooks/config.yml
Installing Mode : ELIOT using Ansible-Playbooks
1. git clone the ealt-edge repoeliot repo, to download the software to install the ELIOT Environment.
...
Once the execution is completed in console will see prompt "ELIOTEdge Environment Installed , Components Install ELIOT Master and EDGE Nodes Successfully"
...
Components and Services running in ELIOT Master Node (Need to be updated)
Components and Services running ELIOT IotGateway/ Edge Node (Need to be updated)
Developer Guide and Troubleshooting
...
Any software developed by the "Akraino Enterprise Applications on Lightweight 5G Telco Edge Project is ELIOT is licensed under the
Apache License, Version 2.0 (the "License");
you may not use the content of this software bundle except in compliance with the License.
You may obtain a copy of the License at <https://www.apache.org/licenses/LICENSE-2.0>
...
S. No | Software | Type | Version | License | Remarks |
1. | Kubespray | K8S Tool | 2.14.132 | Apache 2.0 license | No code modifications done |
2. | Helm | Application Package Manager | 3.0.2 | Apache 2.0 license | No code modifications done |
ELIOT Master Node
Center Node consists of 3 components . MECM , Appstore and Developer Portal.
Refer:
MECM Edge Gallery http://docs.edgegallery.org/zh_CN/latest/Projects/MECM/MECM.html#
S. No | Software | Type | Version | License | Remarks |
1. | Docker | CRI | 19.03+ | Apache 2.0 license | No code modifications done |
2. | Kubernetes | Orchestration | 1v1.1917.32 | Apache 2.0 license | No code modifications done |
3. | Helm | Application Package Manager | 3.0.2 | Apache 2.0 license | No code modifications done |
4. | Grafana | Monitoring MEC-Graphana | 8-7.661.01 | Apache 2.0 license | Code part of Edge Gallery |
5. | Calico | CNI Plugin | 3.16.5 | Apache 2.0 license | No code modifications done |
6. | PostgresSQL | MECM-Service | 12.3 | PostgreSQL License | Code part of Edge Gallery |
7. | AppLCM | MECM-Service | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
8. | Appo | MECM-Service (MECM-Appo) | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
9 | Inventory | MECM-Service | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
10 | Apm | MECM-Service | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
11 | User Management | Part of Center Node | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
12 | MECM - FrontEnd | MECM-Service | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
13. | Appstore | Service (Part of Center Node) | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
14. | Developer Portal | Service (Part of Center Node) | 0.9 | Apache 2.0 license | Code part of Edge Gallery |
15 | Service Center | Service (Part of Center Node) | 0.9 | Apache 2.0 license | Code part of Edge GalleryGallery |
16 | Hawkbit | Kubernetes Pod | latest container 0.3.0M6 | Apache 2.0 license |
EDGE / IotGateway Node
S. No | Software | Type | Version | License Information | Remarks | ||||||
1. | Docker | CRI | 19.03+ | Apache 2.0 license | No code modifications done | ||||||
2. | K3S | Orchestration | 1.19.4+ | Apache 2.0 license | No code modifications done | ||||||
3. | Helm | Application Package Manager | 3.0.2 | Apache 2.0 license | No code modifications done | ||||||
4. | cAdvisor | Container Metrics | v0v0.36.0 | Apache 2.0 license | No code modifications done | ||||||
5 | RabbitMQ | Message Broker | 3.7 | Mozilla Public License | No code modifications done. RabbitMQ image is deployed as is. | ||||||
6 | Prometheus | Metrics Collector | 9.3.1 | Apache 2.0 license | Code part of Edge Gallery | ||||||
7 | mepm-postgres | Service Database | 912.63 | PostgreSQL License | Code part of Edge Gallery | ||||||
8 | MEP | Pod | 0.9 | Apache 2.0 license | Code part of Edge Gallery | ||||||
9 | MECM-MEPM | MEPM-Service | 0.9 | Apache 2.0 license | Code part of Edge Gallery | ||||||
10 | OPC-UA | IoT Protocol | Geneva | Apache 2.0 license | Upstream | ||||||
11 | EdgeX | Services | Edinburgh | Apache 2.0 license | Upstream | 12 | Hawkbit | Pod | 0.3.0M6 | Apache 2.0 license | Upstream |
References
Definitions, acronyms and abbreviations
...