Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Vagrant環境のAnsibleを速くしたい

Ansible Meetup Tokyo 2015.9.14 LT

  • Login to see the comments

Vagrant環境のAnsibleを速くしたい

  1. 1. Vagrant環境の Ansibleを速くしたい Ansible Meetup 2015.9.14 @oinume
  2. 2. Who are you? • @oinume • CyberAgent, Inc • amebaownd.com • Go, Python
  3. 3. Ansibleは時間かかる
  4. 4. 時間かかるので… • 違う作業しちゃったり • Twitter見ちゃったり
  5. 5. Ansible速くしよう
  6. 6. まずはプロファイリング!
  7. 7. Profiling Ansible Tasks • http://jlafon.io/ansible-profiling.html • callback plugin • taskごとに処理時間を表示 install mysql ------- 31.81s apt update ---------- 11.88s install nginx -------- 7.55s install supervisor --- 4.09s install uwsgi -------- 4.02s install redis -------- 3.80s
  8. 8. 遅いのは…
  9. 9. パッケージのダウンロード
  10. 10. パッケージのダウンロード • 海外からダウンロードしてない? • Debian/Ubuntu: /etc/apt/sources.list • Redhat系は宗教上の理由により(ry • yum-plugin-fastestmirrorとか? • Playbookの実行が1.5倍 (個人の感想です)
  11. 11. NICの変更
  12. 12. VirtualBoxのNIC変更 • Intel PRO/1000 → virtio-net • VirtualBoxではNICをエミュレートしない • VirtualBox >= 3.1, Linux Kernel(Guest) >= 2.6.25 • Vagrantfileに2行追加するだけ • vb.customize ["modifyvm", :id, "--nictype1", “virtio"] • vb.customize ["modifyvm", :id, "--nictype2", "virtio"] • Playbookの実行が1.2倍速くなった (個人の感想です)
  13. 13. vagrant-cachier plugin
  14. 14. vagrant-cachier • ダウンロードしたパッケージをキャッシュ • 2回目以降ダウンロードしない • vagrant destroyしても消えない • 同じPlaybookを何度も実行する場合に効く • $ vagrant plugin install vagrant-cachier • Vagrantfile ちょっと修正 • 1.3x Faster (個人の感想です)
  15. 15. まとめ • プロファイリングしよう • パッケージのダウンロード元を確認しよう • virtio-netを使おう • vagrant-cachierを入れよう
  16. 16. Thank You

×