1.はじめに
この一連の記事では、オープンソースソフトウェアであるLoRaWANChirpstackネットワークサーバーの展開と運用について説明します。このソフトウェアは、オランダの愛好家の1人であるOrne Brocaarによって作成され、独自のLoRaWANネットワークを構築するために使用できます。システムコンポーネントは、MITライセンスによってライセンスされており、商用運用に使用できます。
LoRaWANデバイスの顧客や消費者とコミュニケーションを取りながら、このサーバーに基づいて独自のネットワークを展開するための支援の要請を繰り返し耳にしました。これにより、サーバーの展開と運用に関する一般的なガイドが必要であると思いました。自分の手で、誰かをインストールします。この点で、このシリーズの記事が生まれました。何について話し合いますか?すべてのサーバーコンポーネントをインストールすることから、最も重要なことから始めましょう。さらに、サーバーの操作、外部プラットフォームとの統合、およびMulticastやFUOTAなどのLoRaWANネットワークの新しいテクノロジーの使用に関する記事があります。それでは、始めましょう...パート1。
2.私たちは何と協力しますか
まず、LoRaWANサーバーをテストして展開する対象について説明します。
ハードウェア:
- LoRaWANゲートウェイ:DoMINO Indoor v.1.0(Vega BS xxなどの別のものを使用できます)
- パルスカウンターDoMINOPULSE v.4.3 +
ソフトウェア:
- Ubuntu18.04を搭載したクラウドサーバー
3.Chirpstackサーバーの説明
LoRaWANネットワークサーバーの構造を図1に示します。

