Jinja2テンプレートからsystemdサービスをインストールしたい。どうすればいいですか?
copy
モジュールを使用してファイルを/lib/systemd/system
にコピーし、systemd
モジュールを使用して有効にする必要がありますか?
もっと良い方法はありますか?
template
モジュールを使用して、.service
ファイルを/etc/systemd/system
にインストールします。 このデジタルオーシャンブログの投稿/lib/systemd/system
によると、OSにバンドルされているパッケージ用に予約する必要があり、サードパーティサービスは/etc/systemd/system
で定義する必要があります。
Ansibleのsystemd
モジュールでは、daemon_reload=yes
でサービスを開始します。
Ansible 2.2の前:後でsystemctl daemon-reload
を実行し(適切な場合はこれにansibleハンドラを使用できます)、systemdをピックアップして新しいファイル。
- name: install myservice systemd unit file
template: src=myservice.j2 dest=/etc/systemd/system/myservice.service
- name: start myservice
systemd: state=started name=myservice daemon_reload=yes
# For ansilble < 2.2 only
#- name: reload systemd unit configuration
# command: systemctl daemon-reload