目次
Ansibleとは
Ansibleは、IT自動化ツールの一つで、複数のサーバーやネットワークデバイスの設定管理やデプロイメント、アプリケーションのセットアップを効率的に行うためのオープンソースのツールです。Ansibleを使うと、複雑な手順を自動化し、システムの一貫性を保ちながら作業を簡素化できます。
- エージェントレス: Ansibleは、管理対象のノードに特別なソフトウェア(エージェント)をインストールする必要がなく、SSH接続を使って管理を行うため、設定がシンプルです。
- モジュールベース: Ansibleには、パッケージのインストールやサービスの起動、ファイル管理などを行うためのモジュールが多数用意されています。これにより、さまざまな操作を簡単にスクリプト化できます。
- 宣言的構文: Ansibleの設定ファイル(Playbook)は、YAML形式で書かれており、わかりやすい宣言的構文で、どのように設定が行われるかを記述できます。
手順
Ansibleのインストール
ShellScript
sudo yum install epel-release -y
sudo yum install ansible -y
SSHアクセスのセットアップ
SSHキーを発行します。
ShellScript
ssh-keygen
発行したSSHキーを被管理ノードにコピーします。
ShellScript
ssh-copy-id user@managed_node_ip
インベントリファイルに被管理ノードを追加
/etc/ansible/hosts/hostを編集します。
ShellScript
sudo vi /etc/ansible/hosts
[webservers]
192.168.1.10 # managed_node_ip
Ansible Playbookの作成
Playbookを作成します。今回の例では、install_bind.ymlを作成します。
ShellScript
# ~/install_bind.yml
---
- name: Install BIND DNS Server
hosts: webservers # write the managed nodes
become: yes # Use sudo privileges
tasks:
- name: Install bind
yum:
name: bind
state: present
Ansibleの実行
ShellScript
ansible-playbook install_bind.yml -K
以上が、Ansibleのインストールから初期構築までの流れでした。