クラウド運用者はユーザーにロールを割り当てます。ロールはイメージをアップロードおよび管理できるユーザーを決定します。運用者はイメージのアップロードと管理をクラウド管理者や運用者のみに制限するかもしれません。
You can upload images through the openstack image create
command or the Image service API. You can use the openstack
client
for the image management. It provides mechanisms to list and
delete images, set and delete image metadata, and create images of a
running instance or snapshot and backup types.
イメージをアップロードした後は、イメージを変更できません。
イメージ作成の詳細は 仮想マシンイメージガイド を参照してください。
イメージの一覧を取得して単一のイメージの詳細を確認するには、 openstack image list と openstack image show コマンドを使用します。
$ openstack image list
+--------------------------------------+---------------------------------+--------+
| ID | Name | Status |
+--------------------------------------+---------------------------------+--------+
| dfc1dfb0-d7bf-4fff-8994-319dd6f703d7 | cirros-0.3.5-x86_64-uec | active |
| a3867e29-c7a1-44b0-9e7f-10db587cad20 | cirros-0.3.5-x86_64-uec-kernel | active |
| 4b916fba-6775-4092-92df-f41df7246a6b | cirros-0.3.5-x86_64-uec-ramdisk | active |
| d07831df-edc3-4817-9881-89141f9134c3 | myCirrosImage | active |
+--------------------------------------+---------------------------------+--------+
$ openstack image show myCirrosImage
+------------------+------------------------------------------------------+
| Field | Value |
+------------------+------------------------------------------------------+
| checksum | ee1eca47dc88f4879d8a229cc70a07c6 |
| container_format | ami |
| created_at | 2016-08-11T15:07:26Z |
| disk_format | ami |
| file | /v2/images/d07831df-edc3-4817-9881-89141f9134c3/file |
| id | d07831df-edc3-4817-9881-89141f9134c3 |
| min_disk | 0 |
| min_ram | 0 |
| name | myCirrosImage |
| owner | d88310717a8e4ebcae84ed075f82c51e |
| protected | False |
| schema | /v2/schemas/image |
| size | 13287936 |
| status | active |
| tags | |
| updated_at | 2016-08-11T15:20:02Z |
| virtual_size | None |
| visibility | private |
+------------------+------------------------------------------------------+
以下のように、イメージ一覧の確認の際に、grep
を使用して一覧をフィルタリングすることができます。
$ openstack image list | grep 'cirros'
| dfc1dfb0-d7bf-4fff-8994-319dd6f703d7 | cirros-0.3.5-x86_64-uec | active |
| a3867e29-c7a1-44b0-9e7f-10db587cad20 | cirros-0.3.5-x86_64-uec-kernel | active |
| 4b916fba-6775-4092-92df-f41df7246a6b | cirros-0.3.5-x86_64-uec-ramdisk | active |
注釈
イメージの場所のメタデータを保存してクライアントが直接ファイルにアクセスできるようにするには、/etc/glance/glance-api.conf
ファイルで以下のステートメントを追加更新します。
show_multiple_locations = True
filesystem_store_metadata_file = filePath
filePath は、 OpenStack イメージ用のシステムでのマウントポイントと一意な ID を定義した JSON ファイルを指します。例:
[{
"id": "2d9bb53f-70ea-4066-a68b-67960eaae673",
"mountpoint": "/var/lib/glance/images/"
}]
Image service を再起動してから、以下の構文を使用してイメージの場所情報を確認します。
$ openstack --os-image-api-version 2 image show imageID
例えば、上に示したイメージ ID を使用して、以下のとおりコマンドを発行します。
$ openstack --os-image-api-version 2 image show 2d9bb53f-70ea-4066-a68b-67960eaae673
openstack image create を使用して、イメージを作成します。
$ openstack image create imageName
openstack image set を使用して、名前または ID によりイメージを更新します。
$ openstack image set imageName
以下の一覧は、イメージのプロパティを変更するために、create
コマンドと set
コマンドで使用できるオプション引数の一覧です。詳細は OpenStack Image コマンドリファレンス を参照してください。
以下の例は、CentOS 6.3 イメージを qcow2 形式でアップロードし、パブリックなアクセス用に設定するために使用するコマンドを表します。
$ openstack image create --disk-format qcow2 --container-format bare \
--public --file ./centos63.qcow2 centos63-image
以下の例は、ディスクバス、CD-ROM バス、VIF モデルのプロパティを指定して、既存のイメージを更新する方法を表します。
注釈
OpenStack を VMware vCenter Server と一緒に使用している場合、openstack image create を用いて vmware_disktype
と vmware_adaptertype
プロパティーを指定する必要があります。また、hypervisor_type="vmware"
プロパティーを設定することを推奨します。詳細は OpenStack Configuration Reference の Images with VMware vSphere を参照してください。
$ openstack image set \
--property hw_disk_bus=scsi \
--property hw_cdrom_bus=ide \
--property hw_vif_model=e1000 \
f16-x86_64-openstack-sda
現在、libvirt 仮想化ツールは、設定したハイパーバイザーの種別 (/etc/nova/nova.conf
ファイルの libvirt_type
で指定)を基にディスク、CD_ROM、VIF デバイスモデルを決定します。最適なパフォーマンスを実現するため、libvirt はディスクおよび VIF (NIC) モデルのいずれの場合も virtio を使用するように初期設定されています。この手法の欠点は、virtio ドライバーがないオペレーティングシステム (例、BSD、Solaris、Linux および Windows の以前のバージョン) を実行できない点です。
サポートされていないディスクまたは CD-ROM バスモデルを指定する場合は Disk_and_CD-ROM_bus_model_values_table (ディスクと CD-ROM のバスモデルの値) を参照してください。また、サポートされていない VIF モデルを指定する場合、インスタンスは起動できません。 VIF_model_values_table (仮想インターフェースのモデルの値) を参照してください。
有効なモデルの値は、以下の表にあるように libvirt_type
設定により左右されます。
ディスクと CD-ROM のバスモデルの値
libvirt_type 設定 | サポートされるモデルの値 |
---|---|
qemu または kvm |
|
xen |
|
仮想インターフェースのモデルの値
libvirt_type 設定 | サポートされるモデルの値 |
---|---|
qemu または kvm |
|
xen |
|
vmware |
|
注釈
デフォルトでは、ハードウェアプロパティーはイメージのプロパティーから取得されます。この情報がない場合は、 libosinfo
データベースからこれらの値が取得されます。
ゲストのオペレーティングシステムがデータベースにない場合や、 libosinfo
の利用が無効化されている場合は、システムのデフォルト値が使用されます。
ユーザーは、イメージのプロパティーにオペレーティングシステム ID として短い ID を設定できます。
$ openstack image set --property short-id=fedora23 \
name-of-my-fedora-image
別の方法として、ユーザーは id
を URL に設定することもできます。
$ openstack image set \
--property id=http://fedoraproject.org/fedora/23 \
ID-of-my-fedora-image
ISO イメージを Image サービス (glance) にアップロードできます。その後 Compute から ISO イメージを起動できます。
Image サービスで、以下のコマンドを実行します。
$ openstack image create ISO_IMAGE --file IMAGE.iso \
--disk-format iso --container-format bare
任意ですが、 Image サービスでアップロードを確認するには、次のコマンドを実行します。
$ openstack image list
Image service や Compute でイメージの作成に関する問題に遭遇した場合、以下の情報が作成プロセスのトラブルシュートに役立つかもしれません。
/var/log/nova/nova-compute.log
ファイルで unknown option -s
のエラーメッセージが表示されます。/var/log/nova/nova-api.log
と /var/log/nova/nova-compute.log
のログファイルでエラーメッセージを確認してください。Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.