LEAPSサーバー
はじめに
LEAPS Server is a central data hub for the UWB network. It interconnects all the gateway devices with the world via a MQTT Broker.
主な機能
アップリンクデータコンセントレータ、ダウンリンクデータルータ、データプロセッサ、ロケーションエンジン、デバイス管理、デバイスアクセス制御、サービス品質として機能します。
It communicates with the world via the connectors. Currently, the supported connector is MQTT including support for AWS.
The LEAPSサーバー runs as a daemon service on the Linux platform.
インストール
System requirements
注釈
Dockerのシステム要件はOSによって異なります。
For Linux, you need a 64-bit architecture, a compatible kernel version, and specific kernel features.
On Windows, use Docker Desktop on Windows 10 with virtualization enabled.
macOSの場合は、macOS 10.13以降のDocker Desktopを使用してください。ハードウェアに関しては、最低2GBのRAMと十分なCPUとディスク容量を推奨します。
最新の詳細については`Docker <https://docs.docker.com/>`_公式ドキュメントを参照してください。
使用方法
PCにDockerをインストールする
さらに、以下のコマンドを参考にしてインストールすることもできる:
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh ./get-docker.sh sudo usermod -aG docker $USER
Create folder
leaps_server_hub
and subfolderdata
. Then, add theleaps-server.conf
configuration file inleaps_server_hub/data
.
####################################################################### # LEAPS Server settings # # ----------------------------------------------------------------- # Logging # ----------------------------------------------------------------- log_level = 0 # Logging level, default is 0 (0=none, 1=fatal, 2=error, 3=warning, 4=info, 5=debug, 6=verbose) # Path to log file. Comment out to disable logging to file (log to stdio instead). # log = leaps-server.log # ----------------------------------------------------------------- # Certificate based SSL/TLS support # ----------------------------------------------------------------- # # cafile - Authority certificates that have signed your server certificate. # certfile - Path to the PEM encoded server certificate. # keyfile - Path to the PEM encoded keyfile. # gw_auth - When using TLS on the interface with the gateways, this parameter configures TLS authentication between server and the gateway (0=server 1=mutual). # # cafile = /etc/leaps-server/cacert.pem # certfile = /etc/leaps-server/servercert.pem # keyfile = /etc/leaps-server/serverkey.pem # gw_auth = 0 # Optional AES 128-bit private key as hexadecimal number. If specified, the key is used to encrypt sensitive data # for example the WiFi password published on the MQTT interface. # aes_128_key = 00112233445566778899aabbccddeeff # ----------------------------------------------------------------- # MQTT Broker # ----------------------------------------------------------------- # MQTT API variant "pans" or "leaps" mqtt_api = pans # include network ID (panid) in the MQTT topics mqtt_with_panid = true # Specifies an alias for particular UWB network that is then used in the MQTT topic instead of the network ID (pan ID) . # Parameter can be used multiple times and there might be multiple definitions separated by spaces which are then added to the list of known aliases. # Alias definitions must follow format <ID>:<ALIAS_STRING>. Multiple definitions must be separated with spaces. # Network ID (PAN ID) can be hexadecimal number (withe prefix \"0x\") or decimal number. # mqtt_panid_alias = [123:NetworkA] [0x0002:Net B] # mqtt_panid_alias = [0XABCD:Network_C] mqtt_clid = 1 mqtt_port = 1883 mqtt_host = localhost # Or your Computer's IP Address # For PANS PRO RTLS mqtt_user = pans mqtt_password = panspass mqtt_topic_prefix = pans # For PANS PRO RTLS # mqtt_user = dwmuser # mqtt_password = dwmpass # mqtt_topic_prefix = dwm # Certificates used on MQTT interface # mqtt_cafile = /etc/leaps-server/cacert.pem # mqtt_certfile = /etc/leaps-server/servercert.pem # mqtt_keyfile = /etc/leaps-server/serverkey.pem # Period in seconds after which all retained topics are published regardless # whether the content has changed or not. Disabled when set to 0. Disabled by default. #mqtt_refresh = 0 # ----------------------------------------------------------------- # Secondary MQTT Broker # ----------------------------------------------------------------- # # mqtt_clid_sec = 2 # mqtt_port_sec = 1883 # mqtt_host_sec = # For PANS PRO RTLS # mqtt_user_sec = dwmuser # mqtt_password_sec = dwmpass # Certificates used on MQTT interface # mqtt_cafile_sec = /etc/leaps-server/cacert.pem # mqtt_certfile_sec = /etc/leaps-server/servercert.pem # mqtt_keyfile_sec = /etc/leaps-server/serverkey.pem # ----------------------------------------------------------------- # TCP # ----------------------------------------------------------------- # tcp_port = 7777 # ----------------------------------------------------------------- # Other # ----------------------------------------------------------------- # maximum number of attempts of configuration and service commands # cmd_att = 3
PCでコマンドプロンプトまたはターミナルウィンドウを開く。
Navigate to the folder where you created the configuration file.
たとえば、Ubuntu (Linux) の場合:
cd leaps_server_hub/
Install the LEAPS Server Docker packages, run:
docker run -d -p 7777:7777/tcp -p 7777:7777/udp --name some_name -v /path/to/data/data/:/app/data/ leapslabs/leaps_server:tag /app/leaps-server --cfg /app/data/leaps-server.conf
where
some_name
is the name you want to assign to your container andtag
is the tag specifying theleaps-server
version you want.The leaps_server instance is using ports
7777
forTCP
andUDP
communication with the Gateway so these ports need to be remapped from the host to leaps_server instance with command-p 7777:7777/tcp -p 7777:7777/udp
.It is not recommended to change the port numbers unless needed. If they need to be modified, please adapt accordingly the port settings on the Gateway.
推奨される走行オプション
--user $(id -u):$(id -g)
特定のユーザーとグループの下でインスタンスを実行する。
--restart unless-stopped
Restart automatically the instance in case the server would crash.
The LEAPS Server installation process will begin.
たとえば、Ubuntu (Linux) の場合:
docker run -d -p 7777:7777/tcp -p 7777:7777/udp --name leaps_server -v "$(pwd)"/data/:/app/data leapslabs/leaps_server:latest /app/leaps-server --cfg /app/data/leaps-server.conf Unable to find image 'leapslabs/lc_server:latest' locally latest: Pulling from leapslabs/lc_server a458657ccc71: Pull complete Digest: sha256:a19b127656d41d8607f043c2c83924e5b9a5cbd4dc23cfbed070be3b9cfc6b9a Status: Downloaded newer image for leapslabs/lc_server:latest 320d3768289874e063619f75faca7a24dd75a08884df8cd8fb2cc9b54c6f0a46
インストールが成功したことを確認し、実行する:
たとえば、Ubuntu (Linux) の場合:
docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b1145b72db35 leapslabs/lc_server:latest "sh -c 'cd /app && …" 37 seconds ago 11 seconds ago lc_server
So, you have successfully installed and started LEAPS Server on your PC.
Getting started
LEAPS サーバー Docker
Start LEAPS Server, run:
docker start lc_server
Stop LEAPS Server, run:
docker stop lc_server
Restart LEAPS Server, run:
docker restart lc_server
Remove LEAPS Server, run
docker rm --force lc_server
ネットワーク構成
MQTT API variant "pans" or "leaps"
LEAPS ID into the published topics
mqtt_with_panid = true mqtt_clid = 1 mqtt_port = 1883 mqtt_host = localhost # Or your Computer's IP Address
LEAPS RTLS account configuration
mqtt_user = pansuser mqtt_password = panspass mqtt_topic_prefix = pans
TCP port is 7777