becomeは、true/yes どちらでもよい
blockの書き方
blockに渡すwhen、becomeなどの属性は書く位置に注意しよう
ダメな例
- block: - hoge - fuga - piyo when: become:
正しい例
- block: - hoge - fuga - piyo when: become:
blockに渡すwhen、becomeなどの属性は書く位置に注意しよう
ダメな例
- block: - hoge - fuga - piyo when: become:
正しい例
- block: - hoge - fuga - piyo when: become:
Local Playbooks
ローカルで全体のPlaybookを実行するには、hosts: 行に "hosts: 127.0.0.1"をセットするだけ。そして、それからplaybookを実行する:
$ ansible-playbook playbook.yml --connection=local
代わりに、ローカル接続は、1つのPlaybookのplayで使われる。Playbook内の他のplayはデフォルトのリモート接続タイプを使うけれども、
和訳がめちゃくちゃなのだが、要はこういうこと
--- - hosts: localhost connection: local tasks: // あとは普通にタスクを書く
OSのクリーンインストールにCobblerというOSSが使えると聞いたので早速、少し調べてみる。
Cobbler - Linux install and update server
Cobbler is a Linux installation server that allows for rapid setup of network installation environments. It glues together and automates many associated Linux tasks so you do not have to hop between many various commands and applications when deploying new systems, and, in some cases, changing existing ones. Cobbler can help with provisioning, managing DNS and DHCP, package updates, power management, configuration management orchestration, and much more.
Cobblerは、ネットワークインストール環境の高速なセットアップを行うLinux インストールサーバである。
多くの関連するLinuxのタスクをつなげて自動化する。システムのデプロイや変更などで、いろんなコマンドやアプリケーションを横断する必要はない。Cobblerはプロビジョニング、DNS/DHCPの管理、パッケージの更新、電源、設定などなど多くのことができる。
How does cobbler help?
自動化の鍵は、スピード、一貫性(consistency)、繰り返し。これらはインフラの管理にとって重要で、それはサーバの構成が数台か数千台かによらない。Cobblerは、ベアメタルのサーバプロビジョニングの自動化も、いろいろなHypervisorへの仮想マシンのデプロイも助けてくれる。
Cobbler Quickstart Guide
Cobblerは、広くさまざまな技術で構成されるので、始めるのには幾分複雑なシステムである。カスタマイズは必要なくインストール後すぐに使える(?)。ただPXEやそれぞれの自動化方法論についての知識はもっておくべきだ。
このガイドでは、RedHat kickstartプロセスにフォーカスし、ステップはFedoraである。Ubuntu、SuSEなどは将来に対応予定。あとは、CLIアプリケーションに説明しているが、Cobbler Web UIなるものもある(説明はしてない)。
$ yum search openjdk $ sudo yum install java-1.7.0-openjdk.x86_64
$ wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-8/v8.0.39/bin/apache-tomcat-8.0.39.tar.gz $ mv apache-tomcat-8.0.39.tar.gz /opt $ cd /opt $ sudo gunzip apache-tomcat-8.0.39.tar.gz apache-tomcat-8.0.39.tar $ sudo tar apache-tomcat-8.0.39.tar apache-tomcat-8.0.39/ $ sudo ln -s apache-tomcat-8.0.39 tomcat8 $ cd tomcat8 $ sudo bin/catalina.sh start
手順はこちらを参照
5系は、Win10に対応しておらず、というか対応したと言っているのにインストールできなくて・・・VirtualBox4系を使っていたけども、新版でもいけるんですね。
http://docs.ansible.com/playbooks_loops.html#loops からの抜粋
変数ファイルもしくはvarsセクションで、YAMLのリストを定義した場合は、以下のようにする。
with_items: somelist
hashのリスト
- name: add several users
user: name={{ item.name }} state=present group={{ item.groups }}
with_items:
- { name: 'testuser1', groups: 'wheel' }
- { name: 'testuser2', groups: 'root' }
- name: give users access to multiple database
mysql_user: name={{ item[0] }} priv={{ item[1] }}.*:ALL append_privs=yes
with_nested:
- [ 'alice', 'bob', 'eve' ]
- [ 'clientdb', 'employeedb', 'providerdb' ]
上記実行の場合の組み合わせ。
item[0] : item[1]
alice : clientdb
alice : employeedb
alice : providerdb
bob : clientdb
bob : employeedb
bob : providerdb
eve : clientdb
eve : employeedb
eve : providerdb
vars:
users:
- name: test1.txt
- name: test2.txt
tasks:
- name: file copy
copy: src=/tmp/src/{{ item.name }} dest=/tmp/dst/{{ item.name }}with_items: users
公式:http://docs.ansible.com/intro_installation.html
1.EPELの設定
公式
https://fedoraproject.org/wiki/EPEL#What_is_Extra_Packages_for_Enterprise_Linux_.28or_EPEL.29.3F
http://ftp.riken.jp/Linux/fedora/epel/6/i386/repoview/epel-release.html
# wget http://http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
2.ansibleのインストール
# yum install ansible
インストールで入るパッケージ
- PyYAML
- libyaml
- python-babel
- python-jinja2
- python-keyczar
- python-pyasn1
1.pipのインストール
# easy_install pip
2.ansibleのインストール
# pip install ansible