Skip to main content
Version: Next

For Linux with Edge Conductor On-Premise Server

Table of Contents

  1. Linux Provisioning
  2. Download Edge App Compressed File
  3. Download and Configuration of Edge App Helm Chart
  4. Installation/Update/Deletion of Edge App
  5. Verification and Usage on Edge Conductor
  6. 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