- hosts: ["server", "db"]
tasks:
# managed node 에 파일 만들기
- name: Linux Command
shell: \
touch /root/ansible_test
become: yes
# 파일에 권한 설정하기
- name: File Permission
file:
path: "/root/ansible_test"
mode: 0755
become: yes
# 압축해제하기
- name: tomcat
unarchive:
src: "/root/test/apache-tomcat-9.0.73.tar.gz"
dest: "/root"
remote_src: no # no > 파일이 control node에 존재 / yes > 파일이 managed node에 존재
become: yes
# 파일 복사
- name: FileCopy
copy:
src: /root/test/{{ item }}
dest: /root/{{ item }}
remote_src: no
with_items: # 배열 > 반복문처럼 동작
- file1
- file2
become: yes
# template module : 일정 부분을 수정해야 할 때 (진자2 문법)
- name: templateCopy
template:
src: /root/test/server.xml.j2
dest: /root/apache-tomcat-9.0.73/conf/server.xml
remote_src: no
become: yes
# tomcat - server.xml
<Connector protocol="AJP/1.3"
address="{{ ansible_all_ipv4_addresses[0] }}" # 현재 실행하는 컴퓨터 ip
secretRequired="false"
port="8009"
redirectPort="8443" />