Blueprint의 한 구성 요소의 프로비저닝을 완료하기 위해 다른 구성 요소의 정보가 필요한 경우 종속 구성 요소가 너무 이르게 프로비저닝되지 않도록 설계 캔버스에 명시적 종속성을 설정하여 프로비저닝에 시차를 둘 수 있습니다. 명시적 종속성은 배포의 빌드 순서를 제어하고 확장/축소 작업 중에 항상 종속 업데이트를 트리거합니다.

여러 개의 시스템과 애플리케이션이 포함된 Blueprint를 설계하는 경우, 한 시스템에서 애플리케이션 설치를 완료하기 위해 다른 시스템의 속성이 필요할 수 있습니다. 예를 들어 웹 서버를 구축하는 경우에는 데이터베이스 서버의 호스트 이름을 알고 있어야 애플리케이션을 설치하고 데이터베이스 테이블을 인스턴스화할 수 있습니다. 명시적 종속성을 매핑하는 경우 웹 서버에서 프로비저닝이 완료되면 데이터베이스 서버가 프로비저닝을 시작합니다.

설계 캔버스에서 종속성을 매핑하려면 종속 구성 요소와 사용자가 종속되는 구성 요소를 잇는 선을 그립니다. 완료하면 두 번째로 구축할 구성 요소에 맨 처음 구축한 구성 요소를 가리키는 화살표가 표시됩니다. 예를 들어 '종속성을 매핑하여 빌드 순서 제어' 그림에서 종속 시스템은 기본 시스템이 구축될 때까지 프로비저닝되지 않습니다. 또는 두 시스템을 동시에 프로비저닝하되 소프트웨어 구성 요소 간에 종속성을 설정하도록 구성할 수 있습니다.

그림 1. 종속성을 매핑하여 빌드 순서 제어


Blueprint 캔버스에서 빌드 순서 종속성을 매핑합니다.


확장 가능한 Blueprint를 설계 중인 경우 다른 Blueprint를 재사용하지 않는 단일 계층 Blueprint를 생성하는 것이 좋습니다. 일반적으로, 확장/축소 작업 중의 업데이트 프로세스는 소프트웨어 속성을 시스템 속성에 바인딩할 때 생성하는 종속성과 같은 명시적 종속성에 의해 트리거됩니다. 하지만 중첩된 Blueprint의 경우 명시적 종속성이 항상 업데이트 프로세스를 트리거하는 것은 아닙니다. 확장 가능 Blueprint에서 중첩된 Blueprint를 사용하려는 경우 중첩된 Blueprint의 구성 요소 간에 수동으로 종속성을 설정하여 업데이트를 항상 트리거하는 명시적 종속성을 생성할 수 있습니다.