OS 계열 정보에 따른 분기
Debian과 RedHat에 서로 다른 단계를 적용합니다.
OS 계열 정보에 따른 분기은(는) CoddyKit의 무료 Ansible Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Ansible Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Ansible Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
하나의 플레이북, 여러 배포판
Debian은 apt를 사용하고 RedHat은 dnf를 사용합니다. 팩트와 when을 사용하면 하나의 플레이북이 각 운영 체제에 맞게 조정됩니다. 🐧
os_family 팩트
Ansible은 관련 배포판을 하나로 묶는 Debian 또는 RedHat과 같은 넓은 범주의 레이블인 ansible_os_family를 수집합니다.
when: ansible_facts["os_family"] == "Debian"제품군과 배포판 비교
os_family는 넓은 범주이고 ansible_distribution은 정확한 배포판을 나타냅니다. Ubuntu와 Debian은 Debian 제품군을 공유하지만 서로 다른 배포판입니다.
Debian 전용 작업
apt 작업이 Debian 제품군에서만 실행되도록 조건을 지정합니다. RedHat 호스트에서는 해당 작업을 건너뜁니다.
- name: Install nginx (apt)
ansible.builtin.apt:
name: nginx
when: ansible_os_family == "Debian"RedHat 대응 작업
RedHat 제품군을 위한 형제 작업을 추가합니다. 이제 하나의 플레이에서 두 환경을 모두 처리할 수 있습니다.
- name: Install nginx (dnf)
ansible.builtin.dnf:
name: nginx
when: ansible_os_family == "RedHat"package 단축 방법
간단한 설치에는 일반 package 모듈이 적절한 도구를 자동으로 선택하므로 분기 자체가 필요하지 않을 수도 있습니다.
문자열은 대소문자를 구분합니다
제품군 이름은 정확히 일치해야 합니다. Redhat이나 redhat이 아니라 RedHat입니다. 대소문자가 틀리면 모든 호스트에서 조건이 조용히 건너뛰어집니다. ⚠️
유용한 다른 OS 팩트
제품군 외에도 ansible_distribution_version과 ansible_distribution_major_version을 사용하면 버전에 따라 더 세밀하게 판단할 수 있습니다.
when: ansible_distribution_major_version == "9"분기 전에 확인하기
값을 확신할 수 없나요? 간단한 debug 작업으로 팩트를 출력하면 필요한 정확한 조건을 작성할 수 있습니다.
- ansible.builtin.debug:
var: ansible_os_family팩트를 수집해야 합니다
OS 팩트를 기준으로 분기하려면 gather_facts가 켜져 있어야 합니다. 이를 비활성화했다면 os_family 변수가 정의되지 않습니다.
이식 가능한 플레이북이 유리합니다
모든 배포판을 처리하는 파일 하나가 OS별 사본을 따로 두는 것보다 유지 관리하기 쉽습니다. 팩트와 when을 함께 사용하면 자동화의 이식성이 높아집니다. 🌍
빠른 확인
OS별 분기 방식을 확실히 알아보겠습니다.
복습
Debian과 RedHat을 분기 처리할 때 ansible_os_family을 when에서 사용하십시오. 팩트를 활성화한 상태로 두고 정확한 이름과 일치시키십시오. ✅
자주 묻는 질문
“OS 계열 정보에 따른 분기” 강의는 무료인가요?
네 — “OS 계열 정보에 따른 분기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Ansible Academy 강의 전체를 잠금 해제할 수 있습니다. Ansible Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“OS 계열 정보에 따른 분기”에서 뭘 배우나요?
Debian과 RedHat에 서로 다른 단계를 적용합니다. 브라우저에서 직접 실행하는 실습 코드로 Ansible Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Ansible Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Ansible Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“OS 계열 정보에 따른 분기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Ansible Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Ansible Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- True일 때만 작업 실행하기
- OS 계열 정보에 따른 분기
- and / or로 조건 결합하기
- 결과 등록 후 판단하기