Armadilloフォーラム

SDブートでのArmadillo Twin接続について

ibt_oyabe

2024年3月27日 18時53分

Armadillo-640(Armadillo Base OS)でArmadillo Twinを使用しているのですが、
eMMCブートでArmadillo Twinに登録後、SDカードブートで起動すると、Armadillo Twinへ接続できなくなることがある事象が発生しております。

2台のArmadillo-640を使用して作業を行っていたのですが、片方のみ発生しております。

問題なくArmadillo Twinに接続できている方はTwinに登録後、podmanのコンテナを作成し、Twinに接続できなくなってしまった方はpodmanのコンテナ作成後にTwinに登録していたのですが、こうした手順による影響等はありますでしょうか。

なお、それ以外の手順に関しては同じ手順で設定しております。

以上、ご回答よろしくお願いいたします。

コメント

at_akihito.irie

2024年3月28日 10時05分

入江です。

> Armadillo-640(Armadillo Base OS)でArmadillo Twinを使用しているのですが、
> eMMCブートでArmadillo Twinに登録後、SDカードブートで起動すると、Armadillo Twinへ接続できなくなることがある事象が発生しております。

Armadillo Twinに接続するためのagentソフトウェアがArmadillo上で動作しています。
このagentソフトウェアは/var/log/armadillo-twin-agent/agent_logに動作ログを残します。

接続できなかった個体おける、このログ全体もしくは接続できなかった時刻周辺のログをいただけますでしょうか?

> 問題なくArmadillo Twinに接続できている方はTwinに登録後、podmanのコンテナを作成し、Twinに接続できなくなってしまった方はpodmanのコンテナ作成後にTwinに登録していたのですが、こうした手順による影響等はありますでしょうか。

仕組み上はコンテナの作成などで接続できなくなることは考えにくいとは思いますが、一応確認させてください。
その作成したpodmanコンテナ内では何をしていますか?

以上、よろしくお願いいたします。

ご回答ありがとうございます。

接続できなかった際に取得したログをお送りさせていただきます。

> その作成したpodmanコンテナ内では何をしていますか?
podmanコンテナ内ではDebian環境を作成しており、GreenGrassを動作させております。
構築は以下フォーラムの内容を参考にさせていただきました。
https://armadillo.atmark-techno.com/forum/armadillo/15660

ファイル ファイルの説明
Armadilloログ.txt armadillo-twin-agentログ

at_akihito.irie

2024年3月28日 17時08分

入江です。

ご確認ありがとうございます。

GreenGrassの影響も視野に入れて調査を進めますので、今しばらくお待ちください。

頂いたログが乱れていて、正しい情報(特に時刻)が追うのが難しくなっていたので、あらためて送っていただけますか?

ArmadilloにUSBメモリなどを挿して、そこに/var/log/armadillo-twin-agent/agent_log をコピーするときれいに取り出せます。

お手数おかけしますが、よろしくお願いいたします。

アットマークテクノの古賀です。

入江(2024年3月28日 17時08分):
>頂いたログが乱れていて、正しい情報(特に時刻)が追うのが難しくなっていたので、あらためて送っていただけますか?
>ArmadilloにUSBメモリなどを挿して、そこに/var/log/armadillo-twin-agent/agent_log をコピーするときれいに取り出せます。

追加で一点、確認と、お願いです。

ibt_oyabeさん(2024年3月28日 11時06分):
>接続できなかった際に取得したログをお送りさせていただきます。

「接続できなかった際に」と書いていらっしゃいますが、最初の投稿に書いていらした、接続できなくなった方の Armadillo-640 は、現在は接続できる状態でしょうか?

ibt_oyabeさん(2024年3月27日 18時53分):
>2台のArmadillo-640を使用して作業を行っていたのですが、片方のみ発生しております。
>
>問題なくArmadillo Twinに接続できている方はTwinに登録後、podmanのコンテナを作成し、Twinに接続できなくなってしまった方はpodmanのコンテナ作成後にTwinに登録していたのですが、こうした手順による影響等はありますでしょうか。
>
>なお、それ以外の手順に関しては同じ手順で設定しております。

もし、二台の Armadillo-640 のうちの一台が、現在も接続できない状態なのであれば、ABOS のシェルで以下のコマンドを実行してみて、接続できない状況に変化が出るかどうか、試して見ていただいてもよいでしょうか。

# rc-service armadillo-twin-agentd restart

以上、お手数をかけまして恐縮ですが、どうぞ宜しくお願いします。

入江様 >
ログの件ですが、事象が発生した機器で、一度リセットを行ってArmadillo Twinとの接続ができた手順で設定し直してしまったため、オリジナルのログファイルが既にありません。
申し訳ございませんが、お送りさせていただいたログでご確認いただけませんでしょうか。

アットマークテクノ 古賀様 >
接続できた方と同じ手順、順番で実施したところ、現在はどちらもArmadillo Twinに接続できる状態になっております。

以上、よろしくお願い致します。

at_shinya.koga

2024年4月2日 6時08分

アットマークテクノの古賀です。

