728x90
반응형
서버를 구성하는데 mediainfo
와 ffmpeg
을 설치할 필요가 있었다.
설치할 서버가 적을 경우 하나씩 해도 되지만 서버가 많을 경우 일일이 하는 것이 어렵다.
이를 쉽게 하기 위해 자동화 도구 중에 하나인 Ansible
을 사용했다.
많은 명령어들을 지원하는데 yum
으로만 진행하여 다음과 같이 설정 파일을 만들었다.
- hosts: "{{ host }}"
tasks:
- name: install epel-release
yum:
name: epel-release
state: present
become: yes
become_user: root
- name: localinstall rpmfusion-free-release-7
yum:
name: https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
disable_gpg_check: yes
state: present
become: yes
become_user: root
- name: install mediainfo
yum:
name: mediainfo
state: present
become: yes
become_user: root
- name: install ffmpeg
yum:
name: ffmpeg
state: present
become: yes
become_user: root
state
는 yum
과 같이 사용하는 값인데 absent
, installed
, latest
, present
, removed
이 있다.
present
, installed
, latest
는 설치를 진행하고 absent
, removed
는 패키지를 제거한다.
become
과 become_user
를 사용하여 사용자를 전환할 수 있으며 become_user
는 root
가 기본값이다.
yum
프록시 설정이 필요한 경우 yum.conf
를 수정해야하는데 lineinfile
을 사용하여 쉽게 수정할 수 있다.
- hosts: "{{ host }}"
tasks:
- name: proxy added to /etc/yum.conf
lineinfile:
path: /etc/yum.conf
regexp: 'proxy='
insertafter: '\[main\]'
line: 'proxy=proxy_addr'
state: present
become: yes
become_user: root
regexp
는 찾으려는 문자열의 정규식이며 insertafter
에 해당 문자열 다음에
state
가 present
인 경우 line
의 값을 추가한다.
state
는 absent
, present
가 있는데 absent
는 line
을 제거하고 present
는 추가한다.
참고 문헌
반응형
'ETC.' 카테고리의 다른 글
[DevOps] Jenkins로 Kubernetes yaml 파싱 에러 (2) | 2020.12.10 |
---|---|
[PlayStore] 앱, 타사 광고, 기기 기능 방해 정책 위반 처리(3) (0) | 2020.07.23 |
[PlayStore] 앱, 타사 광고, 기기 기능 방해 정책 위반 처리(2) (0) | 2020.07.09 |
[PlayStore] 앱, 타사 광고, 기기 기능 방해 정책 위반 처리 (0) | 2020.06.25 |
[Linux] 서버 장애 대응 (0) | 2020.06.18 |