SEあるあるだと思いますが、何度も同じことを調べてしまうので、まとめてインデックス的なものにしようかなと思います。
(何度も利用しないものもまとめておきます)
環境
以下で動作確認しています。
RHEL 7.1
Ansible 2.9
Linux関連
ホスト名変更
使用例
- name: Modify hostname
hostname:
name: johnn
serviceマネジメント
動作に制限がありますが、systemdコマンドで実施しているようなことができます。
使用例では、httpdをリスタートしています。
使用例
- name: Restart httpd
systemd:
name: httpd
state: restarted
ユーザ情報の変更
以下の例では、パスワード変更に利用していますが、ユーザの起動シェルなども変更したりできるみたいです。
詳しくは以下リンク先参照
使用例
- name: Modify root password
user:
name: root
password: "{{ ここにパスワードを入力します | password_hash('sha512') }}"
オブジェクト作成
fileという名前のモジュールですが、ディレクトリの作成もできます。
削除することも可能です。
使用例
- name: create directory
file:
path: /johnn
state: directory
コマンド実行
基本的にAnsibleのモジュールを利用するのがベストですが、ないものもありますので、
そういう項目については、このモジュールを使って、コマンドを実行しています。
commandとshellでも少し違いがありますので、要件に合った使い方をすればよいかと思います。
使用例
- name: Set locale LANG
command: localectl set-locale LANG=en_US.UTF-8
タイムゾーンの設定
使用例
- name: Set timezone
timezone:
name: Asia/Tokyo
ファイルのコピー
ファイルのコピーに使えます。
コピー先のパスとコピー元のファイルに差分があれば、コピーしてくれます。
使用例
- name: copy file
copy:
src: コピー元のパス
dest: コピー先のパス
owner: root
group: root
mode: "0644"
再起動
メッセージの設定を入れていますが、表示されませんでした。
使用例
- name: Reboot test
reboot:
msg: "Rebooting."
気が向けば、ディスクの追加についても投稿しようと思います。