CentOS Stream 9
Sponsored Link

OpenStack Dalmatian : インスタンスを起動する (Windows)2024/10/10

 

Windows をインストールした仮想マシンインスタンスを起動します。

[1] 任意の Compute ノードで Windows のイメージを作成して、Glance へ登録します。
例として、Windows Server 2022 のイメージを作成します。
Windows Server 2022 インストール ISO イメージは事前にダウンロードしておきます。
# Windows 用 VirtIO ドライバーダウンロード

[root@dlp ~(keystone)]#
wget https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso -O /home/virtio-win.iso
# Windows インストール

[root@dlp ~(keystone)]# virt-install \
--name Win2k22 \
--ram 6144 \
--disk path=/var/kvm/images/Win2k22.img,size=40,bus=virtio \
--disk path=/home/virtio-win.iso,device=cdrom \
--vcpus 4 \
--os-variant win2k22 \
--network default,model=virtio \
--graphics vnc,listen=0.0.0.0,password=password \
--video vga \
--cdrom /home/Win2022_EN-US_20348.169.210806-2348.fe.iso 


# セキュアブートを有効にする場合は以下

[root@dlp ~(keystone)]# virt-install \
--name Win2k22 \
--ram 6144 \
--disk path=/var/kvm/images/Win2k22.img,size=40,bus=virtio \
--disk path=/home/virtio-win.iso,device=cdrom \
--cpu host-passthrough \
--vcpus=4 \
--os-variant win2k22 \
--network default,model=virtio \
--graphics vnc,listen=0.0.0.0,password=password \
--video virtio \
--cdrom /home/Win2022_EN-US_20348.169.210806-2348.fe.iso \
--features kvm_hidden=on,smm=on \
--boot loader=/usr/share/edk2/ovmf/OVMF_CODE.secboot.fd,loader_ro=yes,loader_type=pflash,nvram_template=/usr/share/edk2/ovmf/OVMF_VARS.secboot.fd 
[2] インストール中、以下の画面で、インストール先のディスクを認識させるために VirtIO ドライバーをロードします。
[Load driver] をクリックして次へ進みます。
[3] [virtio-win.iso] 配下のフォルダーを指定します。
x64 システムの場合、[amd64] - [2k22] を選択して次へ進めば、適切なドライバーが選択されます。
この後は通常のインストールと同じです。
[4] インストール後、システムにログオンし、ネットワーク デバイス にも VirtIO ドライバーを適用しておきます。
その他、必要に応じて、ディスプレイや PCI デバイスにも VirtIO ドライバーを適用します。
[5] PowerShell を管理者権限で起動し、Openstack システムから設定変更できるよう ExecutionPolicy を Unrestricted に変更しておきます。
PS > Set-ExecutionPolicy Unrestricted
[6] CloudbaseInit をダウンロードしてインストールします。
PS > curl.exe -L https://cloudbase.it/downloads/CloudbaseInitSetup_Stable_x64.msi -o cloudbaseinit.msi
PS > ./cloudbaseinit.msi
[7] Sysprep を実行してシャットダウンするために、全てチェックを入れて [Finish] します。
[8] 作成した Windows イメージを Glance に登録します。
[root@dlp ~(keystone)]#
openstack image create "Win2k22" --file /var/kvm/images/Win2k22.img --disk-format qcow2 --container-format bare --public
# セキュアブート有効でインストールした場合は以下

[root@dlp ~(keystone)]#
openstack image create "Win2k22" --file /var/kvm/images/Win2k22.img --disk-format qcow2 --container-format bare --public \
--property hw_firmware_type=uefi --property hw_machine_type=q35 --property os_secure_boot=optional

# 作成した VM の定義は削除

[root@dlp ~(keystone)]#
virsh undefine Win2k22

[9] 任意の Openstack ユーザーで Windows インスタンスを作成して起動します。
[cent@dlp ~(keystone)]$
openstack flavor list

