はじめに
Oracle Cloud Infrastructure(以下OCI)では、イメージを指定して Compute Instance を作成します。Oracle 側で提供されているイメージを使用してCompute Instance を作成することもできますし、独自に作成したカスタムイメージを準備して作成することもできます。
今回の記事では、Windows Server 2012 の汎用的なカスタムイメージを作成する手順を説明します。汎用的なイメージとは、インスタンス固有の情報を削除した事を指します。
削除される主な内容は以下の通りです。
- SIDと呼ばれる Windows に設定される ID の削除
- イベントログ
- ホスト名やIPアドレスなどのネットワーク設定
- デバイスやドライバの情報
汎用的なカスタムイメージを作成したい理由を説明します。OCIで提供されている Compute Instance のイメージは英語となっており、日本語のものは提供されていません。日本語版 Windows Server を多く作成するときに、1個ずつ日本語化を設定していくのは手間がかかります。汎用化された日本語のカスタムイメージを使うことで、手間の削減が可能です。
事前準備
- OCI 上で Compute Instance (Windows Server 2012 Standard) の作成
- 日本語言語パックのインストール
- Time zone を日本に変更
- Windows Updateの実施
- その他イメージに事前に入れておきたいアプリケーションがあればインストール
詳細な手順は、適当にググって探します。
汎用的なカスタムイメージの作成
Oracle がイメージの汎用化に使うツールを提供しています。以下のURLで、Windows OS に合わせた3種類のツールを公開しています。
- ベア・メタルX7インスタンス
- ベア・メタルX5とVM X5、X7インスタンス
- Windows Server 2008インスタンス
今回は仮想マシンイメージとなるため、「ベア・メタルX5とVM X5、X7インスタンス」から、「oracle-cloud_windows-server_generalize_2019-02-06.SED.EXE」をダウンロードします。
事前準備で作成した Windows Server 2012 にファイルを格納して、管理者として実行します。ツールの解凍先「C:\Windows\Panther」を入力して、OKを押します。「C:\Windows\Panther」は、Compute Instance 作成時に Default で作成されているディレクトリとなります。
以下の4つのファイルが生成されます
- Generalize.cmd
- Post-Generalize.ps1
- Specialize.cmd
- unattend.xml
汎用化処理の時に、Windows Server のデフォルトアカウント opc とそのパスワードを保持し続けたい場合は、以下のファイルの imageType をcustom
に変更します。今回は、opcのデフォルトパスワードは保持しておきたいため、custom
と変更します。
C:\Program Files\bmcs\imageType.json
{
"imageType": "custom"
}
解凍したファイルの中にある、Generalize.cmd
を管理者として実行します。実行すると、コマンドプロンプトの画面が表示され、以下のように Sysprep が自動的に実行されます。
実行を待機していると、自動的に リモートデスクトップから遮断されます。リモートデスクトップから遮断した直後では、まだ汎用化処理をしているため、ここから数分待ちます。
OCI のコンソールにある、Compute Instance の一覧から事前準備で作成したインスタンスを指定して、Create Custom Image を押します。
Create Custom Image を実行します。約5分ほど作成時間が掛かります。
これで、汎用化された日本語版の Custom Image が作成されます。Custom Image を使用して新たに 日本語版のWindows Instance を簡単に作ることが可能です。RDP でアクセスする時には、以下のユーザーとパスワードでログインを行います。パスワードは忘れずに変更をしておきましょう。
- opc ユーザー
- Custom Image 作成時に、opcユーザーの既存パスワード
参考URL