図1
サーバーの主なコンポーネントは次のとおりです。
ゲートウェイブリッジ-ベースステーション(ゲートウェイ)にインストールされたパケットフォワーダープログラムとLoRaWANサーバー構造自体の間のブリッジ。
ネットワークサーバー-ネットワークレベルのメッセージを処理するネットワークサーバー。
アプリケーションサーバー-ユーザーレベルでネットワーク操作を提供し、外部プラットフォームと統合するアプリケーションサーバー。
補助コンポーネント:
MQTT BrokerMosquitto-サーバーコンポーネント間の内部メッセージング用。
Redis- 一時的なデータを保存するための中間データベース。
PostgreSQL-永続的なデータストレージ用のデータベース。
すべてのソフトウェアはオープンソースソフトウェアです。
4.サーバーのインストール
サーバーはUbuntu18.04またはDebianOSにインストールされます。Ubuntu18.04でクラウドサーバーを使用したインストールについて説明します。サーバーへの接続は、Puttyクライアントを使用してSSH経由で行われます。注:読者は、Ubuntu、SSH、Puttyを使用することを考えており、OSがインストールおよび構成されていることを前提としています。
4.1補助ソフトウェアのインストールと構成
開始するには、補助パッケージをインストールする必要があります。これを行うには、コンソールに次のコマンドを入力します。
sudo apt install mosquitto mosquitto-clients redis-server redis-tools postgresql
インストールが完了するのを待ちます。
次に、PostgreSQLデータベースを構成し、それにユーザーを追加する必要があります。
データベース管理モードに入ります。
sudo -u postgres psql
データベース管理プロンプトが表示されますpostgres =#
パスワードを使用してユーザーを作成します(このデータを覚えておく必要があります。他のログインとパスワードを指定できますが、覚えておいてください。後でネットワークサーバーとアプリケーションサーバーを構成するために必要になります)。
ネットワークサーバーのユーザーを作成します。
create role chirpstack_ns with login password 'dbpassword';
アプリケーションサーバーのユーザーを作成します。
create role chirpstack_as with login password 'dbpassword';
ネットワークサーバー用のデータベースを作成しましょう。
create database chirpstack_ns with owner chirpstack_ns;
アプリケーションサーバーのデータベースを作成します。
create database chirpstack_as with owner chirpstack_as;
追加設定
データベースに接続します。
\c chirpstack_as
拡張機能を作成します。
create extension pg_trgm;
拡張機能を作成します。
create extension hstore;
データベースパラメータの編集を終了します。
\q
4.2Chirpstackリポジトリのインストール
次のコンポーネントをインストールする必要があります:dirmngrおよびapt-transport-https、コマンドを実行しない場合:
sudo apt install apt-transport-https dirmngr
新しいリポジトリのキーをインストールします。
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1CE2AFD36DBCCA00
リストにリポジトリを追加します。
sudo echo "deb https://artifacts.chirpstack.io/packages/3.x/deb stable main" | sudo tee /etc/apt/sources.list.d/chirpstack.list
aptキャッシュを更新しましょう:
sudo apt update
これで予備設定は完了です。
4.3ゲートウェイブリッジのインストール
パッケージをインストールします。
sudo apt install chirpstack-gateway-bridge
ゲートウェイブリッジを起動します。
sudo systemctl start chirpstack-gateway-bridge
GatewayBridgeアプリケーションを起動時に配置します。
sudo systemctl enable chirpstack-gateway-bridge
正しく起動およびインストールされたことを確認するには、次のコマンドを使用して作業ログを確認できます。
sudo journalctl -f -n 100 -u chirpstack-gateway-bridge
ログCtrl + Zを終了します。
ログにエラーはないはずです。
4.4ネットワークサーバーのインストールと構成
パッケージをインストールします。
sudo apt install chirpstack-network-server
サーバーが正しく機能するためには、サーバーを構成する必要があります。構成ファイルは次のファイルです。
/etc/chirpstack-network-server/chirpstack-network-server.toml
ネットワークサーバーを使用する前に、タスクのためにネットワークサーバーを編集する必要があります。このために、ファイルを含むフォルダーに入ります。
/etc/chirpstack-network-server/
そして、このフォルダーで、コマンドを実行して新しい構成ファイルを作成します
chirpstack-network-server configfile > chirpstack-network-server.toml
構成ファイルの変更を始めましょう。
便利なエディター(nano、vim)で編集するためにファイルを開きます。
サイクルの次の部分では、ネットワークサーバー設定の詳細な項目について詳しく説明します。ここでは、機能の基礎を提供するために基本設定のみを行います。
ネットワークサーバーのデータベースへの接続を構成します。
dsn="postgres://chirpstack_ns:dbpassword@localhost/chirpstack_ns?sslmode=disable"
ここで、前の段落のデータベース名、ログイン、およびパスワードが必要になります。
また、周波数プランパラメータを編集します。
name="RU864"
構成ファイルを保存し、ターミナルコンソールに戻ります。
ネットワークサーバーを起動します。
sudo systemctl start chirpstack-network-server
ネットワークサーバーを起動時に配置します。
sudo systemctl enable chirpstack-network-server
ネットワークサーバーのログを確認します。エラーはないはずです。
sudo journalctl -f -n 100 -u chirpstack-network-server
サーバーが構成され、実行されています。
4.5アプリケーションサーバーのインストールと構成
パッケージをインストールします。
sudo apt install chirpstack-application-server
ネットワークサーバーと同様に、アプリケーションサーバー構成ファイルを構成します。
設定フォルダに移動します。
/etc/chirpstack-application-server/
構成ファイルを更新します。
chirpstack-application-server configfile > chirpstack-application-server.toml
ここでは、データベースへの接続と、jwt_secret秘密鍵を作成するために必要な非常に重要なポイントも編集する必要があります。このために次のコマンドを実行します。
openssl rand -base64 32
結果のキーを書き留めます。
編集用の構成ファイルを開き、データベース接続文字列を独自のものに変更します。
dsn="postgres://chirpstack_as:dbpassword@localhost/chirpstack_as?sslmode=disable"
コピーした秘密鍵をインストールします。
jwt_secret=”UwX3TeStLtm/7tkW7hsqfbpcvo5k+BOEh/l8uDHCcKU=”
構成ファイルを保存します。ターミナルコンソールに戻ります。
アプリケーションサーバーを起動します。
sudo systemctl start chirpstack-application-server
アプリケーションサーバーを起動するように設定します。
sudo systemctl enable chirpstack-application-server
アプリケーションサーバーの動作の確認:
sudo journalctl -f -n 100 -u chirpstack-application-server
間違いはないはずです。
おめでとうございます。LoRaWANChirpstackServerがインストールされ、使用できるようになりました。
このシリーズの記事の次のパートでは、LoRaWANChirpstackサーバーのWebインターフェイスの操作について詳しく説明します。
よろしく
お願いいたします。DoMINOGROUPの責任者、
Andrey Golovatenko