Se sono necessarie informazioni da uno dei componenti di blueprint per completare il provisioning di un altro componente, è possibile tracciare una dipendenza esplicita sulla tela di progettazione per scaglionare il provisioning in modo da non eseguire il provisioning prematuro del componente dipendente. Le dipendenze esplicite controllano l'ordine di build di una distribuzione e attivano aggiornamenti dipendenti durante un'operazione di scalabilità verticale o orizzontale. I componenti software in un blueprint devono essere ordinati.

Quando si progettano blueprint con più macchine e applicazioni, potrebbero essere presenti proprietà che è necessario ottenere da una macchina per terminare l’installazione di un’applicazione in un’altra. Ad esempio, se si sta generando un server Web, potrebbe essere necessario il nome host del server di database prima di poter installare l'applicazione e creare istanze delle tabelle del database. Se si mappa una dipendenza esplicita, il server di database avvia il provisioning quando il server Web termina il provisioning.

Nota:

I componenti software nel blueprint devono avere una dipendenza ordinata. Componenti software non ordinati possono infatti impedire il provisioning corretto del blueprint. Se per i componenti software non è presente alcuna dipendenza di ordine effettiva, è possibile soddisfare il requisito relativo all'ordine dei blueprint aggiungendo una dipendenza fittizia tra i componenti software.

Per mappare una dipendenza nelle tele di progettazione, è necessario tracciare una riga dal componente dipendente al componente dal quale si dipende. Al termine, il componente che si desidera generare per secondo presenterà una freccia che punta al componente che si desidera generare per primo. Ad esempio, nella figura Controllo dell'ordine di creazione mediante mappatura delle dipendenze, il provisioning della macchina dipendente viene eseguito solo dopo la creazione della macchina principale. In alternativa, è possibile configurare entrambe le macchine in modo che il provisioning venga eseguito simultaneamente ma tracciando una dipendenza tra i componenti software.

Figura 1. Controllo dell'ordine di creazione mediante mappatura delle dipendenze


Mappatura delle dipendenze dell'ordine di creazione nelle tele dei blueprint.


Se si progettano blueprint in modo che siano scalabili, si consiglia di creare singoli blueprint di layer che non riutilizzino altri blueprint. In genere, i processi di aggiornamento durante le operazioni di scalabilità vengono attivati da dipendenze implicite come le dipendenze create quando si associa una proprietà software a una proprietà di macchina. Tuttavia, le dipendenze implicite in un blueprint nidificato non attivano sempre processi di aggiornamento. Se è necessario utilizzare blueprint nidificati in un blueprint scalabile, è possibile tracciare manualmente dipendenze tra i componenti nel blueprint nidificato per creare dipendenze esplicite che attivano sempre un aggiornamento.