시작: Azure Cloud Shell을 사용하여 Ansible 구성
Azure에서 Ansible을 구성하고 기본 Azure 리소스 그룹을 만들어 Ansible을 시작합니다.
Ansible은 클라우드 프로비저닝, 구성 관리 및 애플리케이션 배포를 자동화하는 오픈 소스 제품입니다. Ansible을 사용하여 가상 머신, 컨테이너 및 네트워크를 프로비전하고 클라우드 인프라를 완료할 수 있습니다. 또한 Ansible을 사용하면 사용자 환경에서 리소스의 배포 및 구성을 자동화할 수 있습니다.
이 문서에서는 Azure Cloud Shell 환경에서 Ansible 시작에 대해 설명합니다.
환경 구성
- Azure 구독: Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
- Azure Cloud Shell 구성 - Azure Cloud Shell을 처음으로 사용하는 경우 Azure Cloud Shell에서 Bash에 대한 빠른 시작을 참조하세요.
Cloud Shell 세션이 이미 열려 있는 경우 다음 섹션으로 건너뛸 수 있습니다.
Azure Portal로 이동합니다.
필요한 경우 Azure 구독에 로그인하고 Azure 디렉터리를 변경합니다.
Cloud Shell을 엽니다.
이전에 Cloud Shell을 사용하지 않은 경우 환경 및 스토리지 설정을 구성합니다.
명령줄 환경을 선택합니다.
자동 자격 증명 구성
Cloud Shell에 로그인하면 Ansible은 추가 구성 없이 인프라를 관리하기 위해 Azure로 인증합니다.
여러 구독을 사용하는 경우 AZURE_SUBSCRIPTION_ID
환경 변수를 내보내서 Ansible이 사용하는 구독을 지정합니다.
모든 Azure 구독을 나열하려면 다음 명령을 실행합니다.
az account list
Azure 구독 ID를 AZURE_SUBSCRIPTION_ID
사용하여 다음과 같이 설정합니다.
export AZURE_SUBSCRIPTION_ID=<your-subscription-id>
Ansible 설치 테스트
이제 Cloud Shell 내에서 사용할 Ansible을 구성했습니다.
이 섹션에서는 새 Ansible 구성 내에서 테스트 리소스 그룹을 만드는 방법을 보여줍니다. 그렇게 할 필요가 없는 경우 이 섹션을 건너뛸 수 있습니다.
Azure 리소스 그룹 만들기
다음 코드를 .로
create_rg.yml
저장합니다.--- - hosts: localhost connection: local tasks: - name: Creating resource group - "{{ name }}" azure_rm_resourcegroup: name: "{{ name }}" location: "{{ location }}" register: rg - debug: var: rg
ansible-playbook을 사용하여 플레이북을 실행합니다. 자리 표시자를 만들 리소스 그룹의 이름 및 위치로 바꿉니다.
ansible-playbook create_rg.yml --extra-vars "name=<resource_group_name> location=<resource_group_location>"
주요 정보:
- 플레이북의
register
변수 및debug
섹션으로 인해 명령이 완료되면 결과가 표시됩니다.
- 플레이북의
Azure 리소스 그룹 삭제
다음 코드를 .로
delete_rg.yml
저장합니다.--- - hosts: localhost tasks: - name: Deleting resource group - "{{ name }}" azure_rm_resourcegroup: name: "{{ name }}" state: absent register: rg - debug: var: rg
ansible-playbook 명령을 사용하여 플레이북을 실행합니다. 자리 표시자를 삭제할 리소스 그룹의 이름으로 바꿉니다. 리소스 그룹 내의 모든 리소스가 삭제됩니다.
ansible-playbook delete_rg.yml --extra-vars "name=<resource_group>"
주요 정보:
- 플레이북의
register
변수 및debug
섹션으로 인해 명령이 완료되면 결과가 표시됩니다.
- 플레이북의