DigitalOcean にUbuntu with Fluentd な環境をVagrant で構築する

はじめに

タイトルの通りのことをやりました、というだけのエントリー。個人的にはVagrant を使った環境構築をやってみたかったという動機が強く、 詳しく知っている人にとってはあまりにも稚拙な内容であると思われるのでそっ閉じ推奨。

DigitalOcean はSSD を採用したVPS サービスで、時間(Hour)単位の課金が選択できるところが特徴的である。

https://www.digitalocean.com/:DigitalOcean

ここにUbuntu14.04 を立てて、ついでにFluentd をインストールするところまでをローカル環境のVagrant コマンド一発でできるようにする。

Vagrant をインストールする

Vagrant は手元の環境にインストールする必要がある。以下の例はローカル環境もUbuntuであることを想定している。

Vagrant 公式サイト からバイナリファイルをダウンロードする。今回は.deb ファイルである。

Vagrant

インストールする。ついでにDigitalOcean 用のプラグインも追加する。

 $ sudo dpkg -i ~/Downloads/vagrant_1.6.3_x86_64.deb
 $ vagrant plugin install vagrant-digitalocean

Vagrantfile を記述する

Vagrant コマンドに食わせるVagrantfile を書く。Vagrant は、このファイルの通りにDigitalOcean にDroplet(インスタンス)を立ち上げる。

Vagrantfile for Ubuntu14.04 with Fluentd

  • 以下の点は個別に要編集
    • YOUR_CLIENT_IDYOUR_API_KEY は、API から取得
    • YOUR_SSH_KEY_NAME は、SSH Keys から取得
    • YOUR_TOKEN は、Apps & API のPersonal Access Token から取得

このVagrantfile のprovision の項目で、OS立ち上げ後の個別設定、ここではFluentd のインストールを行っている。

Vagrant コマンドでDroplet をスタートする

以下のコマンドでDroplet をスタートし、ログインする。

$ cd /your/Vagrantfile/dir
$ vagrant up --provider=digital_ocean --provision

--provision を付与することで、Vagrantfile に記載したFluentd のインストール項目が実施される。

立ち上げたDroplet にログインするためには以下のコマンド。

$ vagrant ssh

作業が終わったら、課金を止めるために以下のコマンドでDroplet を削除する。(データはすべて削除される)

$ vagrant destroy

おわりに

Vagrant を用いたDigitalOcean のデプロイを試した。

今回紹介したVagrantfile は以下のレポジトリで管理している。

zonomasa/Vagrantfiles · GitHub

Vagrant入門ガイド

Vagrant入門ガイド

入門Chef Solo - Infrastructure as Code

入門Chef Solo - Infrastructure as Code

参考にしたURL