3.2.5. IoT サービスのインストール

AMQ Online で IoT 機能の使用を開始するには、まず IoT サービスをインストールする必要があります。

手順

  1. (オプション) amq-online-infra 以外のプロジェクトにデプロイする場合は、次のコマンドを実行し、後続の手順で amq-online-infra を置き換える必要があります。

    sed -i 's/amq-online-infra/my-project/' install/preview-bundles/iot/*.yaml
  2. IoT バンドルをデプロイします。

    oc apply -f install/preview-bundles/iot
  3. MQTT プロトコルアダプターの証明書を作成します。テスト目的で、自己署名証明書を作成できます。

    ./install/components/iot/examples/k8s-tls/create
    oc create secret tls iot-mqtt-adapter-tls --key=install/components/iot/examples/k8s-tls/build/iot-mqtt-adapter-key.pem --cert=install/components/iot/examples/k8s-tls/build/iot-mqtt-adapter-fullchain.pem

    スクリプトを呼び出すときに環境変数 NAMESPACE を設定して、deploy スクリプトがキーと証明書をインストールする namespace をオーバーライドできます。以下に例を示します。

    NAMESPACE=my-namespace ./install/components/iot/examples/k8s-tls/deploy
    注記

    クラスターが localhost で実行されていない場合には、外部クライアント (MQTT など) が適切なサービスに適切に接続できるように、証明書を作成するときにクラスターのホスト名を指定する必要があります。以下に例を示します。

    CLUSTER=x.x.x.x.nip.io install/components/iot/examples/k8s-tls/create
  4. (オプション) PostgreSQL サーバーをインストールし、データベースを作成します。

    oc apply -f install/components/iot/examples/postgresql/deploy

    すでに PostgreSQL インスタンスがあり、それにアクセスするユーザーでデータベースを作成した場合は、この手順を省略できます。

  5. データベーススキーマを適用します。

    作成したデータベースインスタンスで次の SQL ファイルを実行する必要があります。設定によっては、データベース管理者権限が必要になる場合があります。

    • install/components/iot/examples/postgresql/create.sql
    • install/components/iot/examples/postgresql/create.devcon.sql

    データベースに接続された psql コマンドを使用して、SQL ファイルを実行できます。以下は、前の手順で説明したように PostgreSQL をインストールしたときに、コンテナー内から psql を実行する方法の例を示しています。

    oc exec -ti deployment/postgresql -- bash -c "PGPASSWORD=user12 psql device-registry registry" < install/components/iot/examples/postgresql/create.sql
    oc exec -ti deployment/postgresql -- bash -c "PGPASSWORD=user12 psql device-registry registry" < install/components/iot/examples/postgresql/create.devcon.sql
  6. IoT インフラストラクチャー設定の例をインストールします。

    oc apply -f install/components/iot/examples/iot-config.yaml