Upload
takeshi-kuramochi
View
6.331
Download
1
Embed Size (px)
Citation preview
アジェンダ
What’s Ansible?
Design Principles
How to use Ansible
Ansible for Enterprise
Demo Movie
Demonstration
Reference
自己紹介倉持健史(くらもち たけし)
現職
TIS OSS推進室 OSSプロモーション担当
職歴・他
NetApp.KK
OpenStack/Hadoop ソリューション開発
HA クラスタウェア 保守/開発/教育/プリ/コンサル
UNIX/Linuxインテグレーション
Perl / R
TISエンタープライズ OSS サポートサービス
OSS プロダクトサポート OSS 技術コンサルティング OSS マイグレーション
https://www.tis.jp/service_solution/oss/
Ansible is a radically simple IT automation
engine that automates cloud provisioning,
configuration management, application
deployment, intra-service orchestration, and
many other IT needs.
アプリケーションサービスデプロイメント
システムコンフィグレーション
クラウド、VM、コンテナイメージ起動
OSインストレー
ション
Provisioning Activity
Orchestration
Configuration
Bootstrapping
AWS Cobbler
OpenStack
Kickstart
VMware
Capistrano
Fabric
Puppet
Chef
Azure
Ansible
引用元:Provisioning Toolchain (Velocity2010) by Lee Thompson
Docker
DevOps made Simple.
Deploy apps. Manage systems. Crush
complexity.
Ansible is a powerful automation tool that you
can learn quickly.
Agentless for Windows
構成される側にエージェントが不要
HTTP/HTTPS 接続
PowerShell 3.0以上は必要
Ansible
Web Service Management
プロトコル(SOAP)
構成される側Windows
Batteries included
• ファイル編集
• ファイルダウンロード
• アプリケーションやサービスの起動
• クラウドイメージの管理(起動・停止など)
• 通知・ジョブ設定
• ネットワーク機器設定
• コマンド・シェル実行
などなど・・・
How to use Ansible 必要なマシン
Ansible がインストールされているマシン
必要なファイル
Inventory (インベントリ)
Playbook (プレイブック)
Inventory : ansible_hosts
Playbook : playbook.yml
Inventory
「何(対象物)に?」を示すファイル
192.168.2.200
192.168.2.200192.168.3.200
[webservers]192.168.2.200192.168.3.200
http://docs.ansible.com/intro_inventory.html
Playbook「何を?(最終的にどんな状態に?)」を書いたファイル(YAMLという決まったフォーマット)
---- hosts: 192.168.2.200
remote_user: roottasks:- name: install apache at the latest version
yum: pkg=httpd state=latest- name: start apache
service: name=httpd state=started enabled=yes
http://docs.ansible.com/playbooks_intro.html
文章で書くと、「192.168.2.200 に対して、スーパーユーザで yum を使って httpd をインストールし、 起動(次回再起動時も起動するように同時に設定)」
Runansible-playbook コマンド実行
Ansible 構成される側
SSH
$ ansible-playbook -i ansible_hosts playbook.yml
PLAY [192.168.2.200] **********************************************************
GATHERING FACTS ***************************************************************ok: [192.168.2.20]
::
PLAY RECAP ********************************************************************192.168.2.20 : ok=2 changed=2 unreachable=0 failed=0
# yum install httpd# service httpd start# chkconfig httpd on (OR systemctl enabled httpd)
More …
台数や処理数が増えたら・・・
Playbook ファイルの分割や役割毎にまとめる
(include , role)
標準で出来ないことがあったら・・・
自分で作る (module)
巨人の肩の上に立つ
Ansible が導入された “host” からTarget ”blog” マシン上で WordPress を構成する
(blog)
VMUbuntu14.04
(host)
Ansible Target
AP
Web
DB
PHP
Apache
MariaDB
Demo Movie
Configuration
Create VM
Install Packages
一撃Ansible
- Inventory
- Playbook
AP
Web
DB
PHP
Apache
MariaDB
Demonstration
The comparison of Chef and Ansible
• Ansible は エージェントレス
• Ansible は オーケストレーション もこなす
• 学習コスト Chef > Ansible
• Chef = Ruby , Ansible = Python
• Chef → Ansible多い、 Ansible → Chef ?
• 実績・ノウハウ Ansible < Chef
Let’s Try!
• Tech-Circle#6 Ansible ハンズオン~事前準備~
• Tech-Circle#6 Ansible ハンズオン~Lesson1~
• Tech-Circle#6 Ansible ハンズオン~Lesson2~
http://qiita.com/tksarah/