ひとりAdvent Calendar 4日目です。
RHELを中心にLinuxのトラブルシューティングのための基本情報を集めるsosreportのバージョン3.6でAzure のpluginを更新するpull requestを出していたのですが、無事マージされてリリースされています。
先日英語ブログでも公開したのですが、アップデートされた新機能を紹介したいと思います。
大きな変更点として、今迄はAzure pluginの有効化の判定が動いていなかったのですが、今回からWALinuxAgentパッケージがインストールされていれば自動的に有効化されるようになりました。-e azure
というオプション指定が不要になりました。
$ sudo sosreport
また、追加で以下の2つの情報を収集するようになりました。
instance metadata
Azure Instance Metadataは実行中の仮想マシンの状態を取得するAPIです。仮想マシン内部からは認証なしに取得することができます。
この情報をAzure Pluginによりsosreportが収集するようになりました。 収集したデータは、アーカイブしたレポートの sos_commands/azure/instance_metadata.json
に出力されています。
Azure RHUIへの接続の証明書情報
これはMarketplaceから起動したRHELのときのみ取得する情報です。というのも、Azure RHUIがMarketplace固有のリポジトリであるためです。もう少し詳しく説明すると、Marketplace から起動したRHELマシンは、時間課金制のOn-Demand subscriptionとものでRHELのサブスクリプションに登録されています。このサブスクリプションではユーザーによるサブスクリプションの登録作業なしに、仮想マシン起動時にサブスクリプションの有効化処理が実施され、起動と停止の時間から時間課金分のサブスクリプション費用がAzureの利用料金に加算されて請求されます。RHELというと、subscription-managerコマンドを実行して、サブスクリプションの登録解除や製品ごとのyumリポジトリーを購読したりしますが、そういう処理は不要です。何もすることなくすぐにパッケージが利用できます。ただし、逆にいうとこのRHUIに登録されていないパッケージはOn-Demandサブスクリプションでは利用できません。また、基本的にパッケージは最新のマイナーバージョン提供されるため、古いマイナーバージョンで固定して使い続けるという方法も難しくなっています。詳細については、こちらのドキュメントを参照してください。
sosreportの話に戻ると、そのように自動で処理されるが故に、問題が起きている場合に気付きにくいということがありました。RHUIに接続するにはクライアント証明書が必要なため、このクライアント証明書の情報と実際にRHUIに接続できるかどうかの確認結果を収集するようになりました。収集したデータは、アーカイブしたレポートの sos_commands/azure/
以下に出力されています。
もちろん引き続き、WALinuxAgentの設定ファイルとログも収集されているので、Azure上のRHELで何が問題があれば、とりあえずsosreportを取得すると、その後の調査の手掛かりとすることができます。ぜひアップデートしてお試しください。