構成管理ツールの一つとして注目されている「Ansible」を紹介します。
そもそも「構成管理ツールって何?」という方は、以下の記事をご参照ください。
概要や、冪等性と呼ばれる考え方について解説しています。
Ansible はシンプルで初心者にもオススメ
Ansible (アンシブル) は、構成管理ツールの中でも後発のソフトウェアです。
シンプルな構成が特徴で、近年広く利用されるようになってきました。
RedHat 社が開発を行っているオープンソースのプロジェクトです。
構築先サーバーにエージェントをインストールする必要がない 点が強みです。
SSH で接続可能なサーバーであれば、Ansible から直接構築できます。
設定ファイルは「yaml(ヤムル)」と呼ばれるシンプルなテキスト形式です。
プログラミングに詳しくない人でも書きやすく、導入ハードルが低くなっています。
Ansible はエージェントレスで利用可能
前述の通り、Ansible はエージェントを必要としません。
以下の条件を満たしていれば利用可能です。
- 構築先サーバーに SSH 接続できる
- SSH ログインするユーザに「sudo」権限が付与されている
- 構築先サーバーに Python が入っている ※
- Ansible を実行するサーバーに Python が入っている ※
※大抵はOS標準で入っています
Chef など他の構成管理ツールでは、
エージェントと呼ばれるソフトウェアを構築先のサーバーに入れておく必要があります。
システム構成やセキュリティ要件によっては、エージェントを入れられない場合もあるため、
エージェントを必要としない Ansible は活用できるシーンが数多くあります。
Ansible では様々なモジュールが利用可能
Ansible では、サーバーの変更を行うためにモジュールを利用します。
モジュールとは、各種操作を代行してくれるコマンドのようなものです。
- ファイルをコピーする copy モジュール
- 設定ファイルを配置する template モジュール
- パッケージをインストールする yum モジュール
標準で用意されているモジュールが豊富なため、
サーバーで実行する大抵の操作は Ansible でも操作が可能となっています。
独自のモジュールを開発したい場合には、Python のプログラミングが必要です。
現在では、ネットワーク機器を操作するモジュールなどが開発されています。
まとめ
サーバー構築の自動化ツール「Ansible」について紹介しました。
エージェントレス(クライアントなし)で使えるのが大きな特徴です。
大規模環境での導入実績も多く、広く使われ出したソフトウェアの一つです。
構成管理ツールを導入する場合は、シンプルで幅広く活用できる「Ansible」がオススメです。
【関連記事】
⇒ サーバー構築の初心者にオススメのOS
⇒ サーバー構築の初心者は VPS がオススメ
⇒ AWS, GCP, Azure の無料利用枠を比較
⇒ レンタルサーバー・VPS・自宅サーバー を比較