chefやansibleのテストの際にvagrant+VirtualBoxを使用していたが如何せんvagrant upが遅い、遅すぎる。ストレイト・クーガーに合わせる顔がない。というわけで、vagrant-libvirtで高速検証環境の構築を行った際のメモ。historyからの掘り起こし、なので所々動かない所があるかもしれないけどあくまでメモ。 想定環境 Centos7 x86_64 libvirt 1.2.17 vagrant 1.8.3 必要なパッケージのインストール libvirt関連
chefやansibleのテストの際にvagrant+VirtualBoxを使用していたが如何せんvagrant upが遅い、遅すぎる。ストレイト・クーガーに合わせる顔がない。というわけで、vagrant-libvirtで高速検証環境の構築を行った際のメモ。historyからの掘り起こし、なので所々動かない所があるかもしれないけどあくまでメモ。 想定環境 Centos7 x86_64 libvirt 1.2.17 vagrant 1.8.3 必要なパッケージのインストール libvirt関連
開発の過程で、開発用のVagrantのディスク容量が足りなくなったので、増やすことにした。 VirtualBoxのゲストOSのディスク容量を増やすでまとめた方法は、ディスクイメージがVDI形式の場合。VagrantのディスクイメージはVMDKなので、この手順では増やせない。 そこでこのエントリでは、VMDK形式のディスクイメージを増やす手順をまとめた。 手順は以下のとおり。 容量を増やすVMDK形式の仮想ディスクから、VDI形式の仮想ディスクを作成する。 作成したディスクの容量を増やす。 容量を増やしたVDI形式の仮想ディスクから、VMDK形式の仮想ディスクを作成する。 ゲストOSの仮想ディスクを差し替える。 後処理 今回は、容量を8GiBから20GiBに増やす。 ゲストOSを停止する 対象のゲストOSを停止する。 $ vagrant halt ==> default: Attemptin
Vagrant 1.8 で、ansible_local という新しいプロビジョナが追加されました。 これは、Ansible をゲスト(VM)側にインストールして、ローカルコネクションで VM 内で実行するものです。これは、まさに待ち望んでいた機能ので紹介します。 Vagrant + Ansible で気を付けること 以前から、Vagrant + Ansible の組み合わせでローカルの開発環境を作るなら、ホスト側に Ansible を入れるのではなく、ゲスト(VM)側に Ansible を入れる方が良いと考えていました。勉強会などでも良く話していたのでお聞きになった方もいるかと思います :) ホスト側に Ansible を入れない理由は、3 つあります。 まず、ホストに Ansible をインストールする手間が増える点です。Vagrant と Virtualbox のインストール(あとコー
Vagrant + VirtualBox の環境で VM に CPU コアを2つ割り当てる設定を Vagrantfile に書こうとした。 config.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--memory", "2048", "--cpus", "2"] end 一見よさそうだが、これで起動すると VM の動作が めちゃ遅い! このとき、VirtualBox の設定を見るとシステムの欄に 「無効な設定が見つかりました」 という警告が出ている。 どうやら、警告文によるとコアを複数割り当てる場合には I/O APIC を有効化 というチェックボックスを ON にする必要があるようだ。 これを Vagrantfile の記述によって設定するには上のスクリプトにさらに "--ioapic", "on" と
vagrantのmountエラー 自分でvagrant packageして作成したboxからvagrant upした際にこんなエラーが出る。 Failed to mount folders in Linux guest. This is usually beacuse the "vboxsf" file system is not available. Please verify that the guest additions are properly installed in the guest and can work properly. The command attempted was: mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group apache | cut -d: -f3`,dmode=777,fmode=77
結構ハマってしまったのでメモ。 とりあえず解決はしたけどあまり理屈はわかってない。 参考にした記事 vagrantでmountエラーの解決方法 Vagrantでフォルダがmountできないエラーが出たときの対応 Guest Additions の更新ができなくなった vagrant-vbguest はインストールしていたので、Guest Additions の更新は自動的にやってくれるはずだったのですが Vagrantfile を修正して vagrant reload したら以下のようなエラーが出た。 GuestAdditions versions on your host (4.3.26) and guest (4.3.6) do not match. Loaded plugins: fastestmirror, versionlock Loading mirror speeds fro
インストール vagrant-cachier プラグインをインストールするには、vagrant plugin install コマンドを実行するだけです。 $ vagrant plugin install vagrant-cachier Vagrantfile への記述 vagrant-cachier プラグインを有効にするには、Vagrantfile に下記の設定を行います。config.cache.scope では、キャッシュスコープを設定します。 下記では、:boxを指定しており、これは、プロビジョンでインストールしたパッケージを Box 単位でキャシュします。同一 Box を使う Vagrantfile であれば、別の VM でもキャッシュを共有することができます。 私の用途であれば、この設定が使いやすそうです。 あとは、通常どおり、vagrant up を行うとプラグインが有効と
Provisioner name: ansible The Vagrant Ansible provisioner allows you to provision the guest using Ansible playbooks by executing ansible-playbook from the Vagrant host. Warning: If you are not familiar with Ansible and Vagrant already, we recommend starting with the shell provisioner. However, if you are comfortable with Vagrant already, Vagrant is a great way to learn Ansible. Setup RequirementsI
「さくっとvagrant upでJavaEEアプリ動かせたらいいなー」 という電波をキャッチしたので作ってみました。 作ってみましたと言っても、Chefのコミュニティcookbookを持ってきて使うようにしただけですが :) 以下、使い方です。 CentOS6のBoxファイルを準備 まず、CentOS6のBoxファイルを準備してください。 Boxファイルを持ってない人は @hnakamur2 さんがPackerテンプレートを公開してくださってるので、 PackerとこのテンプレートでBoxファイルを作ってください。 OSXでpackerでCentOS6.4のVirtualBox VMを作成する GitHub hnakamur/my-packer-template-files 僕はCentOS6.5用のテンプレートでBoxファイルを作りました。 vagrant box add 名前はcent
去年辺りからimmutable infrastructureが盛り上がってきている感があります。 サーバーの環境をコードで記述するツールにはPuppet、Chefなどがありますが、 今回はAnsibleを触ってみます。 Ansible is Simple IT Automation この記事ではVagrantでCentOS6.5を入れて、その上にAnsibleでJenkinsを入れるところまでを説明します。 (入門向けで、Ansibleについて突っ込んだことは書いていません) Ansibleとは? AnsibleはPuppet、Chefなどと同様に構成管理ツールです *1 一番の特徴はPuppet, Chefに比べてリモートホストに特別な設定が必要ないことでしょうか。 ssh接続ができて、python2.4以上が入っていれば動きます。 設定はYAMLで記述し、特にpythonを知らなくても
In this post we will cover moving from a simple Vagrant / VirtualBox / Ansible development environment to a one based on Docker. Background During SCALE 12x I was lucky enough to attend a talk on Docker given by Jérôme Petazzoni, one of the Docker contributors. In this talk, he demonstrated the performance benefits and functionality to be had by using this lightweight container project over a trad
Vagrant 1.5 がリリースされました。1.1 以来の big change ということで、目新しい機能が追加されています。 目玉はやはり Vagrant Share だと思うのですが、その他にも Web システムの開発に Vagrant を使っている人には嬉しい機能が追加されています。 その一つが Rsync Synced Folder です。 Vagrant には、ホストマシンとゲストマシンとでファイルを共有、同期する機能があります。 これにより、開発はホストマシンで行い、実行は LA(MP)P 環境であるゲストマシンで行うという、いいとこ取りができました。 この機能を実現する方法として、shared folder(VirtualBox の機能)や NFS を利用することができたのですが、これに rsync による同期が追加されました。 ホストマシンからゲストマシンへ rsync
As briefly mentioned in Section 1.18, “Alternative Front-Ends”, VBoxManage is the command-line interface to Oracle VM VirtualBox. With it, you can completely control Oracle VM VirtualBox from the command line of your host operating system. VBoxManage supports all the features that the graphical user interface gives you access to, but it supports a lot more than that. It exposes all the features of
Chef-soloなどによるプロビジョニングの自動化が大流行りですね。モテるエンジニアの必須条件にプロビジョニングの自動化が加わる日も近いかも知れません。 プロビジョニングと一緒にコマンドライン一発でセットアップ済みのVMを作る Vagrant もキテいる感じがします。 でも、プロビジョニングの設定が難しそう、Chef-soloを勉強する時間も無いし……と言う方や、実は秘伝のセットアップスクリプトがプロジェクトに伝わっていて……と言う方もいると思います。 そんな人々のためなのか、Vagrantには Shellによるプロビジョニング の設定項目があります。 例えば、オペレータユーザにSSHの秘密鍵/公開鍵のセットを作るための設定は以下のようになります。 まず、シェルスクリプトを作ります。 #!/bin/bash su - $1 -c ' mkdir -p ~/.ssh if [[ ! -f
某講義でFedora19のBoxを作ろうという課題があり、 PackerでVagrant用のBoxを作成したときのメモ を参考にしboxを作ろうとした所,色々つまづいたのでメモ 実行環境 VirtualBox 4.2.18 Vagrant 1.3.3,1.3.4 packer 0.3.9 ケース1 : vagrant up が「Waiting for VM to boot. This can take a few minutes.」のまま動かなくなる なぜかVM自体は立ち上がっておりsshもできる。Vagrantの公開鍵を登録しなかったのが原因らしく,鍵を登録するとちゃんと動いた。 $ wget –no-check-certificate ‘https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub’ -O /hom
2014-05-23追記 vagrantcloud.comにCentOS 6.5とUbuntu 14.04のVMを登録しました 作成済みのVMだけ使いたい場合はそちらをご利用ください。手順は"packer - Ubuntu 14.04 を Vagrant に準備する - Qiita"へのコメントを参照してください。 また、packer用のtemplate.jsonはshiguredo/packer-templatesを利用するのがお勧めです。CentOSとUbuntuの新しいバージョンが出る度にpacker templateが追加されています。私もいつも利用させて頂いています。ありがとうございます! packerのインストール 詳細はInstall Packer - Packerを参照してください。 Downloads - PackerでMac OSXのamd64のリンクをクリックしてダウ
気がついたらChefやらPuppetやらAnsibleはDevOpsと呼ばれるようになったんですね。 時代のちょっと先端に行ったと思ったらまた取り残されてる感じがなんともこの業界ならではかと。 で、話は変わって前からVagrantのbaseBoxをゼロから作りたいぞ!!このヤロー!!って思っていたら PackerというVagrantの作者が仮想イメージを作るツールを出していたので作って見た時のメモ 環境 macosx10.8(ホストOS) 作る仮想インスタンスのOS CentOS6.4-x86_64_minimal 事前準備に必要なもの homebrew ※入れていない方は何も考えずにruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"と打とう virtualbox ※入れていない方はそうだvirtualboxを使っ
Vagrant 1.3.0 からは2回目以降の起動時にプロビジョニングが自動で走らないので注意 2013年09月08日 15:18未分類 2回目から自動で走らないというか、 デフォルトでは初回のみ走るというか。 Vagrant 1.3.1 にした しばらく Vagrant のバージョン 1.2.7 を使ってたんだけど 1.3.1 が出てたので手元の環境もアップデートしてみました。 すると vagrant up や vagrant reload したときの挙動が違う。 なぜかプロビジョニングが走りません。 Chef やらシェルスクリプトやら Puppet やらを使って 環境を設定してくれるやつね。 仕様が変わってた これはどうしたことかと思って Changelog を見たら プロビジョニングに関する仕様が変わってました。 vagrant/CHANGELOG.md at master · mi
入門ChefSolo-InfrastructureasCode-1.0.0を買ってvagrantにハマっています。 vagrantの設定について色々調べてみました。 環境 mac-osx 事前準備に必要なもの virtualbox ruby 1.9.3p327 (rbenv) ※入っていないかたはrbenvで複数バージョンのRubyを管理するmac os lionを読んでいれてみてください vagrant(試したバージョンは1.1.5) ※入っていないかたはvagrantからDownloadポチっと押してインストールしてきてください。 参考にしたサイト VagrantをPluginで拡張する vagrant公式 vagrantとは? vm(virtualbox,vmware)をコマンドラインで作成、起動などができるもの chef-soloやるだけなら特に必要はないが、chef-soloをや
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く