상위 19개 Ansible 인터뷰 질문 및 답변(PDF)
꿈의 직업을 얻기 위한 신입 지원자와 경력 지원자를 위한 Ansible 면접 질문과 답변은 다음과 같습니다.
신입생을 위한 Ansible 면접 질문
1) 앤서블이란 무엇인가?
Ansible은 구성 관리 시스템입니다. 인프라와 애플리케이션을 설정하고 관리하는 데 사용됩니다. 사용자는 다음을 사용하여 애플리케이션을 배포하고 업데이트할 수 있습니다. SSH, 원격 시스템에 에이전트를 설치할 필요가 없습니다.
👉 무료 PDF 다운로드: Ansible 인터뷰 질문 및 답변 >>
2) Ansible의 용도는 무엇입니까?
책임감있는 IT 인프라를 관리하고 소프트웨어 앱을 원격 노드에 배포하는 데 사용됩니다.
예를 들어 Ansible을 사용하면 단일 명령으로 여러 노드에 애플리케이션을 배포할 수 있습니다. 그러나 이를 위해서는 Ansible 스크립트를 이해하기 위한 프로그래밍 지식이 필요합니다.
3) 앤서블 갤럭시란 무엇인가요?
Ansible은 ansible 명령을 사용하여 명령줄에서 구성된 클라이언트와 통신할 수 있습니다. 또한 ansible-playbook 명령을 사용하여 구성을 자동화할 수도 있습니다. 기본 디렉터리 구조를 생성하려면 ansible-galaxy라는 Ansible과 함께 번들로 제공되는 도구를 사용할 수 있습니다.
명령 :
$ ansible-galaxy init azavea. packer
azavea.packer가 성공적으로 생성되었습니다.
4) 지속적 전달이란 무엇입니까?
지속적인 전달(Continuous Delivery)은 소프트웨어가 개발되는 즉시 전달하는 방식입니다. 이 방법에서는 버전 관리 시스템을 사용해야 합니다. 소프트웨어는 라이브 프로덕션 시스템에서 지속적으로 업데이트됩니다.
5) Ansible에서 쉘 환경 변수에 액세스하는 방법은 무엇입니까?
Ansible에서 기존 변수에 액세스하려면 사용자는 'env' 조회 플러그인을 사용해야 합니다. 예를 들어, 관리 시스템에서 Office 환경의 값에 액세스하려면:
다음 코드를 작성해야 합니다.
--- # ... vars: local_home: "{{ lookup('env','Office') }}" I {{ ansible_env.SOME_VARIABLE }}
6) 변수 이름에 접근하기 위해 작성해야 하는 코드는 무엇입니까?
다음 방법을 사용하여 변수 이름을 추가하여 만들 수 있습니다.
{{ hostvars[inventory_hostname]['ansible_' + which_interface]['ipv4']['address'] }}
Hostvars를 사용하는 방법은 변수의 전체 네임스페이스에 대한 사전이기 때문에 중요합니다. 'inventory_hostname' 변수는 호스트 루프에서 살펴보고 있는 현재 호스트를 지정합니다.
7) Cowsay를 비활성화하는 방법을 설명해주세요.
Coway가 설치된 경우 Ansible 내부에서 플레이북을 실행하면 다음 옵션을 사용하여 Coway를 비활성화할 수 있습니다.
- 카우세이 제거
- 환경 변수 값 설정
ANSIBLE_NOCOWS=1 내보내기
8) 대상 호스트에 파일을 재귀적으로 복사하는 방법을 설명해주세요.
"복사" 모듈에는 재귀적 매개변수가 있습니다. 그러나 많은 수의 파일에 대해 더 효율적으로 수행하려면 "동기화" 모듈이 가장 좋은 옵션입니다.
9) Ansible에서 문서 변경 사항을 어떻게 제출할 수 있나요?
Ansible에 대한 문서는 프로젝트 git 저장소에 보관됩니다. 여기에는 기여에 대한 전체 지침이 포함되어 있으며 문서에서 찾을 수 있습니다.
10) 콘텐츠를 재사용/재배포 가능하게 만드는 가장 좋은 방법은 무엇입니까?
플레이북 문서 섹션에서 "역할"에 대한 모든 내용을 읽을 수 있습니다. 이는 플레이북 콘텐츠를 독립적으로 만들고 다른 Ansible 사용자와 공유할 수 있도록 하는 데 도움이 됩니다.
숙련된 전문가를 위한 Ansible 인터뷰 질문 및 답변
11) 앤서블 타워란 무엇입니까?
Ansible Tower는 Ansible을 매우 쉽게 사용할 수 있도록 해주는 도구입니다. 작업 자동화를 위한 허브 역할을 합니다. 타워는 10노드까지 무료로 사용할 수 있습니다.
12) 호스트에 정의된 인벤토리 변수를 확인하는 방법은 무엇입니까?
이를 위해 다음 명령을 사용하십시오.
ansible -m debug -a "var=hostvars['hostname']" localhost
13) 변수 이름과 환경 변수의 차이점을 기술하십시오.
변수 이름 | 환경 변수 |
---|---|
문자열을 추가하여 만들 수 있습니다. | 환경 변수에 액세스하려면 기존 변수에 액세스해야 합니다. |
{{ hostvars[inventory_hostname][‘ansible_’ + which_interface][‘ipv4’][‘address’] }} | # … 변수: local_home: “{{ 조회('env','HOME') }}" |
문자열 추가 허용 | 환경 변수를 설정하려면 고급 플레이북 섹션을 확인해야 합니다. |
변수 이름에 IPv4 주소 유형 사용 우리는 IPv4 주소를 사용합니다. | 원격 환경 변수의 경우 {{ ansible_env.SOME_VARIABLE }}을 사용합니다. |
14) 임시 명령이란 무엇입니까?
플레이북을 작성하지 않고도 호스트에서 조치를 취하는 방법으로 임시 명령을 생각할 수 있습니다. 예를 들어 특정 그룹(웹 서버)의 모든 호스트를 재부팅하려는 경우입니다. 그런 다음 플레이북을 작성하거나 간단히 일회성 임시 명령을 실행할 수 있습니다.
15) Ansible 사실 설명
Ansible 사실을 Ansible이 호스트에 대한 정보를 얻고 쉽게 액세스할 수 있도록 변수에 저장하는 방법으로 생각할 수 있습니다. 사전 정의된 변수에 저장된 이 정보는 플레이북에서 사용할 수 있습니다. 사실을 생성하기 위해 ansible은 설정 모듈을 실행합니다.
16) 호스트의 모든 변수를 어떻게 볼 수 있나요?
Hostvars 변수를 사용하여 볼 수 있습니다. 호스트 이름을 키로 사용하여 호스트 변수를 저장합니다. 예를 들어, localhost에 정의된 변수를 보려면 다음을 실행할 수 있습니다.
ansible -m debug -a "var=hostvars[inventory_hostname]"
17) Ansible의 모듈을 설명하세요.
Ansible의 모듈은 멱등적입니다. RESTful 서비스 관점에서 작업이 멱등적이기 위해서는 클라이언트가 Ansible의 모듈을 사용하여 동일한 결과를 수행할 수 있습니다. 여러 개의 동일한 요청이 단일 요청이 됩니다.
Ansible에는 두 가지 유형의 모듈이 있습니다.
- 핵심 모듈
- 추가 모듈
핵심 모듈
Ansible 팀은 이러한 유형의 모듈을 유지 관리하며 항상 Ansible 소프트웨어와 함께 제공됩니다. 또한 "추가" 저장소에 있는 요청보다 모든 요청에 더 높은 우선순위를 부여합니다.
추가 모듈:
이러한 모듈은 현재 Ansible과 함께 번들로 제공되지만 향후 별도로 제공될 수 있습니다. 또한 대부분 Ansible 커뮤니티에서 유지 관리합니다. 이러한 모듈은 여전히 사용할 수 있지만 이슈 및 풀 리퀘스트에 대한 응답률이 낮을 수 있습니다.
18) 언제 플레이북과 역할을 테스트해야 합니까?
Ansible에서는 새 플레이북이나 기존 플레이북에 테스트를 추가할 수 있습니다. 따라서 대부분의 테스트 작업은 매번 깨끗한 호스팅을 제공합니다. 이 테스트 방법을 사용하면 코드 변경이 거의 또는 전혀 필요하지 않습니다.
19) Ansible을 사용하여 빈 파일을 생성하는 방법에 대해 논의
파일을 생성하고 비우려면 주어진 단계를 따라야 합니다.
1단계. 빈 파일을 파일 디렉터리에 저장
2단계. 원격 호스트에 복사합니다.
이 인터뷰 질문은 당신의 비바(구술)에도 도움이 될 것입니다.