For Linux with Edge Conductor On-Premise Server
Table of Contents
- Linux Provisioning
- Download Edge App Compressed File
- Download and Configuration of Edge App Helm Chart
- Installation/Update/Deletion of Edge App
- Verification and Usage on Edge Conductor
- Cases When Stream Deployment is not working despite installation
1. Linux Provisioning
-
Install Edge App Helm chart
git clone https://github.com/mellerikat/Edge-App.git
-
To use the resources of the Edge App infra, securing a key account is essential (Please inquire about the Key from the cloud administrator)
-
Enter the insecure-ip information in the on-prem-edgecond-ip.yaml file
10.158.2.243:39011
-
Execute linux provisioning shell
./linux_provisioning.sh
-
AWS ECR Login
aws configure set aws_access_key_id {"AWS Access Key"}
aws configure set aws_secret_access_key {"AWS Secret Access Key"}
aws configure set default.region {"region"}
aws ecr get-login-password --region {region}| sudo docker login --username AWS --password-stdin {AWS Account ID}.dkr.ecr.{region}.amazonaws.com
2. Download Edge App Compressed File
- Download the edgeapp.tar file
- The tar file contains four container images: controller, iomanager, redis, and viewer
edgeapp.tar
- Unpack the tar file, extract each tar file, and load them
docker load -i edgeapp.tar
3. Download and Configuration of Edge App Helm Chart
-
First-time configuration of Edge App environment
helm install init ./setup-package/edgeapp-setup-[--version].tgz -f [namespace_setting_file] -n {namespace}
(example)
helm install init ./setup-package/edgeapp-setup-1.0.0.tgz -f example/linux-setup-for-each-namespace.yaml -n edge-app
-
Select and modify one example file suitable for the environment and add it after the -f option
- example/linux-setup-for-each-namespace.yaml
-
Configuration file for setting the environment in which Edge App operates (linux example)
global:
is_linux: True
env:
namespace: default
serviceaccount: edge-app
pv:
pv_enable: True
4. Installation/Update/Deletion of Edge App
-
1. Installation and Update of Edge App
source ./linux-install.sh [edgeapp name] ./edgeapp-package/edgeapp-manifest-[--version].tgz example/linux-edgeapp.yaml -n {namespace}
(example)
helm install edgeapp ./edgeapp-package/edgeapp-manifest-3.7.0.tgz -f example/linux-edgeapp.yaml -n default
-
Select and modify one example file suitable for the environment and add it after the -f option
- example/linux-onpremise-edgeapp.yaml
-
Configuration file storing user/infrastructure information of Edge App
# linux-onpremise-edgeapp.yaml -> on-premise edgeconductor
env:
type: linux
cluster: k3s
controller_image_address: controller:3.7.0
iomanager_image_address: iomanager:3.7.0
redis_image_address: redis:v7.2.3
namespace: default
serviceaccount: edge-app
pv:
pv_enable: True
conductor:
host: 10.158.2.243
http_protocol: http
port: 39008
wsprotocol: ws
insecure_ip: 10.158.2.243:39011
appinfo:
data_input_path: linux_test/input
data_output_path: linux_test/output
data_input_policy: copy #'move','copy'
data_save_policy: add_utc #'overwrite','add_utc','add_date'
enable_result_to_edgecond: True
Note: linux-edgeapp-test
mount_path: /home -
-
2. Delete Edge App
helm uninstall [edgeapp name]
(example)
helm uninstall example1
helm uninstall example2 -
3. Delete Alo
kubectl delete pod [alo pod name] -n {namespace}
5. Verification and Usage on On-Premise Edge Conductor
- Verify if the edge installed by the user is visible on the Edge Conductor
- ex) {edgetest} -> {serial-number}{edgetest}
6. Cases When Stream Deployment is not working despite installation
- Open daemon.json file
sudo vi /etc/docker/daemon.json
- Modify daemon.json file (enter and save the contents below)
{
"insecure-registries": [
"10.158.2.243:39011"
]
}
- Restart docker daemon
sudo systemctl restart docker