web-dev-qa-db-ja.com

OpenStackでのUbuntuクラウドゲストイメージの使用はどこに文書化されていますか?

DevstackまたはOpenStackデプロイメントをセットアップするたびに、最新のLTS Ubuntuサーバーイメージを追加したいと思います。私は過去に何度か成功しましたが、次のようなもので達成できると信じています。

wget http://uec-images.ubuntu.com/releases/12.04.2/release/ubuntu-12.04.2-server-cloudimg-AMD64-disk1.img
glance image-create --is-public true --disk-format qcow2 --container-format bare --name "precise" < ubuntu-12.04.2-server-cloudimg-AMD64-disk1.img

しかし、これを行うために公式にサポートされているドキュメントはどこで入手できますか?どうすれば貢献できますか?私は時々問題を経験し、公式の指示がなければ、それが上記のコマンドなのか、私の展開なのかはわかりません。 OpenStackの公式ドキュメントおよび/または付随するDisqusコメントにこれらの指示を2回追加しようとしましたが、これらは削除され、これを行うための一貫性のあるサポートされたマニュアルが見つかりません。非常に基本的な手順を期待します。

また、ゲストイメージに対するわかりにくいcloud-initオプションについてはどうですか?それらの使用方法に関する指示はどこにありますか?端末とWeb UIからですか?私はかつて、ソースコードでこの情報を求めて釣りに行かなければなりませんでした。

私がこれまで見つけたのは 利用可能な画像をリストしているサイト ですが、それが記載されていないもの画像のフォーマットは何ですか-私は常にこの情報をグーグルで検索する必要があります。 EC wiki には、独自のイメージの作成方法に関する多くのレシピがリストされていますが、既存のイメージ(または既成のubuntuクラウドイメージ)の使用方法はリストされていません。次に、最も簡単に見つかる buntu.comの「クラウド」カテゴリ があります。これは、プロモーションパンフレットと情報のないクラウドイメージのリストにのみリンクしています。

私はこれがセミバグレポートであることを知っています(これを修正するか、修正するのを手伝いたいです:))が、私が出した質問に対する答えも知りたいです。

8
metakermit

私は同じ問題を抱えていたので、すべての「trusty-server-cloudimg-AMD64」プレフィックス付きイメージをダウンロードすることになりました。解凍すると、いくつかの情報を提供するREADME.filesを含むtarがありました。

この圧縮tarアーカイブには、このマシンイメージに関連するファイルが含まれています。各ファイル名の先頭には、リリースおよびアーキテクチャ情報を示す定数文字列が付けられます。たとえば、プレフィックスは「maverick-server-cloudimg-AMD64」とすることができます。この場合、ファイルの名前はmaverick-server-cloudimg-AMD64.img maverick-server-cloudimg-AMD64-vmlinuz-virtualのようになります。

次のファイルのすべてまたは一部がアーカイブに存在する場合があります。

  • .imgこのファイルはパーティションイメージです。バンドル、アップロード、およびAmazon Machine Image(AMI/emi)としてEC2、EucalyptusまたはOpenStackに登録できます。

  • -disk1.imgこれはqcow2圧縮ディスクイメージです。 OpenStackにアップロードするか、kvmから直接起動できます。非テスト環境で使用する前に、おそらくイメージを圧縮解除(qemu-img convert)する必要があります。

  • -uefi1.imgこれは、GPTパーティションとUEFIブートローダーを持つqcow2圧縮ディスクイメージです。 UEFI、BIOS/GPT、PVGRUB(GPTパーティションテーブルのサポート付き)から起動可能です。OpenStackまたはkvmから直接起動可能です。テスト以外の環境で使用する前に、イメージを解凍(qemu-img変換)する必要があります。

  • -root.tar.gzこ​​れは、ルートファイルシステムの内容を含む圧縮tarファイルです。基本的に、「tar cpzf-/」。

  • -vmlinuz-virtualこれはLinuxカーネルです。バンドル、アップロード、およびUECをAmazon Kernel Image(aki/eki)として登録できます。 '-virtual'文字列は、このカーネルの元となったUbuntu Linuxパッケージを表します。 「-server」または別の文字列である可能性があります。

  • -initrd-virtualこれはLinux initrdです。 UECをバンドル、アップロード、および登録して、Amazon Ramdiskイメージ(ari/eri)として登録できます。すべての画像がinitrdを必要とするわけではないため、このファイルが存在しない場合があります。存在しない場合、イメージはRAMディスクなしで登録する必要があります。

  • -loaderこのファイルは、ゲストイメージをロードできるマルチブート準拠のイメージです。ホストオペレーティングシステムが10.10以降(LP:#611144)のUECインストールでは、これはカーネル(eki)として登録できます。 Amazonがリリースした機能「ユーザー提供のカーネルを有効にする」に似た機能を提供します。ローダーを使用してインスタンスを起動すると、インスタンス内で実行されたカーネルのアップグレードがその後の起動に影響を与えます。

  • -floppyこのファイルはフロッピーディスクイメージです。 EC2またはUECの内部での実行には、有用でも関連性もありません。このファイルの目的は、クラウド外で.imgを起動できるようにすることです。クラウド環境の外部(メタデータサービスが存在しない場所)で起動するには、次のkvmコマンドラインを使用できます。kvm -boot a -fda -floppy -drive file = .img、if = virtioこれは不要です。 -disk1.imgが使用可能な場合、通常は廃止されます。

5
Rectifier

以下を使用して画像の形式を見つけることができます。

# qemu-img info image_filename

これにより、rawまたはqcow2であるかどうか、およびサイズがわかります。

1
Athir Nuaimi