skillup

技術ブログ

サーバー・ネットワーク

ansibleでのインストール

投稿日:2017年3月14日 更新日:

ansibleについてのメモなど。

ansibleって何?

構成管理ツール。一度設定しておけばサーバーの細かいインストールとかを自動でやってくれるツール。chefの兄弟みたいなもの(だと私は認識しています。)

インストールする側からコマンドをたたけば一発で複数サーバーにインストールなんてことも可能です。インストールされる側にはあらかじめなんの準備もいらないのがうれしい。

インストール前準備

2台のホスト(インストールする方とされる方)の用意。VPSを用意するかvagrantなどの仮想構築環境を使うのがいいです。自分はこの方法で2台のホストを動かして実行しました。

私の場合、installする環境が192.168.33.10 される側が192.168.33.11とします。ともにCentOS6.7です。

ansibleインストール

次にやることですが、どのホストをインストールするのかの情報を登録しておきます。

これまたいろんな書き方があるようですが、一番簡単なのは/etc/ansible/hostsに管理対象のホストを登録します。

今回の場合このファイルに

と書いてあげましょう。

SSH鍵登録

この状態でansible 192.168.33.11 -m ping とうつと( ansible 対象ホスト 命令 というコマンド)

下記のメッセージが帰ってきます。

SSHが登録されていませんよ~というエラーですね。

簡単な対応としてはパスワードの入力補完でkオプションをつけてあげるとパスワード
をいれてあげればOK。今度はSUCCESSというメッセージが帰ってきます。

ただこの方法だと毎回面倒なため、下記のように鍵を登録してあげるのがベターです。

ssh-copy-idで公開鍵をリモートホストへ登録する

今後は下記コマンドだけで飛ばせます。

ansible 192.168.33.11 -m ping

また鍵を明示的に指定するには

ansbile  --private-key=(秘密鍵のパス)  になります。

具体的なソフトウェアのインストール

例えばこのホストから対象ホストにapache(httpd)をインストールしてみましょう。

yaml形式で下記のようなファイルを作ります。

yum.yaml(拡張子がyamlであればファイル名は別になんでもいいです。)

これを書いた後、

ansible-playbook yum.yaml と入力すると一気にインストールができます。

最終的なansibleコマンドは下記で落ち着きそうです。

参考リンク&参考文献

さくらのナレッジ エージェントレスでシンプルな構成管理ツール「Ansible」入門

Ansible徹底活用ガイド

-サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Terraform入門(シンプルなEC2の構築)

前回の記事でcloudformationとterraformの比較や紹介をしましたが、terraformがとっつきやすかったため、簡単なサンプルとメモを。 Contents1 インストール2 実行手順 …

no image

キャッシュについて(主にmemcachedを中心に)

Webサービスのパフォーマンス向上で目に見えて効果があることの一つがDBへのアクセス回数を減らすことです。 それはSQLを発行する回数を少なくするなど、普段からのプログラムの書き方ももちろん大事なので …

no image

Linux環境下でのdockerのインストールについて

CI/CDがらみのプロセスでdockerを使っていたのですが、Linux環境下でのdockerのインストールについてメモ。 Contents1 yum -y install docker2 docke …

no image

MacでのVirtualHost設定

MacでのVirtualHostについて。 Contents1 設定方法2 注意点2.1 httpd -S2.2 httpd: Could not reliably determine the ser …

no image

Addtypeについて

htmlにはPHPを埋め込むことができますが、拡張子がhtmlの場合、そのままでは実行できません。 この場合、通常では拡張子を変えなければいけないところですが、apacheを使っている場合、設定ファイ …

アーカイブ