Ansibleでraspberry piの設定を自動化しよう [2.7対応]
背景
RaspberryPiを2台をものの弾みで処分し再度購入しました。
その際に設定が面倒だしまたいつか処分して再購入する際に設定が発生する可能性があるので
せっかくなので自動化しておこうと思い使ってみました。
今回はインストールから動作確認までと概要を記載
具体的な使用と実践は次回以降から記載していきます。
書く予定のこと
- Ansible概要
- Ansibleを試す
- Ansibleの実践的な利用 (次回)
Ansible?
Ansible(アンシブル)は、レッドハットが開発するオープンソースの構成管理ツールである。サーバを立ち上げる際、あらかじめ用意した設定ファイルに従って、ソフトウェアのインストールや設定を自動的に実行する事が出来る[1]。特に大規模なコンピュータ・クラスターを構築する時に、時間の短縮やミスの削減に有用である。構成管理に加え、オーケストレーションやソフトウェアデプロイメントの機能を持つ[2]。
Ansible(アンシブル)は、レッドハットが開発するオープンソースの構成管理ツールである。サーバを立ち上げる際、あらかじめ用意した設定ファイルに従って、ソフトウェアのインストールや設定を自動的に実行する事が出来る[1]。特に大規模なコンピュータ・クラスターを構築する時に、時間の短縮やミスの削減に有用である。構成管理に加え、オーケストレーションやソフトウェアデプロイメントの機能を持つ[2]。
wikiより引用
ansibleは簡単に言えばサーバー構成自動化ツールです。
構成管理ツールといえばChef, Puppetを想像しますがその一角といった認識で間違いないはずです。
Infrastructure as a Codeってやつです
Ansible は端的に言えば
- hostsファイル
- playbook
- モジュール
の、3点で成り立っている。
ちなみに読み方は「アンシブル」
環境
■Ansiblesサーバ
Ubuntu(18.04)
■Ansibleホスト
raspberry pi * 2
AnsibleはSSH接続したサーバに対して、ミドルウェアのインストールや設定ファイルの更新を行うツールです。なのでsshはパス無し必須なので設定を行っておいてください。
導入手順
インストール
サーバに下記をインストール
$ apt install -y epel-release
$ apt install -y ansible
インストールが正しく行われたかを確認
指定してホストへpingを実行する
$ ansible --version
ansible 2.7.2
# SUCCESSが出ればインストールは成功
$ ansible -m ping 192.168.1.136
192.168.1.136 | SUCCESS => {
"changed": false,
"ping": "pong"
}
オプション | 説明 |
---|---|
-i INVENTORY | インベントリファイルのパスを指定。デフォルトは「/etc/ansible/hosts」 |
--help | ansibleコマンドのヘルプを表示 |
-m MODULE_NAME | モジュールを指定 |
モジュールはたくさんある。
よく使うのはここらへん
- file
- copy
- template
- service
- lineinfile
ディレクトリ構成
ベストプラクティスは公式より下記のようになっている
特別特殊なことをやりたい訳ではないのでとりあえずこちらを使用する
playbooks
├── development
├── others.yml
├── production
├── roles
│ ├── common
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── templates
│ │ └── ntp.conf.j2
│ └── nginx
│ ├── handlers
│ │ └── main.yml
│ └── templates
│ └── default.j2
├── site.yml
├── staging
└── webservers.yml
hostsを編集
今回使用するhostを記載する
[webservers]
raspberrpi01
raspberrpi02
[dbservers]
raspberrpi03
Playbookを編集
---
- hosts: webservers
roles:
- common
- webapp
- hosts: dbservers
roles:
- common
- db_middleware
実際に使ってみる
上まででとりあえず導入は完了。
参考URL
Author And Source
この問題について(Ansibleでraspberry piの設定を自動化しよう [2.7対応]), 我々は、より多くの情報をここで見つけました https://qiita.com/ryuichi1208/items/60f958f5e49f92a37e7f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .