VPN経由のインバンドIPMIを介してAnsibleを使用して、ベアメタルSuperMicro IPMIサーバーにイメージをインストールしてプロビジョニングする方法はありますか?
プロセスのインストール部分を自動化できるかどうかを確認しているので、AnsibleインベントリにIPを追加し、プレイブックを実行して、ベアメタルサーバーをPackerイメージで稼働させるだけです。
Supermicroサーバーでは通常、IPMI Webインターフェースを介して仮想メディアを接続できますが、supermicroから入手できる「smcipmitool」と呼ばれるcliツールを介して接続することもできます。
smcipmitoolはJavaベースであり、複数の世代とタイプのハードウェアをカバーしているため、操作するのが少し面倒ですが、仮想メディアのマウントのサポートが含まれている必要があります。
たとえば、完全に自動化されたインストール(たとえば、カスタムキックスタートファイルをISOに書き込む)を行うことで、ここからベアメタルの展開を自動化できるはずです。
IPMIコントローラーは、シリアルオーバーLANポート(SOL)(通常はttyS1)を公開するように設定することもできます。これがすべて適切に設定されている場合は、ipmitoolとsolインターフェイスをexpectスクリプトとともに使用して、キックスタートインストールでは実行できないほとんどすべての処理を実行できます。
IPMIを使用してイメージをインストールする唯一のIPMIベンダー中立の方法は、PICMGHPM.1仕様を使用することです。イメージの転送と検証に使用されるIPMIメッセージを定義します。 HPM.1イメージは、255セクションのシーケンスで構成できます。各セクションは、任意の組み合わせ、またはARM、Java、x86、FPGAコード、またはレシーバーハードウェアが定義するその他のものです。
HPM.1は、IPMItoolによって4年以上サポートされています。欠点は、IPMBバスを共有しているブレードシステムでは速度が遅いことです。ラジアルIPMBバスを使用すると高速になります。桁違いに高速化するには、ベンダーがHPM.2をサポートしていることを確認してください。
SuperMicroは多くのIPMIベンダーを使用しており、IPMIBMCハードウェア/ソフトウェアをそのベンダーに直接注文する必要がある場合があります。
smcipmitoolを使用してISOをマウントできます。ただし、isoをマウントする前に、「smcipmitoolシェル」を入力する必要があります。 ks.cfgファイルをルートISOツリーに追加し、boot.cfgを更新してブートすることにより、キックスタートISOを準備すると、完全に自動化されたインストールが可能になります。 Supermicroはsmcipmitoolを非常にスクリプト可能にしませんでした。