Versions Compared

Key

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

...

This guide provides instructions for installing and configuring the Smart Data Transaction for CPS blueprint, and also includes recommended hardware and software requirements for the blueprint. The guide describes a minimal installation of the blueprint consisting of a single "master" node and two "edge" nodes, with directions on how the number of nodes can be modified as needed.

How to Use This Document

This document assumes the reader is familiar with basic UNIX command line utilities and Kubernetes. Familiarity with Ansible and Docker may also be useful.

Start by reviewing the deployment architecture and requirements in the following sections, then follow the steps in the Installation section to set up the software and start it running. Confirm the services are functioning as expected by following the instructions in the Verifying the Setup section. The later sections in this document 

Deployment Architecture

Pre-Installation Requirements

Hardware Requirements

Network Requirements

Software Prerequisites

Installation

...

Creating the Settings Files

Installation

Setting Up the Deploy Node

Preparing the Master Node

Creating the Docker Registry

Preparing Edge Nodes

Starting the Cluster

Adding Edge Nodes to the Cluster

Starting EdgeX

...

Verifying the Setup

as defined the Akraino validation feature project plus any additional testing specific to the blue print

Developer Guide and Troubleshooting

    • Utilization of Images

    • Post-deployment Configuration

    • Debugging Failures

    • Reporting a Bug

Uninstall Guide

Troubleshooting

Maintenance

...

Blue Print Package Maintenance

  • Software maintenance
  • Hardware maintenance

Developer Guide and Troubleshooting

Changing Configuration

Debugging Failures

Reporting a Bug

Uninstall Guide

Stopping EdgeX

Removing Edge Nodes

Stopping Kubernetes

Stopping the Docker Registry

Uninstalling Software Components

Removing Configuration and Temporary Data

Troubleshooting

Confirming Node and Service Status

Accessing Logs

Maintenance

Accessing EdgeX Service Configuration

Stopping and Restarting EdgeX Services

Stopping and Restarting the Kubernetes Cluster

Adding and Removing Edge Nodes

Updating the Software

Rebuilding Custom Services

...

License

The software provided as part of the Smart Data Transaction for CPS blueprint is licensed under the Apache License, Version 2.0 (the "License");

...

The synchronization application is linked with the following packages when compiled:

