Ansible(アンシブル)とは



※以下書籍はKindle Unlimitedで読めます。

■LinuxとUNIXの違いをわかりやすく解説しています。
※サーバーエンジニアは知っておくべき内容です。

【初心者向け】これだけでLinuxとUNIXの違いがわかる!


■ロードバランサー(LB)をわかりやすく解説しています。
※ネットワークエンジニア、サーバーエンジニアは知っておくべき内容です。

これだけでSNMPがわかる!SNMPの使い方


■SNMPの使い方をわかりやすく解説しています。
※ネットワークエンジニア、サーバーエンジニアは知っておくべき内容です。

これだけでロードバランサーがわかる!


■ChatGPTの使い方をわかりやすく解説しています。

【初心者向け】これだけでわかる!ChatGPTの使い方





では、今日も授業を始める。今日のテーマはAnsible(アンシブル)だ。




Ansibleって何?




Ansible(アンシブル)はオープンソースの構成管理ツールだ。 構成管理ツールには、Chef(シェフ)やPuppet(パペット)などもあるが、最近はAnsibleの方が人気がある。




なんでAnsibleが人気なの!?




Ansibleは設定内容がシンプルで、管理対象のサーバーに 特別なソフトウェア(エージェント)をインストールする必要がない。




エージェントレスってことね。




うむ。ChefやPuppetは特別なソフトウェア(エージェント)をインストールする必要がある。 Ansibleが管理するサーバでPythonが利用可能でSSHできればよい。




管理対象サーバーはPythonとSSHがあればいいってことね。




Ansibleの処理はPlaybook(プレイブック)に書く。PlaybookはYAML(ヤムル)形式で記述されている。




Ansibleはどこが開発しているの!?




現在はRedHat(レッドハット)だ。2015年にRed HatがAnsible社をに買収した。




そのRedHat社も、IBM社に買収されたよね。




Ansibleの特徴として、冪等性(べきとうせい)というものがある。




べきとうせいって何!?難しい。




冪等性(べきとうせい)とは、Ansibleの同じ処理を何回実行しても、 結果は同じになるという意味だ。




は~い。1回だけ操作しても、何回も操作しても結果が変わらないっていう特性ね。




Ansibleは管理対象のサーバやネットワーク機器をインベントリ(Inventory)と いうファイルに記述する。
例えば、以下のように記述する。

192.168.1.1
192.168.1.2


以下のようにグループ分けもできる。この例だと、webグループとdbグループができる。 [web] 192.168.1.1
192.168.1.2
[db] 192.168.1.3
192.168.1.4




Ansibleを実行するコマンドは?




Ansibleを実行するコマンドは、ansible-playbookコマンドだ。 例えば、インベントリファイル名(設定を投入したい管理対象の機器を記述したファイル)をhostsにした場合、 以下のように実行すると、管理対象機器にsshで接続しにいって、設定が投入される。

$ ansible-playbook -i hosts test.yml




YML(ヤムル)ファイルには、Ansibleのサーバに投入したい内容を記述する。 今回の例だと、test.ymlに記述することになる。




YMLファイルはどうやって記述するの?




YML(ヤムル)ファイルには、Ansibleのサーバに投入したい内容を記述する。 今回の例だと、test.yml(Playbookファイル=プレイブックファイル)に記述することになる。




例えば、何十台のサーバにソフトウェアをインストールしたり、ソフトウェアのバージョンがないかを 確認したり、設定を投入したりできる。1台ずつサーバにログインして、同じことを何十台も実施しなくても、 Ansibleで一度にできる。




管理しないといけないサーバやネットワーク機器が何十台もあった場合に、 Ansibleを使うと、とても楽になるってことね。Ansibleを使えば、自動化ができて、工数低減できるってことね。




では、今日はここまで。




は~い



今回のまとめ

1.Ansibleはオープンソースの構成管理ツール

2.Ansibleの管理対象はエージェントレス

3.管理対象にPythonとSSHがあればよい

4.Ansibleの処理はPlaybook(yml形式)に書く

5.AnsibleはRedHat(レッドハット)が開発

6.冪等性(べきとうせい)である

7.ansible-playbookコマンドで実行


 次の章へ