ansible을 사용하여 httpd conf 파일을 업데이트하는 방법

ansible을 사용하여 httpd conf 파일을 업데이트하는 방법

Ansible을 사용하여 http 로그 형식을 업데이트하고 싶습니다.

현재 구성은 다음과 같습니다.

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

다음 내용으로 업데이트해야 합니다.

LogFormat "%h %l %u %t %D %X \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combined

이 모듈을 사용해 보세요 replace. 그런데 파일수정이 안되네요...

---
- name: test
  hosts: testServer
  gather_facts: no
  tasks:
  - name: configure httpd
    replace:
      path: /tmp/httpd.conf
      regexp: 'LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined'
      replace: 'LogFormat "%h %l %u %t %D %X \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combined'

httpd.conf참고: 테스트를 위해 복사 했습니다 /tmp.

답변1

마지막으로 다음 스크립트를 얻었습니다.

---
- name: test
  hosts: testServer
  gather_facts: no
  tasks:
  - name: configure httpd
    replace:
      path: /tmp/httpd.conf
      regexp: '^LogFormat.*combined$'
      replace: 'LogFormat "%h %l %u %t %D %X \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combined'

더 나은 정규식을 사용할 수 있는지 알려주십시오.

관련 정보