PackageLicense TypeLicense URL
github
bitbucket.
com
org/
hashicorp
bertimus9/
go-hclog
systemstatMIThttps://
github
bitbucket.
com
org/
hashicorp
bertimus9/
go-hclog
systemstat/
blob
src/master/LICENSE
github.com/
mattn
armon/go-
colorable
metricsMIThttps://github.com/
mattn
armon/go-
colorable
metrics/blob/master/LICENSE
github.com/
mattn
cenkalti/
go-isatty
backoffMIThttps://github.com/
mattn
cenkalti/
go-isatty
backoff/blob/master/LICENSE
github.com/
hashicorp/golang-lru/simplelruMPL-2.0
diegoholiveira/jsonlogicMIThttps://github.com/
hashicorp
diegoholiveira/
golang-lru
jsonlogic/blob/master
/simplelru
/LICENSE
github.com/
mitchellh/consulstructureMIT
eclipse/paho.mqtt.golangBSD-3-Clausehttps://github.com/
mitchellh/consulstructure
eclipse/paho.mqtt.golang/blob/master/LICENSE
bitbucket
github.
org/bertimus9/systemstatMIT
com/edgexfoundry/app-functions-sdk-go/v2Apache-2.0https://
bitbucket
github.
org/bertimus9/systemstat/src/master
com/edgexfoundry/app-functions-sdk-go/blob/master/v2/LICENSE
github.com
/diegoholiveira/jsonlogic
/edgexfoundry/app-functions-sdk-go/v2/internal/etmMIThttps://github.com/
diegoholiveira/jsonlogic
edgexfoundry/app-functions-sdk-go/blob/master/v2/internal/etm/LICENSE
github.com
/google/uuidBSD-3-Clause
/edgexfoundry/go-mod-bootstrap/v2Apache-2.0https://github.com/
google/uuid
edgexfoundry/go-mod-bootstrap/blob/master/v2/LICENSE
github.com/edgexfoundry/go-mod-configuration/v2Apache-2.0https://github.com/edgexfoundry/go-mod-configuration/blob/master/v2/LICENSE
github.com/
hashicorp
edgexfoundry/go-mod-
immutable
core-
radix
contracts/v2
MPL
Apache-2.0https://github.com/
hashicorp
edgexfoundry/go-mod-
immutable
core-
radix
contracts/blob/master/v2/LICENSE
github.com
/mitchellh/reflectwalkMIT
/edgexfoundry/go-mod-messaging/v2Apache-2.0https://github.com/
mitchellh/reflectwalk
edgexfoundry/go-mod-messaging/blob/master/v2/LICENSE
github.com/edgexfoundry/go-
playground/universal-translatorMIT
mod-registry/v2Apache-2.0https://github.com/edgexfoundry/go-
playground/universal
mod-
translator
registry/blob/master/v2/LICENSE
github.com
/x448/float16MIT
/edgexfoundry/go-mod-secrets/v2Apache-2.0https://github.com/
x448/float16
edgexfoundry/go-mod-secrets/blob/master/v2/LICENSE
github.com/
hashicorp
fatih/
errwrapMPL-2.0
colorMIThttps://github.com/
hashicorp
fatih/
errwrap
color/blob/master/LICENSE.md
github.com/fxamacker/
gomodule
cbor/
redigoApache-2.0
v2MIThttps://github.com/
gomodule
fxamacker/
redigo
cbor/blob/master/v2/LICENSE
github.com/go-kit/
mitchellh
kit/
copystructure
logMIThttps://github.com/
mitchellh
go-kit/
copystructure
kit/blob/master/log/LICENSE
github.com/
fxamacker/cbor/v2
go-logfmt/logfmtMIThttps://github.com/
fxamacker
go-logfmt/
cbor
logfmt/blob/master
/v2
/LICENSE
github.com/
go-kit/kit/log
gomodule/redigoApache-2.0
MIT
https://github.com/
go-kit
gomodule/
kit
redigo/blob/master
/log
/LICENSE
github.com/
go-logfmt
google/
logfmtMIT
uuidBSD-3-Clausehttps://github.com/
go-logfmt
google/
logfmt
uuid/blob/master/LICENSE
github.com/
pelletier/
go-
tomlApache-2.0
playground/localesMIThttps://github.com
/pelletier
/go-
toml
playground/locales/blob/master/LICENSE
github.com/
hashicorp
go-playground/
go
universal-
cleanhttpMPL-2.0
translatorMIThttps://github.com
/hashicorp
/go-playground/universal-
cleanhttp
translator/blob/master/LICENSE
github.com/go-playground/
fatih
validator/
color
v10MIThttps://github.com/
fatih
go-playground/
color
validator/blob/master/v10/LICENSE
.md
github.com/
hashicorp/
go-
rootcertsMPL
redis/redis/v7BSD-2
.0
-Clausehttps://github.com
/hashicorp
/go-
rootcerts
redis/redis/blob/master/v7/LICENSE
github.com/
eclipse/paho.mqtt.golang
gorilla/muxBSD-3-Clausehttps://github.com/
eclipse/paho.mqtt.golang
gorilla/mux/blob/master/LICENSE
golang
github.
org
com/
x
gorilla/
crypto/sha3
websocketBSD-
3
2-Clausehttps://
pkg.go.dev/golang.org/x/crypto/sha3?tab=licenses
github.com/gorilla/websocket/blob/master/LICENSE
github.com/hashicorp/
pebbe
consul/
zmq4
api
BSD
MPL-2
-Clause
.0https://github.com/
pebbe
hashicorp/
zmq4
consul/blob/master/api/LICENSE
.txt
github.
com/edgexfoundry/go-mod-core-contracts/v2
com/hashicorp/errwrapMPL
Apache
-2.0https://github.com/
edgexfoundry/go-mod-core-contracts
hashicorp/errwrap/blob/master
/v2
/LICENSE
github.com/hashicorp/go-
playground/localesMIT
cleanhttpMPL-2.0https://github.com/hashicorp/go-
playground/locales
cleanhttp/blob/master/LICENSE
github.com/
leodido
hashicorp/go-
urn
hclogMIThttps://github.com/
leodido
hashicorp/go-
urn
hclog/blob/master/LICENSE
github.com/
edgexfoundry
hashicorp/go-
mod
immutable-
bootstrap/v2
radix
Apache
MPL-2.0https://github.com/
edgexfoundry
hashicorp/go-
mod
immutable-
bootstrap
radix/blob/master
/v2
/LICENSE
github.com/hashicorp/
serf
golang-lru/
coordinate
simplelruMPL-2.0https://github.com/hashicorp/
serf
golang-lru/blob/master/
coordinate
simplelru/LICENSE
github.com/
mitchellh
hashicorp/
mapstructureMIT
go-multierrorMPL-2.0https://github.com/
mitchellh
hashicorp/
mapstructure
go-multierror/blob/master/LICENSE
github.com/
gorilla
hashicorp/
websocket
go-rootcerts
BSD
MPL-2
-Clause
.0https://github.com/
gorilla
hashicorp/
websocket
go-rootcerts/blob/master/LICENSE
github
.com/edgexfoundry/app-functions-sdk-go/v2/internal/etm
.com/hashicorp/serf/coordinateMPL-2.0
MIT
https://github.com/
edgexfoundry/app-functions-sdk-go
hashicorp/serf/blob/master/
v2/internal/etm
coordinate/LICENSE
github.com/
edgexfoundry
leodido/
app-functions-sdk-go/v2
go-urnMIT
Apache-2.0
https://github.com/
edgexfoundry
leodido/
app-functions-sdk-go
go-urn/blob/master
/v2
/LICENSE
github.com/
edgexfoundry
mattn/go-
mod-secrets/v2
colorableMIT
Apache-2.0
https://github.com/
edgexfoundry
mattn/go-
mod-secrets
colorable/blob/master
/v2
/LICENSE
github.com/
hashicorp/consul/apiMPL-2.0
mattn/go-isattyMIThttps://github.com/
hashicorp
mattn/
consul
go-isatty/blob/master
/api
/LICENSE
golang
github.
org
com/
x
mitchellh/
sysBSD-3-Clause
consulstructureMIThttps://
pkg.go.dev/golang.org/x/sys?tab=licenses
github.com/mitchellh/consulstructure/blob/master/LICENSE
github.com/
cenkalti
mitchellh/
backoff
copystructureMIThttps://github.com/
cenkalti
mitchellh/
backoff
copystructure/blob/master/LICENSE
github.com/
gorilla
mitchellh/
muxBSD-3-Clause
mapstructureMIThttps://github.com/
gorilla
mitchellh/
mux
mapstructure/blob/master/LICENSE
github.com/
go-redis/redis/v7
mitchellh/reflectwalkMIT
BSD-2-Clause
https://github.com/
go-redis
mitchellh/
redis
reflectwalk/blob/master
/v7
/LICENSE
github.com/
go-playground/validator/v10
pebbe/zmq4BSD-2-Clause
MIT
https://github.com/
go-playground
pebbe/
validator
zmq4/blob/master
/v10
/LICENSE.txt
golang
github.
org
com/
x
pelletier/
text
go-toml
BSD-3-Clause
Apache-2.0https://
pkg
github.
go.dev/golang.org/x/text?tab=licenses
com/pelletier/go-toml/blob/master/LICENSE
github.com/
armon
x448/
go-metrics
float16MIThttps://github.com/
armon
x448/
go-metrics
float16/blob/master/LICENSE
github
golang.
com
org/
edgexfoundry/go-mod-registry/v2
x/crypto/sha3BSD-3-Clause
Apache-2.0
https://
github
pkg.go.
com
dev/
edgexfoundry/go-mod-registry/blob/master/v2/LICENSE
golang.org/x/crypto/sha3?tab=licenses
golang.org/x/netBSD-3-Clause
github.com/hashicorp/go-multierrorMPL-2.0
https://
github
pkg.
com/hashicorp/go-multierror/blob/master/LICENSEgithub.com/edgexfoundry/go-mod-messaging/v2
go.dev/golang.org/x/net?tab=licenses
golang.org/x/sysBSD-3-Clause
Apache-2.0
https://
github
pkg.
com/edgexfoundry/go-mod-messaging/blob/master/v2/LICENSE
go.dev/golang.org/x/sys?tab=licenses
golang.org/x/
net
textBSD-3-Clausehttps://pkg.go.dev/golang.org/x/
net
text?tab=licenses

