...
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 R5 ELIOT R6 - Test Documentation of Edge Lightweight IotGateway (ELIOT)IoT Gateway Test Document to get details on the tested deployment.
...
2. Setup password-less login from ocd to center and ocd to edge.
...
-
- If you get authentication issue you can change the permission
# Open file: vi /etc/ssh/sshd_config
...
- sudo systemctl restart ssh.service # sshpass -
For EdgeGallery AIO mode:
Login from ocd to center and ocd to edge in a single node.
- sshpass -p <password> ssh-copy-id -p <ssh-port> -o StrictHostKeyChecking=no root@<node_
...
- ip>
For EdgeGallery Muno mode:
Login from ocd to center in a controller node
- sshpass -p <password> ssh-copy-id -p <ssh-port> -o StrictHostKeyChecking=no root@<controller-node_ip>
- sshpass -p <password> ssh-copy-id -p <ssh-port> -o StrictHostKeyChecking=no root@<edge-node_ip>
Login from ocd to edge in a edge node
- sshpass -p <password> ssh-copy-id -p <ssh-port> -o StrictHostKeyChecking=no root@<controller-node_ip>
- sshpass -p <password> ssh-copy-id -p <ssh-port> -o StrictHostKeyChecking=no root@<edge-node_ip>
3. These command are require in both AIO and MUNO(Controller and Edge Node ) mode.
cp -p /etc/passwd /etc/passwd.bkp
cp -p /etc/group /etc/group.bkp
id ubuntu
groupmod -g 600 ubuntu
id ubuntu
4. Review and Change Parameters
For EdgeGallery AIO Mode:
...
3. cp -p /etc/passwd /etc/passwd.bkp
cp -p /etc/group /etc/group.bkp
id ubuntu
groupmod -g 600 ubuntu
id ubuntu
4. Review and Change Parameters
For EdgeGallery AIO Mode:
eliot/blueprints/iotgateway/playbooks/hosts-aio
- Here user can use the private IP as af a master IPnode
eliot/blueprints/iotgateway/playbooks/var.yml
- NETWORK_INTERFACE: regex for network interface on the VM. (user can be check ineterrface name by ifconfig and provide inerface name accordingly for example like eth.* )
- MASTER_IP: Here user can use the private IP as of a MASTER_IPnode
- PORTAL_IP: If portal need to be access over internet then uncomment the PORTAL_IP and use public IP as a PORTAL_IP otherwise portal will be accessible only on private IP default.
...
- NETWORK_INTERFACE: regex for network interface on the VM. (user can be check ineterrface name by ifconfig and provide inerface name accordingly for example like eth.* )
- MASTER_IP: Here user can use the private IP as a MASTER_IP 0f a controller node
- PORTAL_IP: If portal need to be access over internet then uncomment the PORTAL_IP and use public IP as a PORTAL_IP otherwise portal will be accessible only on private IP default.
CONTROLLER_MASTER_IP: IP of the Controller master which is used for Edge to connect Uncomment the PORTAL_IP and use private IP of a the Controller node
eliot/blueprints/iotgateway/playbooks/muno-config/edge/hosts-muno-edge
...
- NETWORK_INTERFACE: regex for network interface on the VM. (user can be check ineterrface name by ifconfig and provide inerface name accordingly for example like eth.* )
- MASTER_IP: Here user can use the private IP as a MASTER_IP
- PORTAL_IP: If portal need to be access over internet then uncomment the PORTAL_IP and use public IP as a PORTAL_IP otherwise portal will be accessible only on private IP default.
- of a edge node
- OCD_IP: Here user can use the private IP of a Controller Node which is used for Edge to connectOCD_IP: Here user can use the private IP of a Controller Node
eliot/blueprints/iotgateway/playbooks/password-var.yml
...
- Here user can put the public IP in center, edge, ocdhost node.
Installing Mode : ELIOT using Ansible-Playbooks
...
- Login to the Master Node and check whether K8S cluster is installed.
- Check the below mentioned components and services are running as Pods / Services in Kubernetes cluster
- Edge Gallery
- grafana
- rabbitmq
- cadvisor
- edgex
- Hawkbit
- opc-ua
- Login to Edge Host and verify the worker node setup
For muno mode
Components and Services running in ELIOT Master NodeController node
Components and Services running ELIOT IotGateway/ ELIOT Edge Node
Deploy Application in ELIOT
- Login to MECM Portal https://ip:30093
1.1 click on Systems ->App LCM ->New Registration
Name: Applcm(any general name)
IP: applcm"public ip"
Port: 30204
1.2. Click on Systems ->App Rule -> New Registration
Name: Apprule(any general name)
IP: applcm"public ip"
Port: 30206
1.3. click on Systems ->App Store ->New Registration
App Store Name: appstore(any general name)
IP: Appstore public ip
...
- MECM Portal https://ip:30093
Appstore Repo: {HarborIP:443}(192.168.1.1:443) Repo Name: appstore(any general name) 1.1 click on Systems ->App LCM ->New Registration
Repo Username Name: adminApplcm(harbor user any general name)
Repo Password IP: Harbor12345(harbor password)applcm"public ip"
Vendor Port: vendor(any general name)
30204
2. Login to Developer Portal https://ip:30092 2.1. Add sandbox env to deploy application before publish 1.2. click on Systems ->App Store ->New Registration
Click System ->Host Management ->Add Host
App Store Name: appstore(any general name)
Name: general name IP: Appstore public ip
System: k8s Port: 30099
Lcmip: sandbox ip(for testing purpose can provide edge ip, if no sandbox env) mecHost: sandbox ip(for testing purpose can provide edge ip, if no sandbox env Appstore Repo: {HarborIP:443}(192.168.1.1:443)
Port: 31252 Repo Name: appstore(any general name)
Protocol: https Repo Username: admin(harbor user name)
Architecture: X86 Status: Normal Port Range: leave as it is Repo Password: Harbor12345(harbor password)
Address: Bangalore UploadConfig File: upload sandboxenvkubeconfig file Vendor: vendor(any general name)
2.2 Click on Workspace -> Create Project -> Application Integration -> Start 2. Login to Developer Portal https://ip:30092
- Provide App Name, Version, Provider, Workload Type, Architecture, Industry, Type. 2.1. Add sandbox env to deploy application before publish
- Upload Icon, provide Description. And click on confirm.
2.3. Now click on Deployment Test.
Click System ->Host Management ->Add Host
Name: general name
- Upload Docker images directly from portal by clicking on Upload App Image System: k8s
Or, directly push Docker images to Harbor Lcmip: sandbox ip(for testing purpose can provide edge ip, if no sandbox env)
mecHost: sandbox ip(for testing purpose can provide edge ip, if no sandbox env)
Port: 31252
repo (takes lesser time, preferred) - Click next, upload deployment yaml file now. Protocol: https
Architecture: X86
- After config upload, click next and click start deployment Status: Normal
- After Deployment is success, click on Release Recourses Port Range: leave as it is
Note Address: Bangalore
- While Deployment test if any error happens, open ATP portal ( UploadConfig File: upload sandboxenvkubeconfig file
3. Login to MECM Portal https://ip:30094) in another tab of browser, sing in, come back to developer portal and re run deployment test 30093
3.1. Add k8s node:
Click on Edge Nodes - gitee.com/edgegallery/applications repo provides, A lot of applications with their logo, deployment yaml & user guides
2.4. Now click on Application Release
>New Rgistration
VM: k8s
Upload file for Application Description Name: edge1
Click save config, click Next Step, click Start Test, scroll down to find & click Start Test button, click Next Step, click publish to publish application to appstore.
3. Login to MECM Portal https://ip:30093
IP: edge public ip
3.1. Add k8s node: Location: select from drop down
Click on Edge Nodes ->New Rgistration Address: yanta
VM: k8s Coordinates: 116.39,39.90
Name Architecture: edge1x86
IP: edge public ip Capabilities: select none
Location MEPM: select from drop downapplcm node from dropdown
Address: yanta 3.2. Download /root/.kube/config file from edge node
Coordinates: 116.39,39.90 And click on Upload config file to upload.
4. Demonstration of application Development & Deployment
Architecture: x864.1 Application Development
Capabilities: select none
MEPM: select applcm node from dropdown
link - https://www.youtube.com/watch?v=AjQNG5d3p84&t=23s
3.2. Download /root/.kube/config file from edge node 4.2 Application Deployment
And click on Upload config file to upload.link - https://www.youtube.com/watch?v=PbxKpslVnmc&t=31s
Developer Guide and Troubleshooting
...