python-vm-builderに近代的な同等物はありますか?


11

私はpython-vm-builder(別名ubuntu-vm-builder)で行っていたものを実行するためのベストプラクティスの現代的な方法を見つけようとしています。

私は、ubuntu-core(以前はJeOSとして知られていたアーティスト)のようなものから開始し、いくつかのパッケージを追加し、初回実行スクリプトを定義する、スクリプト化された繰り返し可能な方法が欲しいです。

私が望んでいるのは、カスタムISOの回転に似たものです(ISOではありませんが、「インストール済み」システムになります)。結果は、NFSを使用したディスクレスPXEブートに適したカーネル、initrdイメージ、およびrootfsである必要があります。

どのようなツールを使用して、Ubuntuのネットブートイメージ(またはその点でUbuntuイメージ)を作成しますか?彼らは私のニーズに十分柔軟ですか?

Ubuntu統合テストに使用される新規インストール環境の作成に使用されるツールはどうですか?彼らは適切でしょうか?

実行時にrootfsは読み取り専用でマウントされるため、時間の経過とともにインスタンスを管理するつもりはないことに注意してください。私は、Ubuntuの新しいリリースごとに、また6か月間に定期的に自動インストールを再スピンインしたいと考えています。


2
現在のベストプラクティスの方法がわからないので、答えはありませんが、これは疑い深くChefまたはPuppet、おそらくVagrantのタスクのように聞こえます。
マルコセッピ

1
vmbuilderがもはやあなたのニーズに合わないのはなぜですか?debootstrapベースシステム(ディスクイメージにコピーできる「chroot」)の作成に使用します。見て、それが役立つかどうかを確認してください。
セーラム

vmbuilderは機能すると思いますが、これは長期的なシステム向けであるため、すでに水中で死んでいるビットの上に構築したくありません。
-jderose

回答:


7

公式のクラウドイメージを直接使用し、cloud-localdscloud-utilsパッケージから)を使用して小さなISOイメージを作成し、cloud-initの「nocloud」データソースとして使用できます。

次に、cloud-initユーザーデータ(例)を単一のメカニズムとして使用して、パッケージを追加し、ローカルのVM上だけでなく、公式のUbuntuクラウドイメージを提供するクラウドプロバイダー全体で独自の初回実行スクリプトを実行できます。

cloud-localdsパラメーターなしで実行すると、kvmを直接使用してVMを構成および実行するための使用例が表示されます。

他の方法でVMを実行するには、クラウドイメージ(たとえば、12.04のhttps://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.imgからダウンロード)を提供します。最初のディスク、およびISOイメージ出力をcloud-localdsCD-ROMとして提示します。

詳細については、Scott Moserのブログ投稿をご覧ください。


1
ただし、デスクトップシステムを使用する場合、これがどの程度適用できるかはわかりません。
ロビーバサック

ありがとう!これは私が探しているようなもののように見えます。また、この環境はデスクトップシステム用ではありません。私は、MAASの短命環境のようなものを構築しています。Ubuntuコアだけを言うよりも包括的である必要がありますが、最小限のUbuntuサーバーインストールよりもかなり小さくしたいと思います。
jderose

2

ISOをパッケージ化したことがないので、自分の経験からコメントすることはできませんが、質問に対する答えはCobbler(http://cobbler.github.com)のようです。

Ubuntu Community Documentationから:
「UbuntuはUbuntuマシンの優先プロビジョニングサーバーとしてcobblerを使用しています。」-  https://help.ubuntu.com/community/Cobbler


1
help.ubuntu.com/community/Cobbler古くなっています。私はちょうどそれが更新されるように頼んだ。申し訳ありませんが、これは以前は見逃されていました。
ロビーバサック

1
ありがとう!私はおそらくCobblerでやりたいことをすることができますが、私が目指しているものには行き過ぎているようです。プロビジョニングサービス(およびそれがもたらす複雑さ)は必要ありません。非常に単純なプロビジョニングツールです。debootstrapよりも高いレベルを探していますが、それでも使い捨てのコマンドラインまたはAPIツールです。
-jderose

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.