+----+-----------+-------+------+-----------+-------+-----------+
| ID | Name      |   RAM | Disk | Ephemeral | VCPUs | Is Public |
+----+-----------+-------+------+-----------+-------+-----------+
| 1  | m1.tiny   |  2048 |   10 |         0 |     1 | True      |
| 2  | m1.small  |  4096 |   10 |         0 |     2 | True      |
| 3  | m1.medium |  8192 |   10 |         0 |     4 | True      |
| 4  | m1.large  | 16384 |   10 |         0 |     8 | True      |
| 5  | m2.large  | 16384 |   10 |        10 |     8 | True      |
| 6  | m2.medium |  8192 |   50 |         0 |     4 | True      |
+----+-----------+-------+------+-----------+-------+-----------+

[cent@dlp ~(keystone)]$
openstack image list

+--------------------------------------+----------------+--------+
| ID                                   | Name           | Status |
+--------------------------------------+----------------+--------+
| 75e0d976-4075-4488-8f26-87d4a50aebe9 | CentOS-Stream9 | active |
| cb5546ad-e462-4250-a637-0a52d3e9707c | Win2k22        | active |
+--------------------------------------+----------------+--------+

[cent@dlp ~(keystone)]$
openstack security group list

+--------------------------------------+------------+------------------------+----------------------------------+------+
| ID                                   | Name       | Description            | Project                          | Tags |
+--------------------------------------+------------+------------------------+----------------------------------+------+
| 8cf6191b-d9e3-4ffa-bbe0-505a66631030 | secgroup01 | secgroup01             | 756e2b4937c44d3991028e294f92d89a | []   |
| b7870e42-4f47-439b-adbf-6e9912bcb675 | default    | Default security group | 756e2b4937c44d3991028e294f92d89a | []   |
+--------------------------------------+------------+------------------------+----------------------------------+------+

[cent@dlp ~(keystone)]$
openstack network list

+--------------------------------------+------------+--------------------------------------+
| ID                                   | Name       | Subnets                              |
+--------------------------------------+------------+--------------------------------------+
| 6939c291-ee09-481b-985a-baaee9248d3b | sharednet1 | 8a92efea-7b16-45b0-9f99-9e787371e95b |
+--------------------------------------+------------+--------------------------------------+

[cent@dlp ~(keystone)]$
netID=$(openstack network list | grep sharednet1 | awk '{ print $2 }')
# [admin_pass=***] : 任意の Administrator パスワードを設定

[cent@dlp ~(keystone)]$
openstack server create --flavor m2.medium --image Win2k22 --security-group secgroup01 --nic net-id=$netID --property admin_pass="P@ssw0rd01" Windows-2022
[cent@dlp ~(keystone)]$
openstack server list

+--------------------------------------+--------------+---------+-----------------------+----------------+-----------+
| ID                                   | Name         | Status  | Networks              | Image          | Flavor    |
+--------------------------------------+--------------+---------+-----------------------+----------------+-----------+
| c61ec5b7-da84-4cf7-ac7a-008ff8298a8a | Windows-2022 | ACTIVE  | sharednet1=10.0.0.254 | Win2k22        | m2.medium |
| b993f42a-adc7-45dd-b36f-6131a12b9eb7 | CentOS-St9   | SHUTOFF | sharednet1=10.0.0.230 | CentOS-Stream9 | m1.small  |
+--------------------------------------+--------------+---------+-----------------------+----------------+-----------+

[cent@dlp ~(keystone)]$
openstack console url show Windows-2022

+----------+-----------------------------------------------------------------------------------------------+
| Field    | Value                                                                                         |
+----------+-----------------------------------------------------------------------------------------------+
| protocol | vnc                                                                                           |
| type     | novnc                                                                                         |
| url      | https://dlp.srv.world:6080/vnc_auto.html?path=%3Ftoken%3D2e1e1088-d923-4093-a4ce-2ca52c98d42a |
+----------+-----------------------------------------------------------------------------------------------+
[10] 初回アクセス時はパスワード変更を求められます。
現在のパスワードはインスタンス作成時に指定したパスワードです。
[11] パスワード変更後、正常にログオンできれば OK です。
関連コンテンツ