IT自動化を活用せよ!「オープンソースの構成管理ツールAnsible入門」第三回
ITライフハック / 2014年9月9日 10時0分
■はじめに
本連載の第一回目では、システム担当者により手作業で行われてきた構成管理の課題、そうした課題を解決すべく登場した構成管理ツールの一つであるAnsibleについて紹介した。
前回の第二回目では、Ansibleを使う具体的なメリットについて説明した。
今回からいよいよ実践編として、Ansibleを実際にインストールし、構成管理作業をスタートするところまでを解説していく。
■さあはじめよう~Ansibleのインストールと動作確認~
・まずはチュートリアル環境で試してみよう
まずはじめに、「いきなり本番環境で始めてしまうのは怖い」という読者に向け、何度でもキレイな環境でやり直せるようチュートリアル環境を準備したい。今回は「VirtualBox+Vagrant」を使って、チュートリアル環境を構築する。
■VirtualBoxとは?
VirtualBoxは、普段使用しているOS上にアプリケーションとしてインストール可能な仮想環境で、ハードウェアリソースが許す限りOS上に複数の仮想マシンを作成し、実行することが可能だ。
仮想環境を実現するソフトウェアは多数あるが、Windows OS、Mac OS、Linux OS(まだ他にもある)といった主要OSにインストールできるという点が大きな特徴。
多くのOSで使えるということは、本連載を読んでいるユーザーが現在使っているパソコン上に「誰にも迷惑をかけず、なおかつ徹底的にいじり倒すことができるサーバーを構築できる」ということになる。
本連載では、その仮想マシンを、チュートリアル環境として自由に気兼ねなく使っていくことにする。仮に環境が壊れたとしても、簡単に元に戻すことができるので安心だ。
■Vagrantとは?
Vagrant(ベイグラント)は、仮想環境の構築と制御を行なうソフトウェアだ。VirtualBox単体でも環境構築や制御は可能だが、インフラ自動化の文脈では、VirtualBoxを直に触るのではなくVagrantという制御専門のレイヤーを挟むことが多くなっている。
Ansibleは(物理あるいは仮想)マシンやOSが既に準備されていることを前提としているが、Vagrantは、仮想環境を構築するところから制御が可能なので、両者を組み合わせるとインフラ自動化をより広範囲に行えるようになる。
■VirtualBox と Vagrantのインストール
それでは、最新版のVirtualBoxとVagrantをインストールしてみよう。以下の説明は、VirtualBox 4.3系とVagrant 1.6系を使用することを前提としている(コマンド例の行頭の「$ 」は、コマンドプロンプトなので、入力する必要はない)。
VirtualBoxは、以下URLのページからダウンロード可能。CentOS 6(AMD64)用のものをダウンロードしてほしい。
・VirtualBoxダウンロードページ
ダウンロードしたファイルはRPMパッケージになっているので、「sudoコマンド」を用いるなどしてroot権限で「rpmコマンド」を使ったインストールが可能だ。VirtualBoxでは、CentOS 6向けの他パッケージもインストールが必要となる点には注意してほしい。
動作上必須ということではないが、CentOSをより使いやすくする(カーネル)モジュールをインストール時に作成するため、以下のパッケージを「yumコマンド」を使ってインストールしておくことをおススメする。
make
kernel-devel
gcc
以下は、VirtualBox本体のインストールの例(ログインユーザーのホームディレクトリがカレントディレクトリであると想定)。
$ sudo rpm –import https://www.virtualbox.org/download/oracle_vbox.asc
(RPMパッケージ署名検証用鍵のダウンロードとインポート)
$ wget “http://download.virtualbox.org/virtualbox/4.3.14/VirtualBox-4.3-4.3.14_95030_el6-1.x86_64.rpm”
(RPMパッケージ本体をダウンロード)
$ sudo rpm -ivh VirtualBox-4.3-4.3.14_95030_el6-1.x86_64.rpm
(RPMパッケージでVirtualBoxをインストール)
Vagrantは以下URLのページからダウンロード可能。
・Vagrantダウンロードページ
CentOS 6(x86_64)の場合、LINUX(RPM)64-bitのリンクからダウンロードできるファイルがインストールに使えるRPMパッケージだ。VirtualBoxと同様にroot権限で「rpmコマンド」を使用しインストールする。以下は、インストール例。
$ wget “https://dl.bintray.com/mitchellh/vagrant/vagrant_1.6.3_x86_64.rpm”
(RPMパッケージをダウンロード)
$ sudo rpm -ivh vagrant_1.6.3_x86_64.rpm
(RPMパッケージでVagrantをインストール)
仮想環境を構築・利用するのに必要なソフトウェアのインストールができたかどうかを確認するには以下のコマンドを実行する。
$ VBoxManage –version4.3.14r95030
$ vagrant –versionInstalled Version: 1.6.3
Latest Version: 1.6.3
You’re running an up-to-date version of Vagrant!
上記のようにバージョン番号が標準出力に表示されたら、インストールは完了している。
Vagrantのインストールが完了したら、Vagrantで制御できるようあらかじめ作られた環境のひな形(Box)をダウンロードする。
$ wget ”http://puppet-vagrant-boxes.puppetlabs.com/centos-65-x64-virtualbox-nocm.box”
ダウンロードしたひな形を、centos65という名前でVagrantに登録する。
$ vagrant box add centos65 centos-65-x64-virtualbox-nocm.box
==> box: Adding box ‘centos65′ (v0) for provider:
box: Downloading: file:///home/testuser/centos-65-x64-virtualbox-nocm.box
==> box: Successfully added box ‘centos65′ (v0) for ‘virtualbox’!
■最後に
次回は、Ansibleのインストールと仮想環境の構築を行い、実際にAnsibleが動作する様子を体験してもらう予定だ。
■株式会社ファランクス
著者プロフィール:
藤田泰弘(ふじた・やすひろ)
株式会社ファランクスCTO(最高技術責任者)。1975年福井県生まれ。2002年東京大学経済学部卒業。大学在学中より携帯電話向けコンテンツサービスの開発に携わり、卒業後も同サービス開発会社で働く。主な担当はサービスインフラの設計・構築。ファランクスがアフィリエイト広告事業に参入するにあたり、大学時代からの知己であった経営陣からの誘いを受けて同社でのシステム全般の立ち上げに参画、現在に至る。
この記事に関連するニュース
-
今更more.comを使うのか!? Windowsでのページングを考える
ASCII.jp / 2024年7月10日 12時0分
-
Flask開発者が取り組むPythonのプロジェクト&パッケージ管理システム「Rye」
マイナビニュース / 2024年7月9日 14時37分
-
Zabbixベースのシステム監視ソフトウェア最新版「MIRACLE ZBX 7.0」と10年の長期サポートを提供開始
PR TIMES / 2024年7月3日 16時45分
-
Windowsが今更(?)開発者に優しくなろうとしている!? 「Dev Home」は開発者にとって使い物になる?
ASCII.jp / 2024年6月23日 10時0分
-
鈴与シンワート、S-PortCloud VシリーズでRed Hat Enterprise Linux (RHEL)の提供を開始!
共同通信PRワイヤー / 2024年6月20日 10時0分
ランキング
-
1札幌市イオンモールの駐車場が子育て世代に優しいと話題 気遣いの“言葉”に「これ素敵すぎる」「涙が出ちゃった」と称賛の声
ねとらぼ / 2024年7月18日 8時0分
-
2サイバー攻撃による流出情報元に「突撃取材するのはやめて」 ニコニコ運営代表が新聞社に警告、記者名も把握
J-CASTニュース / 2024年7月18日 19時35分
-
3「会社のWindows PCが突如ブルースクリーンに……」 世界中で報告相次ぐ 「仕事ができない」
ITmedia NEWS / 2024年7月19日 14時49分
-
4Type-Cケーブル1本で、4K映像を2画面出力できる!ドッキングステーション
ITライフハック / 2024年7月19日 11時0分
-
5楽天の「ポイント運用」を約1年間やってみた 運用益はどうだった?
Fav-Log by ITmedia / 2024年7月18日 6時50分
記事ミッション中・・・
記事にリアクションする
記事ミッション中・・・
記事にリアクションする
エラーが発生しました
ページを再読み込みして
ください