ibt_oyabeさん:
>入江様 >
>ログの件ですが、事象が発生した機器で、一度リセットを行ってArmadillo Twinとの接続ができた手順で設定し直してしまったため、オリジナルのログファイルが既にありません。
>申し訳ございませんが、お送りさせていただいたログでご確認いただけませんでしょうか。
>
>アットマークテクノ 古賀様 >
>接続できた方と同じ手順、順番で実施したところ、現在はどちらもArmadillo Twinに接続できる状態になっております。

既に症状が起きない状態になっている、ということで了解しました。
こちらで再現確認を進めているところですが、再現手順について、一点教えてくださいませ。

ibt_oyabeさん(2024年3月28日 11時06分):
>>その作成したpodmanコンテナ内では何をしていますか?
>
>podmanコンテナ内ではDebian環境を作成しており、GreenGrassを動作させております。
>構築は以下フォーラムの内容を参考にさせていただきました。
>https://armadillo.atmark-techno.com/forum/armadillo/15660

GreenGrass v2 をインストールした Debian コンテナですが、症状発生時には、以下の三つの環境変数を設定して、プロビジョニングが行われるようにして稼働させていらっしゃったという認識で合っているでしょうか?

AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
AWS_SESSION_TOKEN

ご回答ありがとうございます。

> GreenGrass v2 をインストールした Debian コンテナですが、症状発生時には、以下の三つの環境変数を設定して、プロビジョニングが行われるようにして稼働させていらっしゃったという認識で合っているでしょうか?

いいえ、二つの環境変数を使用する、以下手順を基に、プロビジョニングを実行しました。
https://armadillo.atmark-techno.com/howto/install-aws-greengrass

アットマークテクノの古賀です。

ibt_oyabeさん:
>>GreenGrass v2 をインストールした Debian コンテナですが、症状発生時には、以下の三つの環境変数を設定して、プロビジョニングが行われるようにして稼働させていらっしゃったという認識で合っているでしょうか?
>
>いいえ、二つの環境変数を使用する、以下手順を基に、プロビジョニングを実行しました。
>https://armadillo.atmark-techno.com/howto/install-aws-greengrass

了解しました。つまり、
 https://armadillo.atmark-techno.com/forum/armadillo/15660#comment-13373
で紹介していた Dockerfile 付属の greengrass-entrypoint.sh を使用せずに、元の Howto 記載の手順で、直接 Greengrass.jar を java で実行されたということですね。

二つの環境変数の設定だけでプロビジョニングできるように、greengrass-entrypoint.sh を書き換えて使用するようにしたコンテナを動かして先ほど確認しましたが、ご報告の症状を再現確認できませんでした。

再現確認として、Armadillo Twin のデバイス登録を行う前に、Greengrass 用のコンテナをセットアップしておき、デバイス登録時に電源投入した際に、Base OS の起動時に当該コンテナが自動起動して Greengrass Core v2 のプロビジョニング動作が実行されるようにしてみました。
その状況で、Greengrass Core v2 のプロビジョニングと Armadillo Twin へのデバイス登録のどちらも成功しました。

なお、Armadillo Twin に対応したバージョンの Armadillo-640 が手元にないため、Armadillo-IoT A6E を再現確認に使用しました:
 https://manual.armadillo-twin.com/applicable-products/
Armadillo-IoT A6E は、Armadillo-640 と同じ SoC (i.MX 6ULL) を搭載していますので、症状の発生有無に違いを与える要因は少ないと思います。
いずれにせよ、コンテナ内で Grenngrass Core v2 が稼働している場合に、そのことだけが要因で Armadillo Twin に接続できないという制限は、ありません。

症状が発生した際の状況についての確認ですが、Armadillo-640 が起動して Greengrass Core v2 が Greengrass v2 に接続した際、コンポーネントのデプロイが起こるような設定をしていらしたでしょうか?
これは、コンポーネントのデプロイなどにより、Armadillo-640 の負荷が上がるような状況があったのかどうかを知りたいと思っての質問です。

> 症状が発生した際の状況についての確認ですが、Armadillo-640 が起動して Greengrass Core v2 が Greengrass v2 に接続した際、コンポーネントのデプロイが起こるような設定をしていらしたでしょうか?

いいえ、Armadillo Twin接続失敗時、GreenGrassでコンポーネントのデプロイは実施しておりませんでした。
Armadillo-640のGreenGrass内のコンポーネントも、プロビジョニング時に自動的にデプロイされるコンポーネントのみの状態でした。

アットマークテクノの古賀です。

ibt_oyabeさん:
>>症状が発生した際の状況についての確認ですが、Armadillo-640 が起動して Greengrass Core v2 が Greengrass v2 に接続した際、コンポーネントのデプロイが起こるような設定をしていらしたでしょうか?
>
>いいえ、Armadillo Twin接続失敗時、GreenGrassでコンポーネントのデプロイは実施しておりませんでした。
>Armadillo-640のGreenGrass内のコンポーネントも、プロビジョニング時に自動的にデプロイされるコンポーネントのみの状態でした。

了解しました。
とすると、こちらで同様の条件で再現できませんでしたので、手がかりなしです。
今のところは、これ以上分かることはありません。ごめんなさい。

承知いたしました。
こちらでも同現象が再現されず、正常に動作しているようなのでおそらく初回実施時に試行錯誤しているなかで手順の間違いがあったのかもしれません。
そのため、本件に関してはこのままクローズとさせていただきます。

調査等、ありがとうございました。