LoRa Device Service

The LoRa device service is linked with the following packages when compiled:

PackageLicense Type
License URL
bitbucket.org/bertimus9/systemstatMIThttps://bitbucket.org/bertimus9/systemstat/src/master/LICENSE
License URL
github.com/
hashicorp
armon/
golang
go-
lru/simplelruMPL-2.0
metricsMIThttps://github.com/
hashicorp
armon/
golang
go-
lru
metrics/blob/master
/simplelru
/LICENSE
github.com/
hashicorp
cenkalti/
errwrapMPL-2.0
backoffMIThttps://github.com/
hashicorp
cenkalti/
errwrap
backoff/blob/master/LICENSE
golang
github.
org
com/
x/text
eclipse/paho.mqtt.golangBSD-3-Clausehttps://
pkg.go.dev/golang.org/x/text?tab=licenses
github.com/eclipse/paho.mqtt.golang/blob/master/LICENSE
github.com/edgexfoundry/
go
device-
mod
sdk-
secrets
go/v2Apache-2.0https://github.com/edgexfoundry/
go
device-
mod
sdk-
secrets
go/blob/master/v2/LICENSE
github.com/
gorilla
edgexfoundry/
websocketBSD
go-
2-Clausehttps://github.com/gorilla/websocket/blob/master/LICENSE
mod-bootstrap/v2Apache-2.0
github.com/armon/go-metricsMIT
https://github.com/
armon
edgexfoundry/go-mod-
metrics
bootstrap/blob/master/v2/LICENSE
github.com/
hashicorp/serf/coordinateMPL
edgexfoundry/go-mod-configuration/v2Apache-2.0https://github.com/
hashicorp/serf
edgexfoundry/go-mod-configuration/blob/master/
coordinate
v2/LICENSE
github.com
/tarm/serialBSD-3-Clause
/edgexfoundry/go-mod-core-contracts/v2Apache-2.0https://github.com/
tarm/serial
edgexfoundry/go-mod-core-contracts/blob/master/v2/LICENSE
github.com/edgexfoundry/go-mod-
logfmt
messaging/
logfmtMIT
v2Apache-2.0https://github.com/edgexfoundry/go-mod-
logfmt/logfmt
messaging/blob/master/v2/LICENSE
github.com/edgexfoundry/go-mod-
bootstrap
registry/v2Apache-2.0https://github.com/edgexfoundry/go-mod-
bootstrap
registry/blob/master/v2/LICENSE
github.com
/eclipse/paho.mqtt.golangBSD-3-Clause
/edgexfoundry/go-mod-secrets/v2Apache-2.0https://github.com/
eclipse/paho.mqtt.golang
edgexfoundry/go-mod-secrets/blob/master/v2/LICENSE
github.com/
hashicorp
fatih/
go-cleanhttpMPL-2.0
colorMIThttps://github.com/
hashicorp
fatih/
go-cleanhttp
color/blob/master/LICENSE.md
golang
github.
org
com/fxamacker/
x
cbor/
netBSD-3-Clause
v2MIThttps://
pkg.go.dev/golang.org/x/net?tab=licenses
github.com/fxamacker/cbor/blob/master/v2/LICENSE
github.com
/edgexfoundry
/go-
mod-registry/v2
kit/kit/logMIT
Apache-2.0
https://github.com
/edgexfoundry
/go-
mod-registry
kit/kit/blob/master/
v2
log/LICENSE
github.com/
gorilla
go-logfmt/
muxBSD-3-Clause
logfmtMIThttps://github.com/
gorilla
go-logfmt/
mux
logfmt/blob/master/LICENSE
github.com/
edgexfoundry/go-mod-core-contracts/v2
google/uuidBSD-3-Clause
Apache-2.0
https://github.com/
edgexfoundry/go-mod-core-contracts
google/uuid/blob/master
/v2
/LICENSE
github.com/go-playground/
validator/v10
localesMIThttps://github.com/go-playground/
validator
locales/blob/master
/v10
/LICENSE
github.com/
hashicorp
go-playground/
go
universal-
rootcertsMPL-2.0
translatorMIThttps://github.com/
hashicorp
go-playground/
go
universal-
rootcerts
translator/blob/master/LICENSE
gopkg.in/yaml.v3
github.com/go-playground/validator/v10MIThttps://github.com/go-
yaml
playground/
yaml
validator/blob/master/
v3
v10/LICENSE
github.com/
google/uuid
go-redis/redis/v7BSD-
3
2-Clausehttps://github.com/
google
go-redis/
uuid
redis/blob/master/v7/LICENSE
github.com/
pelletier
gorilla/
go-tomlApache-2.0
muxBSD-3-Clausehttps://github.com/
pelletier
gorilla/
go-toml
mux/blob/master/LICENSE
github.com/
x448/float16MIT
gorilla/websocketBSD-2-Clausehttps://github.com/
x448
gorilla/
float16
websocket/blob/master/LICENSE
github.com/hashicorp/consul/apiMPL-2.0https://github.com/hashicorp/consul/blob/master/api/LICENSE
github.com/
fatih
hashicorp/
colorMIT
errwrapMPL-2.0https://github.com/
fatih
hashicorp/
color
errwrap/blob/master/LICENSE
.md
golang
github.
org
com/
x
hashicorp/
sys
go-cleanhttp
BSD-3-Clause
MPL-2.0https://
pkg
github.
go.dev/golang.org/x/sys?tab=licenses
com/hashicorp/go-cleanhttp/blob/master/LICENSE
github.com/hashicorp/go-
immutable-radix
hclogMIT
MPL-2.0
https://github.com/hashicorp/go-
immutable-radix
hclog/blob/master/LICENSE
github.com/
edgexfoundry
hashicorp/
device
go-
sdk
immutable-
go/v2
radix
Apache
MPL-2.0https://github.com/
edgexfoundry
hashicorp/
device
go-
sdk
immutable-
go
radix/blob/master
/v2
/LICENSE
github.com/hashicorp/
go
golang-
kit
lru/
kit/log
simplelruMPL-2.0
MIT
https://github.com/hashicorp/
go
golang-
kit/kit
lru/blob/master/
log
simplelru/LICENSE
github.com/
edgexfoundry
hashicorp/go-
mod-messaging/v2
multierrorMPL
Apache
-2.0https://github.com/
edgexfoundry
hashicorp/go-
mod-messaging
multierror/blob/master
/v2
/LICENSE
github.com/
edgexfoundry
hashicorp/go-
mod-configuration/v2
rootcertsMPL
Apache
-2.0https://github.com/
edgexfoundry
hashicorp/go-
mod-configuration
rootcerts/blob/master
/v2
/LICENSE
github.com/hashicorp/
mitchellh
serf/
copystructureMIT
coordinateMPL-2.0https://github.com/
mitchellh
hashicorp/
copystructure
serf/blob/master/coordinate/LICENSE
bitbucket
github.
org
com/
bertimus9
leodido/
systemstat
go-urnMIThttps://
bitbucket
github.
org
com/
bertimus9
leodido/
systemstat
go-urn/
src
blob/master/LICENSE
github.com/
hashicorp
mattn/go-
multierrorMPL-2.0
colorableMIThttps://github.com/
hashicorp
mattn/go-
multierror
colorable/blob/master/LICENSE
github.com/
pebbe
mattn/
zmq4BSD-2-Clause
go-isattyMIThttps://github.com/
pebbe
mattn/
zmq4
go-isatty/blob/master/LICENSE
.txt
github.com/
mattn
mitchellh/
go-colorable
consulstructureMIThttps://github.com/
mattn
mitchellh/
go-colorable
consulstructure/blob/master/LICENSE
github.com/mitchellh/
mapstructure
copystructureMIThttps://github.com/mitchellh/
mapstructure
copystructure/blob/master/LICENSE
github.com/
OneOfOne
mitchellh/
xxhashApache-2.0
mapstructureMIThttps://github.com/
OneOfOne
mitchellh/
xxhash
mapstructure/blob/master/LICENSE
github.com/
go-playground/universal-translator
mitchellh/reflectwalkMIThttps://github.com/
go-playground/universal-translator
mitchellh/reflectwalk/blob/master/LICENSE
github.com/
leodido
OneOfOne/
go-urnMIT
xxhashApache-2.0https://github.com/
leodido
OneOfOne/
go-urn
xxhash/blob/master/LICENSE
golang
github.
org
com/
x/crypto
pebbe/
sha3
zmq4BSD-
3
2-Clausehttps://
pkg.go.dev/golang.org/x/crypto/sha3?tab=licenses
github.com/pebbe/zmq4/blob/master/LICENSE.txt
github.com/pelletier/go-
redis/redis/v7
tomlApache
BSD
-2
-Clause
.0https://github.com/pelletier/go-
redis
toml/
redis/
blob/master
/v7
/LICENSE
github.com/
mitchellh
tarm/
consulstructureMIT
serialBSD-3-Clausehttps://github.com/
mitchellh
tarm/
consulstructure
serial/blob/master/LICENSE
github.com/
cenkalti
x448/
backoff
float16MIThttps://github.com/
cenkalti
x448/
backoff
float16/blob/master/LICENSE
github
golang.
com
org/x/
mitchellh
crypto/
reflectwalkMIT
sha3BSD-3-Clausehttps://
github
pkg.go.
com
dev/
mitchellh
golang.org/
reflectwalk
x/
blob/master/LICENSEgithub.com/fxamacker/cbor/v2
crypto/sha3?tab=licenses
golang.org/x/netBSD-3-Clause
MIT
https://
github
pkg.go.
com
dev/
fxamacker
golang.org/
cbor/blob/master/v2/LICENSE
x/net?tab=licenses
golang.org/x/sysBSD-3-Clause
github.com/go-playground/localesMIT
https://
github
pkg.
com/
go
-playground/locales/blob/master/LICENSEgithub.com/hashicorp/go-hclog
.dev/golang.org/x/sys?tab=licenses
golang.org/x/textBSD-3-Clause
MIT
https://
github
pkg.
com/hashicorp/go-hclog/blob/master/LICENSEgithub.com/mattn/go-isatty
go.dev/golang.org/x/text?tab=licenses
gopkg.in/yaml.v3MIThttps://github.com/
mattn/
go-
isatty
yaml/yaml/blob/
master
v3/LICENSE

References

Definitions, Acronyms and Abbreviations