다음에 나오는 Automation Assembler의 간단한 플러그인 기반 예제의 경우 계산 및 이미지 도우미를 통해 가상 시스템의 배치 및 게스트 운영 체제가 제어됩니다.
1. 계정 및 영역 인프라 추가
us-east-1 및 us-west-2 클라우드 영역이 있는 AWS 클라우드 계정을 추가합니다. 각각 region-east
및 region-west
영역에 태그를 지정합니다.
2. 이미지 매핑 인프라 추가
영역에 따라 서로 다른 식별자의 이미지를 가리키는 하나의 ubuntu
이미지 맵을 추가합니다.
3. 프로젝트 추가
프로젝트를 생성합니다. 프로젝트의 프로비저닝 아래에서 영역 2개를 추가합니다.
4. 설계 시작
Automation Assembler의 설계 탭에서 빈 캔버스를 사용하여 새 설계를 시작합니다.
5. 캔버스에 도우미 추가
계산 도우미 및 이미지 도우미를 캔버스로 끌어옵니다.
6. 도우미 구성
도우미에 대한 코드에서 ubuntu
이미지와 region-west
의 일치하는 제약 조건 태그를 추가합니다. 클래식 워크플로에서는 이러한 속성을 리소스 자체에 직접 추가했을 것입니다.
Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west
7. 캔버스에 가상 시스템 리소스 추가
AWS EC2 리소스를 캔버스로 끌어옵니다. (Classic)
리소스가 아님에 유의하십시오. 최신 리소스에는 코드에서 볼 때 특수한 접두사가 표시됩니다.
8. 리소스를 도우미에 바인딩
EC2에 대한 코드에서 도우미에 정의된 대로 이전 인프라를 참조하는 바인딩을 추가합니다. selected
라는 용어가 바인딩의 일부로 포함되는데 이는 도우미가 선택을 수행하기 때문입니다.
Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: bnixInstance account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
설계 캔버스에서 바인딩을 추가하면 리소스가 점선으로 도우미에 연결됩니다.
9. 완료된 템플릿
완료된 예에서는 다음 코드를 사용합니다. 참고로 EC2 리소스에 instance_type: t1.micro
를 직접 추가하는 대신 버전 매핑 인프라를 구성하고 버전 도우미를 함께 사용해도 됩니다.
formatVersion: 1 inputs: {} resources: Allocations_Image_1: type: Allocations.Image properties: image: ubuntu Allocations_Compute_1: type: Allocations.Compute properties: constraints: - tag: region-west Idem_AWS_EC2_INSTANCE_1: type: Idem.AWS.EC2.INSTANCE properties: name: bnixInstance account: ${resource.Allocations_Compute_1.selectedCloudAccount.name} region: ${resource.Allocations_Compute_1.selectedRegion.name} image_id: ${resource.Allocations_Image_1.selectedImageId} instance_type: t1.micro
AWS의 EC2 기본 속성을 여기에서 추가로 구성할 수 있습니다. 구성하지 않는다면 이제 완료된 템플릿을 테스트하고 배포할 수 있습니다.