Vyatta用のVagrantプラグイン

先日、PackerでVyattaのVagrant用boxを作るという記事を書きましたが、Vyattaはそのままではvagrant haltが実行できないなど不便です。

そこで、VyattaをVagrantから制御するためのプラグインを作りました。

使い方は下記の通りです。

vagrant plugin install vagrant-vyatta
vagrant box add vyatta http://higebu.com/box/vyatta-livecd_VC6.5R1_amd64_virtualbox.box # chefなし
vagrant box add vyatta http://higebu.com/box/vyatta-livecd_VC6.5R1_amd64_chef_virtualbox.box # chef入り
vagrant init vyatta
vagrant up
vagrant halt

vagrant haltの他にホスト名の設定とネットワークの設定ができるようにしています。

ソースはGithub …

more ...

PackerでVyattaのVagrant用boxを作る

PackerVagrantを作った@mitchellhさんが作ったOSイメージ作成ツールです。 インストールはダウンロードページから自分のOSにあったバイナリを取ってきて入れるだけです。

今回はあまり見かけないVyattaのboxを作ってみました。 テンプレートはgithubに置いてあります。

packer-templates

今のところ6.4、6.5R1、6.6R1の64bitのものを置いてあります。 Packerのバージョンは0.2.3、VirtualBoxのバージョンは4.1.26で作っています。 他のバージョンだと動かないかもしれません。 VMware用も書いておいたのでVMware Fusionでも動くと思います。(試してません。)

テンプレートを使うときは以下のようにします。

packer build --only=virtualbox template.json # virtualboxのみ
packer build --only=vmware template.json # vmwareのみ

テンプレートの作り方ですが、基本的にはveeweeのDebian用のテンプレートをパクっています。 Vyattaのために少し工夫したのは以下の点です。

  • Vyattaにはdebian-installerが入っていないので初期設定をコンソールでやっている
  • シェルでVyattaのsetコマンドを使えるようにしている
WRAPPER=/opt/vyatta …
more ...