Armadilloフォーラム

SWアップデートが終わらない

e1234

2024年3月7日 11時42分

Armadillo Base OSでコンテナ更新をしたい為、Hwakbitサーバーを立てております。
以下の内容を参照し、実施しました。

 Armadillo Base OS:Hawkbitサーバーを用いてソフトウェアアップデートする方法
 https://armadillo.atmark-techno.com/blog/15349/13372

上記Webページの「4.アップデート実行(Rollout)」を実行し、
hawkbitサーバーのWeb画面で、黄色表示(アクセス待ち)となっていることを確認しました。
その後、コンテナもイメージファイルも無い状態のArmadilloをrebootしました。

すると、Armadilloのボード上にあるLED(緑)が点滅した状態のまま、40分経過してもアップデートが完了しませんでした。
【添付ファイル①】

その後、Armadilloの電源断→電源入とすると、しばらくすると自動的に再起動され、
アップデート完了となっていました。【添付ファイル②、③、④】

アップデートが完了しなかった点について、
原因をご教授いただけないでしょうか?

■添付ファイル
①Armadillo_swupdate中_varlog.txt
Armadilloをrebootしてから40分経過した間の、/var/log/messagesの内容(swupdateでgrepしたもの)

②Armadillo_電源入→自動再起動_log.txt
Armadilloを電源断→入としてから、自動的に再起動完了するまでのArmadilloのコンソールログ
 (123行目からが、自動的に再起動しはじめたところです。)

③Armadillo_電源入後_varlog.txt
 Armadilloを電源断→入としてからの、/var/log/messagesの内容(swupdateでgrepしたもの)

④アップデート完了.pdf
Armadilloの電源断→電源入→自動的に再起動された後の、各種画面です。
 (この画面確認により、アップデート完了したと判断しました。)

■環境
・VirtualBox
・Ubuntu22.04
・Docker(Docker Engine on Ubuntu)

■BaseOSインストールディスクイメージ
 https://download.atmark-techno.com/armadillo-640/image/baseos-600-insta…
 baseos-600-installer-3.18.6-at.10.img

■コンテナ
・Hawkbit docker-composeコンテナ
 https://armadillo.atmark-techno.com/resources/software/armadillo-640/ab…
  hawkbit-compose-4.15.1.tar.xz

ファイル ファイルの説明
Armadillo_swupdate中_varlog.txt 添付ファイル①:Armadilloをrebootしてから40分経過した間の、/var/log/messagesの内容(swupdateでgrepしたもの)
Armadillo_電源入→自動再起動_log.txt 添付ファイル②:Armadilloを電源断→入としてから、自動的に再起動完了するまでのArmadilloのコンソールログ
Armadillo_電源入後_varlog.txt 添付ファイル③:Armadilloを電源断→入としてからの、/var/log/messagesの内容(swupdateでgrepしたもの)
アップデート完了.pdf Armadilloの電源断→電源入→自動的に再起動された後の、各種画面
コメント

at_dominique.m…

2024年3月7日 12時33分

e1234さん

お世話になっています、
マルティネです。

> アップデートが完了しなかった点について、
> 原因をご教授いただけないでしょうか?

すみません、今回の問題に心当たりはありません。
ログを確認したところ、アップデートが固まったのは podman load の途中ですので、swu のストリーミングに何かの問題あったかもしれません。

いくつか確認させてください:
- アップデートが固まった際の /var/log/messages の内容を swupdate に限らず提供していただけますでしょうか?何か影響にありそうなメッセージがあるかもしれません。
- swuファイルと sample_container_image.tar の両方のサイズを教えていただけますか?
- まだそんなにアップデートを行ってないと思いますが、この問題はどの頻度で再現しているか分かりますか?

よろしくお願いします。

e1234

2024年3月7日 15時16分

マルティネさん

お世話になっております。

> - アップデートが固まった際の /var/log/messages の内容を swupdate に限らず提供していただけますでしょうか?何か影響にありそうなメッセージがあるかもしれません。
申し訳ありません。swupdateでGrepしたものしか保存していませんでした。

> - swuファイルと sample_container_image.tar の両方のサイズを教えていただけますか?
swuファイル:35.4M
sample_container_image.tar:100MB

> - まだそんなにアップデートを行ってないと思いますが、この問題はどの頻度で再現しているか分かりますか?
4回実行中、1回発生しています。

e1234

2024年3月7日 16時21分

マルティネさん

お世話になっております。

> - アップデートが固まった際の /var/log/messages の内容を swupdate に限らず提供していただけますでしょうか?何か影響にありそうなメッセージがあるかもしれません。
申し訳ありません。ファイル添付いたしました。

ファイル ファイルの説明
Armadillo_swupdate中_varlog(全て).txt Armadilloをrebootしてから40分経過した間の、/var/log/messagesの内容(すべて)

at_dominique.m…

2024年3月7日 16時27分

マルティネです。

> [ログ等]

回答ありがとうございます。特に参考になる情報なかったですね…

> 4回実行中、1回発生しています。

似たようなイメージと Armadillo 640 を準備してこちらでも再現できないか確認してみます。
他の作業もありますので少し時間をいただきますが、来週の頭に再返事するようにします。

よろしくお願いします。

e1234

2024年3月8日 10時25分

マルティネさん

3/7に、また現象発生いたしました。
その時の手順とログを連絡いたします。

<手順>
hawkbitサーバへのデバイス登録について「ブラウザでデバイス登録する方法」で実施し、
上記Webページの「4.アップデート実行(Rollout)」を実行し、
hawkbitサーバーのWeb画面で、黄色表示(アクセス待ち)となっていることを確認しました。

16:05 イメージファイルがある状態のArmadilloをreboot(rebootコマンド実行)
16:22 アップデートが終わらなかったので、Armadilloの電源断→入
16:25 しばらくすると自動的に再起動しました。
   → 再起動完了後に状態確認すると、ソフトウェアアップデート完了していました。

> 似たようなイメージと Armadillo 640 を準備してこちらでも再現できないか確認してみます。
> 他の作業もありますので少し時間をいただきますが、来週の頭に再返事するようにします。
お忙しいところお手数おかけしますが、よろしくお願いいたします。

ファイル ファイルの説明
20240307_SWアップデートが終わらない.txt Armadilloの/var/log/messagesの内容

at_dominique.m…

2024年3月11日 12時58分

e1234さん

マルティネです。

> 3/7に、また現象発生いたしました。
> その時の手順とログを連絡いたします。

ログありがとうございます。
こちらでも Armadillo 640 で再現できて、停止する理由が分かりました(なぜか hawkbit モードで swupdate を起動すると SIGPIPE の処理が変わって、swupdate プロセスが SIGPIPE エラーで停止されます)、今月末のアップデートで修正しようと考えています。

修正は今月末になりますが、/etc/init.d/swupdate-hawkbit の start 関数の頭に「trap "" PIPE」を追加すると発生しなくなると思います。
(ファイルを編集した後は「persist_file /etc/init.d/swupdate-hawkbit」で永続化も必要です。)

一般的には悪影響はないと思いますが、それで別の不具合が発生したらすみませんが今月末の修正を待っていただければ幸いです。

よろしくお願いします。

e1234

2024年3月12日 16時16分

マルティネさん

お世話になっております。
ご連絡ありがとうございます。

> こちらでも Armadillo 640 で再現できて、停止する理由が分かりました(なぜか hawkbit モードで swupdate を起動すると SIGPIPE の処理が変わって、swupdate プロセスが SIGPIPE エラーで停止されます)、今月末のアップデートで修正しようと考えています。

了解いたしました。