Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This guide provides the information for setting up the ELIOT Environment which includes ELIOT Manager and ELIOT Edge Node(s) with details of software and hardware specifications.

For Release-2.0 the scope of the guide covers two ELIOT deployments one is using Kubernetes and the other one using Kubeedge (Lightweight Kubernetes). 

The ELIOT Manager can be any Cloud Virtual Machine having Ubuntu OS 16.04 and should be able to ping and SSH to the Eliot Edge Node.  The ELIOT Edge Node will be a Virtual Machine having Ubuntu 0S 16.04.

For Kubernetes setup Kubeadm tool is being used and for Container Networking Interface Calico plugin is being used.

For KubeEdge the connection between the ELIOT Manager and ELIOT Edge Node is being established via Web Socket. Currently KubeEdge does not support Container Networking Interface.Release-2.0 the modification done in this blueprint is to support ELIOT Cluster on Cent OS 7.5 also in addition to Ubuntu 16.04. Rest of thing remains same as Release 1.0

How to use this document

The document includes details of prerequisites /pre-installation, installation and uninstalls steps.

...

Deployment Architecture

For Release 12.0 the Deployment Architecture consists of two nodes  ELIOT Manager and a single ELIOT Edge Node.

ELIOT Manager acts as the Controller Node managing the ELIOT Edge Node(s) and the containerized containerised applications running on the various ELIOT Edge Nodes.

Note: ELIOT - SD-WAN / WAN Edge / uCPE  Gateway Blueprint Deployment has been tested on Huawei Public Cloud Virtual Machines 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 the Test Document for further details on the tested deployment.

Pre-Installation Requirements

...

Note

Number of Hardware requirements depends mainly on the Use Case Scenario. A use case can have one to multiple ELIOT Edge Nodes

Note: For ELIOT Release 12.0 ELIOT Manager is acting a dual role Jump server (to execute the setup script) and as the Kubernetes Master. Also currently the below hardware capability are mentioned for the Virtual Machines.

ELIOT Manager - One VM - 8 vCPU - 32 GB RAM (can be hosted in any cloud provider) with Ubuntu OS 16.04 or Cent OS 7.5  having internet and network connectivity with ELIOT Edge Node.

ELIOT Edge Node - Ubuntu OS 16.04 / 18.04 or Cent OS 7.X installed with networking capability and internet capability.

...

  • Virtual Machines preinstalled with Ubuntu 16.04
  • root user created in the ELIOT Manager and ELIOT Edge Node
  • SSH Server running in both the Nodes
  • sshpass installed in ELIOT Manager
  • scp installed in ELIOT Manager and ELIOT Edge Node
  • GO Lang installed in ELIOT Manager and ELIOT Edge Node (Note : This is required when we are setting up the ELIOT using KubeEdge.)
  • git should be installed in ELIOT Manager and ELIOT Edge Node.

...

Installation High-Level Overview

In ELIOT Release 12.0 for deployment 2 Ubuntu 16.04 Cent OS  7.5 Virtual Machines are used. (uCPE Deployment also support on Ubuntu - Release 1.0 feature)

The steps includes to setup the following two environments : 

  • ELIOT Deployment using Kubernetes. 
  • ELIOT Deployment using KubeEdge

Bare Metal Deployment Guide

...

Standard Deployment Overview

ELIOT Deployment

...

on OS ( Cent OS)

Clone the ELIOT git repo in ELIOT Manager node. It will create eliot folder, for executing the script go to $HOME/eliot/scripts folder.

...

No Format
root@akraino-slave-001:#git clone "https://gerrit.akraino.org/r/eliot"
root@akraino-slave-001:#cd eliot/blueprints/ucpe/scripts
root@akraino-slave-001:~/eliot/blueprints/ucpe/scripts#vim nodelist

After editing the nodelist file , execute the setup.sh script.  The setup.sh script internally installs Docker and Kubernetes with Calico CNI plugin and RBAC for authorization.

No Format
root@akraino-slave-001:~/eliot/blueprints/ucpe/scripts#./setup.sh

ELIOT

...

Clone the ELIOT git repo in ELIOT Manager node. It will create eliot folder, for executing the script go to $HOME/eliot/scripts/src folder.

Edit the config_kubeedge file with ELIOT Manager and ELIOT Edge Node

The format of config_kubeedge file is as follows :

edgenodeusr=""

edgenodeip=""

edgenodepassword=""

masternodeusr=""

masternodeip=""

masternodepassword=""

No Format
root@akraino-slave-001:#git clone "https://gerrit.akraino.org/r/eliot" 
root@akraino-slave-001:#cd eliot/scripts/ 
root@akraino-slave-001:~/eliot/scripts#vim config_kubeedge
root@akraino-slave-001:~/eliot/scripts#./kubeedge_setup.sh

Snapshot Deployment Overview

There are two images created for Manager and Node machines. These are .qcow2 files. After deploying the VMs using these images, your setup for ELIOT is ready in minutes. Following is the link to the document to use these images:

Manager

S. NoSoftwareTypeVersionLicenseRemarks
1.

Docker

CRI18.06Apache 2.0 license


2.KubernetesOrchestration1.16Apache 2.0 license
3PrometheusMonitoring
Apache 2.0 licenseRunning as Docker Container

ELIOT Edge Node

S. No.SoftwareTypeOSVersionLicenseRemarks
1.DockerCRI18.06Apache 2.0 license
2.KubernetesOrchestration16.0Apache 2.0 licenseWhen Kubernetes is being used for the IoT Gateway Blueprint
3.cAdvisorContainer MetricsLatest Container version in Docker HubApache 2.0 licenseRunning as Docker Container.


Snapshot Deployment Overview

Not Applicable         https://docs.google.com/document/d/1TwtDRvxJ_0IFzc5KvO7aaOh3If-jhpCSrccjttQA4LE/edit?usp=sharing

Special Requirements for Virtual Deployments

N/ANot Applicable

Install Jump Host

N/ANot Applicable

Verifying the Setup - VM's

N/ANot Applicable

Upstream Deployment Guide

Upstream Deployment Key Features

N/ANot Applicable

Special Requirements for Upstream Deployments

N/ANot Applicable

Scenarios and Deploy Settings for Upstream Deployments

N/ANot Applicable

Including Upstream Patches with Deployment

...

Developer  Guide and Troubleshooting

Uninstall Guide

Not Applicable

Troubleshooting

Not Applicable

Error Message Guide

...

Following two files can be used to revert the changes made by ELIOT deployment through kubernetes.

...

Not Applicable

Maintenance

Blueprint Package Maintenance

Software maintenance

N/A

Hardware maintenance

N/A

Blueprint Deployment Maintenance

N/A

Frequently Asked Questions

N/A

License

Any software developed by the "Akraino ELIOT SD-WAN / WAN Edge / uCPE  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>

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

License information of ELIOT SD-WAN / WAN Edge / uCPE Blueprint  Components

ELIOT Manager

S. NoSoftwareTypeLicenseRemarks
1.

Docker

CRIApache 2.0 license


2.KubernetesOrchestrationApache 2.0 license
3PrometheusMonitoringApache 2.0 license

ELIOT Edge Node

S. No.SoftwareTypeLicenseRemarks
1.DockerCRIApache 2.0 license
2.KubernetesOrchestrationApache 2.0 license
3.cAdvisorContainer MetricsApache 2.0 license


References

...

Troubleshooting

N/A

Error Message Guide

N/A

Maintenance

Blueprint Package Maintenance

Software maintenance

N/A

Hardware maintenance

N/A

Blueprint Deployment Maintenance

N/A

...

N/A