エッジデバイス
エッジデバイスの追加
追加のエッジデバイス(つまり産業用 PC)を導入することで、より多くの機械に IronFlock アプリをデプロイし、アプライアンスからアプリの運用負荷をオフロードできます。 アプライアンス自体もエッジデバイスとして機能しますが、IronFlock クラウドでエッジデバイスをデプロイするのと同じ方法で、さらに多くのエッジデバイスを接続できます。 プロジェクト設定 -> デバイス -> 新しいデバイス に移動し、指示に従ってください。
デバイスエージェントの更新
アプライアンスに接続されたエッジデバイスは、IronFlock デバイスエージェントの更新をアプライアンス自身から受け取ります。デバイスが instance-registry.ironflock.com に接続することはなく、更新のためにインターネットアクセスも必要ありません。
- シンプルモード(IP):
http://<appliance-host>:15002/dl— デバイスがレジストリトークンの取得にすでに使用しているポートと同じです。 - ドメイン/TLS モード:
https://registry.<appliance-domain>/dl(ポート443)。
アプライアンスはエージェントのバイナリのローカルミラーを保持し、https://instance-registry.ironflock.com(すでにファイアウォールの許可リストに含まれています)から 6 時間ごとに更新します。設定 → ライセンス/アプライアンス → デバイスエージェントの更新 → 今すぐ同期 から手動で更新することもできます。アプライアンスのミラーは IronFlock クラウドからも更新できます。インスタンスを開く必要も、アプライアンス自体にログインする必要もありません。クラウドの Studio で Profile → Instances を開くと、ご自身が所有する各アプライアンスに デバイスエージェントの更新 列があり、そのミラーが現在デバイスに提供しているエージェントのバージョン(その下にデバイスインストーラーのバージョン)が表示され、同じセルから 今すぐ同期 を実行できます。ミラーはクラウドのリリースマニフェストに従います。クラウドのマニフェストが現在参照しているすべてのエージェントバージョンが、すべての Linux ターゲットと Windows について保持され、各バージョンはアプライアンス上に完全に揃ってはじめてデバイスに提供されます。クラウドが公開したバージョンがアプライアンス上でまだ完全に揃っていない場合、デバイスには引き続き以前のバージョンが表示されます。
エージェントは署名付きのツリー <base>/device-agent/(署名付きの manifest.json と、.sig 署名付きのバイナリ)からダウンロードし、適用前にすべての更新を検証して、新バージョンが起動しない場合は自動的にロールバックします。更新が適用されるのは、エージェントの起動時か、ユーザーが Studio で更新を開始したときだけです。
デバイスは更新の取得先を .flock ファイル(update_url)から取得し、エージェントバージョン 0.21.2 以降は、ハートビートのたびにアプライアンスからも受け取ります。そのため、アプライアンスの IP アドレスの変更やドメインモードへの切り替えは、デバイスに自動的に反映されます。
この機能より前にプロビジョニングされたデバイスで古いエージェントが動作している場合は、
.flockファイルを一度ダウンロードし直す必要があります。Windows の場合:サービスを停止し(device-agent.exe service stop)、%ProgramData%\IronFlock\DeviceAgent\device.flockを新しいファイル(BOM なしで保存)に置き換えてから、再度開始します(device-agent.exe service start)。エージェント 1.4.0 より前にインストールされたデバイスでは、フォルダーは%ProgramData%\IronFlock\Reagentです。
インターネットに接続できないデバイスの登録
アプライアンスはデバイスインストーラー(ironflock-init)とそのインストールスクリプトもミラーしているため、アプライアンスにしか到達できない新しいエッジデバイスでも登録できます。プロジェクト設定 → デバイス → 新しいデバイス に表示されるコマンドは、すでにアプライアンスを指しています — シンプルモード(IP)では http://<appliance-host>:15002/dl/...、ドメインモードでは https://registry.<appliance-domain>/dl/... です。
- Linux: ワンライナーは
curl -fsSL <base>/device-init/install.sh | sudo IRONFLOCK_DL_BASE=<base> bash -s -- -c <file>.flockという形式です。先にデバイスの.flockファイルをデバイスへコピーしておきます。ironflock-initはダウンロード元のベース URL を.flockファイルから取得します。--download-baseで上書きできます。 - Windows:
<base>/device-agent/windows/amd64/latest/device-agent.exeからdevice-agent.exeをダウンロードし、デバイスの接続 の手順に従ってサービスをインストールします。
インターネットに接続できないデバイスの前提条件: Docker(Engine と Compose プラグイン)および基本パッケージがあらかじめインストールされている必要があります。アプライアンスがミラーするのは IronFlock 自身のバイナリであり、ディストリビューションのパッケージではありません —
ironflock-initがget.docker.comにアクセスを試みるのは、Docker が見つからない場合のみです。
インストーラーの保存領域はエージェントのミラーと一緒に更新されます — 同じ 6 時間周期で、同じ 今すぐ同期 ボタンから更新できます。