IT自動化を活用せよ!「オープンソースの構成管理ツールAnsible入門」最終回
ITライフハック / 2014年11月11日 10時0分
■はじめに
本連載の第一回目では、システム担当者により手作業で行われてきた構成管理の課題、そうした課題を解決すべく登場した構成管理ツールの一つAnsibleについて紹介した。
第二回目では、Ansibleを使う具体的なメリットについて解説し、第三回目では「いきなり本番環境で始めてしまうのは怖い」という読者に向けて、チュートリアル環境の構築方法を途中までお伝えした。
今回は第三回目の続きとなり、Ansibleを実際にインストールし、構成管理作業をスタートするところまでを解説する。
AnsibleはPythonパッケージ管理システムを使用してもインストールできるが、ここでは、チュートリアル環境として使用するCentOS 6に統合が容易なEPELリポジトリからのインストールを行う。
まず、EPELのミラーサイトの1つから、リポジトリ登録用のRPMパッケージをダウンロード・インストールする。
———————————————————————————–
$ sudo rpm –import http://ftp.tsukuba.wide.ad.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6
$ sudo rpm -ivh http://ftp.tsukuba.wide.ad.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
———————————————————————————–
yumコマンドでEPELリポジトリからAnsibleのCentOS 6向けパッケージをインストールする。
———————————————————————————–
$ sudo yum -y install ansible
———————————————————————————–
以下のコマンドでAnsibleがインストールされたことを確認する
(Ansible のバージョン番号が表示されればOK)。
———————————————————————————–
$ ansible –version
———————————————————————————–
必要なソフトウェアのインストールは以上で完了。以下、実際に仮想環境を構築していく。
———————————————————————————–
$ vagrant init centos65
———————————————————————————–
カレントディレクトリにVagrantfile が生成されているので、これを以下の内容になるようテキストエディタで編集を行う。
<編集 ファイル1>
※要ダウンロード
編集が終わったら、以下のコマンドで仮想サーバ群を起動(物理マシンのスペックによるが相応の時間がかかる)。
———————————————————————————–
$ vagrant up
———————————————————————————–
チュートリアルで使用する仮想環境(サーバ3台)はこれで構築完了。あらかじめ用意されたひな形(Box)を利用したとはいえ、VagrantがVirtualBoxとともに利用される理由の一端が体感できたのではないだろうか。
次に、Ansible の設定を行う。最低限必要なのが、インベントリ・ファイルだ。
これは、Ansibleが管理対象のホスト(サーバ)のアドレスや、それらをまとめたグリープなどを定義するファイルだ。ファイルのパスは、「/etc/ansible/hosts」である。まずは、以下の内容をテキストエディタで記述する。
<編集 ファイル2>
※要ダウンロード
インベントリ・ファイルが用意できたら、まずは疎通確認を行う。以下のコマンドは、Ansible実行ホストから、管理対象ホストにSSHでログインできるかどうかを確認する。
———————————————————————————–
$ ansible multi -m ping
———————————————————————————–
インベントリ・ファイルにおいて、「multi」は、「webapp」と「db」というホストのグループを含むグループ(本環境では、全管理対象サーバ)になる。
これで、以下のような出力が返ってくれば、Ansibleで仮想サーバ群を管理する
前提条件が整っているということになる。
———————————————————————————–
$ ansible multi -m ping
192.168.60.7 | success >> {
“changed”: false,
“ping”: “pong”
}
192.168.60.8 | success >> {
“changed”: false,
“ping”: “pong”
}
192.168.60.11 | success >> {
“changed”: false,
“ping”: “pong”
}
———————————————————————————–
Ansibleの様々な機能(モジュールという形で実現されている)の1つに、管理対象のホスト上でコマンドを実行するというものがある。これは単純な機能だが、管理対象のホストの数が多い場合は、意外と便利だ。
例えば、Vagrantによって各仮想サーバのホスト名が正しく設定されているかどうかを確認してみよう。
———————————————————————————–
$ ansible multi -a “hostname”
———————————————————————————–
以下のような結果が返ってくれば、Vagrantfileの内容に基づいて構築された仮想サーバのホスト名が設定されていることが確認できる。
———————————————————————————–
$ ansible multi -a “hostname”
192.168.60.7 | success | rc=0 >>ph-app01.devel
192.168.60.8 | success | rc=0 >>ph-app02.devel
192.168.60.11 | success | rc=0 >>ph-db01.devel
———————————————————————————–
以下のコマンドを実行するとどうなるだろうか。
———————————————————————————–
$ ansible multi -a “free -m”
192.168.60.11 | success | rc=0 >>
total used free shared buffers cached
Mem: 490 350 139 0 42 222
-/+ buffers/cache: 86 404
Swap: 991 0 991
192.168.60.8 | success | rc=0 >>
total used free shared buffers cached
Mem: 490 350 139 0 42 222
-/+ buffers/cache: 86 404
Swap: 991 0 991
192.168.60.7 | success | rc=0 >>
total used free shared buffers cached
Mem: 490 350 139 0 42 222
-/+ buffers/cache: 86 404
Swap: 991 0 991
———————————————————————————–
実行するまでもなくお分かりの人も多いと思うが、管理対象のホストのメモリーの使用状況が表示される。上述した「便利」さが体感できたのではないだろうか。
■最後に
Ansibleは、このような複数のホストに命令を送り込んで結果を得る、という基本機能を組み合わせることによりサーバ環境の状態を制御していく。
導入部としての連載はこれで一旦終了となる。環境準備の基本は押さえられたはずなので、今後は「プレイブック」を作成するなど発展的内容の学習につなげていっていただきたい。
■株式会社ファランクス
著者プロフィール:
藤田泰弘(ふじた・やすひろ)
株式会社ファランクスCTO(最高技術責任者)。1975年福井県生まれ。2002年東京大学経済学部卒業。大学在学中より携帯電話向けコンテンツサービスの開発に携わり、卒業後も同サービス開発会社で働く。主な担当はサービスインフラの設計・構築。ファランクスがアフィリエイト広告事業に参入するにあたり、大学時代からの知己であった経営陣からの誘いを受けて同社でのシステム全般の立ち上げに参画、現在に至る。
この記事に関連するニュース
-
ブルースクリーン多発問題、Windows・AWS・Azureにおける解決策まとめ
マイナビニュース / 2024年7月20日 11時49分
-
Windowsの起動エラーにより世界各地でシステム障害、手作業復旧で長期化の恐れも
マイナビニュース / 2024年7月20日 8時38分
-
無料のサーバ仮想化ソフトウェア『oVirt』の日本語マニュアル 2024年7月10日より無償公開
@Press / 2024年7月10日 11時0分
-
Flask開発者が取り組むPythonのプロジェクト&パッケージ管理システム「Rye」
マイナビニュース / 2024年7月9日 14時37分
-
Windows Subsystem for Linuxガイド 第37回 WSL2でDockerを使う その3「ネットワーク接続Dockerデスクトップ編」
マイナビニュース / 2024年6月25日 16時17分
ランキング
-
1「やめて……」Amazon公式の誠実対応のせいで経済事情を全世界に公開 「悲しい気遣い」「傷口に砂糖」
ねとらぼ / 2024年7月22日 20時45分
-
2ハロプロ、新幹線トラブルでイベント当日中止 ファンから悔しさと励ましの声「仕方ないとは思いますが」「気にしすぎないでね」
ねとらぼ / 2024年7月22日 19時50分
-
3「画期的!」「すげえ」 テレ東が特番放送→新聞の番組表に描かれた“まさかのデザイン”に驚き
ねとらぼ / 2024年7月22日 19時26分
-
4意外すぎる“一重→二重への大変身メイク”に「ええええ! アイプチせずに、、すごい」「自然。上手すぎ!」 「はるかぜに告ぐ」とんずさんのメイクテクに称賛相次ぐ
ねとらぼ / 2024年7月22日 19時30分
-
5超コンパクト&強力光搭載!耐久性とデザイン性にもこだわった懐中電灯「ZERO FLASH 1200」
IGNITE / 2024年7月22日 10時19分
記事ミッション中・・・
記事にリアクションする
記事ミッション中・・・
記事にリアクションする
エラーが発生しました
ページを再読み込みして
ください