従来の Linux 仮想マシンをイメージとしてキャプチャする方法
重要
クラシック VM は 2023 年 3 月 1 日に廃止される予定です。
ASM の IaaS リソースを使用する場合は、すぐに移行の計画を開始し、2023 年 3 月 1 日までに完了してください。ASM の IaaS リソースを使用する場合は、すぐに移行の計画を開始し、2023 年 3 月 1 日までに完了してください。 Azure Resource Manager の多数の機能強化を活用するために、早急に切り替えを行うことをお勧めします。
詳細については、「2023 年 3 月 1 日までに IaaS リソースを Azure Resource Manager に移行する」を参照してください。
注意
Azure には、リソースの作成と操作に関して、2 種類のデプロイ モデルがあります。Resource Manager とクラシックです。 この記事では、クラシック デプロイ モデルの使用方法について説明します。 最新のデプロイメントでは、リソース マネージャー モデルを使用することをお勧めします。 Resource Manager モデルを使用してこれらの手順を実行する方法について説明します。
2017 年 11 月 15 日から、仮想マシンは Azure portal でのみ使用できます。
ここでは、Linux を実行する従来の Azure 仮想マシン (VM) をキャプチャして、他の仮想マシンを作成する際にイメージとして使用する方法を示します。 このイメージには、VM に接続された OS ディスクやデータ ディスクが含まれます。 ネットワーク構成は含まれないため、イメージから他の VM を作成するときは、ネットワーク構成を行う必要があります。
Azure では、イメージは [イメージ] に格納されます。アップロードしたすべてのイメージがこの場所に格納されます。 イメージの詳細については、「Azure の仮想マシン イメージについて」を参照してください。
開始する前に
これらの手順は、既にクラシック デプロイ モデルを使用して Azure VM を作成し、データ ディスクの接続を含め、オペレーティング システムの構成が完了していることを前提としています。 VM を作成する必要がある場合は、Linux 仮想マシンを作成する方法に関する記事をお読みください。
仮想マシンをキャプチャする
任意の SSH クライアントを使用して、VM に接続します。
SSH のウィンドウで、次のコマンドを入力します。
waagent
からの出力は、このユーティリティのバージョンによって若干異なる場合があります。sudo waagent -deprovision+user
前のコマンドは、システムをクリーンアップし、再プロビジョニングに適した状態にします。 この操作では次のタスクが実行されます。
すべての SSH ホスト キーの削除 (構成ファイルで Provisioning.RegenerateSshHostKeyPair が 'y' の場合)
/etc/resolv.conf 内のネームサーバー構成の消去
/etc/shadow の
root
ユーザーのパスワードの削除 (構成ファイルで Provisioning.DeleteRootPassword が "y" の場合)キャッシュされた DHCP クライアントのリースの削除
ホスト名を localhost.localdomain にリセット
(/var/lib/waagent から取得した) 前回プロビジョニングされたユーザー アカウント および関連データの削除
注意
プロビジョニング解除では、イメージを "汎用化" するためにファイルとデータが削除されます。 このコマンドは、必ず新しいイメージ テンプレートとしてキャプチャする VM 上で実行してください。 プロビジョニング解除により、イメージからすべての機密情報が削除されることや、イメージが第三者への再配布に適した状態になることが保証されるわけではありません。
「 y 」と入力して続行します。
-force
パラメーターを追加すると、この確認手順を省略できます。「 Exit 」と入力して、SSH クライアントを閉じます。
注意
残りの手順は、クライアント コンピューターに既に Azure CLI がインストールされている ことを前提としています。 次の手順はすべて、Azure Portal でも実行できます。
クライアント コンピューターから Azure CLI を開き、Azure サブスクリプションにログインします。 詳細については、「 Connect to an Azure subscription from the Azure CLI (Azure CLI から Azure サブスクリプションへの接続)」を参照してください。
注意
Azure Portal で、ポータルにログインします。
サービス管理モードであることを確認します。
azure config mode asm
既にプロビジョニングが解除された VM をシャットダウンします。 次の例では、
myVM
という名前の VM をシャットダウンします。azure vm shutdown myVM
必要に応じて、
azure vm list
を使用してサブスクリプションで作成されたすべての VM の一覧を表示できます。注意
Azure Portal を使用している場合は、VM を選択し、[停止] をクリックしてその VM をシャットダウンします。
VM が停止しているときにイメージをキャプチャします。 次の例では、
myVM
という名前の VM をキャプチャし、myNewVM
という名前の一般化されたイメージを作成します。azure vm capture -t myVM myNewVM
-t
サブコマンドによって、元の仮想マシンが削除されます。注意
Azure Portal で、ハブ メニューから [イメージ] を選択してイメージをキャプチャできます。 イメージについて、名前、リソース グループ、位置情報、オペレーティング システムの種類、およびストレージ BLOB パスを指定する必要があります。
新しいイメージが、新しい VM の構成に使用できるイメージの一覧に表示されるようになりました。 次のコマンドを実行すると、新しいイメージを表示できます。
azure vm image list
Azure Portal で、[コンピューティング] サービスに属する [VM イメージ (クラシック)] に新しいイメージが表示されます。 [VM イメージ (クラシック)] にアクセスするには、Azure サービス一覧の上部にある [すべてのサービス] をクリックし、[Compute] サービスを参照します。
次の手順
イメージを使用して VM を作成する準備ができました。 Azure CLI コマンド azure vm create
を使用し、作成したイメージの名前を指定することができます。 詳細については、クラシック デプロイ モデルでの Azure CLI の使用に関する記事をご覧ください。
また、Azure Portal を使用して、[イメージ] メソッドを使用し、作成したイメージを選択することで、カスタム VM を作成することもできます。 詳細については、カスタム VM を作成する方法に関する記事をご覧ください。