The Blueprint Designer provides a canvas for designing your own blueprint. Use built-in steps, scripts, and existing blueprints as building blocks you can drag and drop to perform a specific action or a series of actions, such as launching servers, mounting a volume, registering a load balancer, installing an application, configuring a web cluster, and so on.
- Step 1: Create a new blueprint and enter overview details
- Step 2: Define deployment steps and blueprints
- Step 3: Configure steps and blueprints
- Step 4: Add parameters (optional)
- Step 5: Set up operational tasks (optional)
- Step 6: Set up scaling (optional)
- Step 7: Add failover rules and blueprints (optional)
- Step 8: Add failback rules and processes (optional)
- Step 9: Review and Save
Step 1: Create a new blueprint and enter overview details
- Click Smart Build from the menu bar.
- On the Library page, click New Blueprint. A new blueprint appears displaying the Overview section.
- Enter a name for the blueprint.
- (Optional) Enter a description and tags. A short description can help you and your team members to easily identify the purpose of a blueprint. Tags help you to filter or search your blueprint among the available blueprints and scripts. To insert a tag, enter a tag and press ENTER.
- (Optional) Select the resource location types on which users can deploy your blueprint. By default, no resource location types are selected and your blueprint can be deployed on any of the virtualization or cloud computing platforms Smart Tools supports. If you want to restrict your blueprint to specific platforms, select the applicable resource location types.
- (Optional) Enter any prerequirements for the blueprint.
Step 2: Define deployment steps and blueprints
- Click the Deploy tab. Drag and drop predefined steps, scripts, and other blueprints from the library to define a blueprint deployment process.
- Set up the following global blueprint parameters:
- Runs On: Click Select Servers to select the servers or server groups on which you want to run your blueprint.
- Blueprint Inputs: Enter blueprint inputs. Blueprint Inputs are global parameters that can be called from within any script in a blueprint. For example, you can define a user password as a blueprint input. You can then call this input value from within a step (such as a configuration step for a web server, database, and so on.).
- Options: Select an action from the On failure box for the system to perform in the event of a blueprint failure. By default, the Exit action is set. The options are: Exit, Continue, Pause, and Retry. If you select Retry, you can select the number of retries from the Number of retry box.
- Drag and drop steps and blueprints from your library (at left) into the Blueprint Designer to build your blueprint. You can include blueprints, scripts or steps within blueprints. You cannot include blueprints, scripts or steps within a script or step.
- (Optional) Click Referenced to link the script or blueprint to this blueprint. For more information on blueprint references, see Create references to scripts and blueprints.
Step 3: Configure steps and blueprints
This may involve configuring instance details for launch on cloud provider accounts or selecting target machines on which to perform actions, such as installing applications, mounting volumes, registering load balancers, and so on. Depending on your automation process, you might need to configure some steps or blueprints when you build your blueprint. Some configurations might be required during deployment of the blueprint.
You can use outputs from one step as inputs for another step. This enables the flow of data within a blueprint process, and makes it possible to pre-configure complex automated blueprints containing multiple interrelated steps. For example, you can chain output values from a server launch step (i.e. server attribute values) to a configuration step requiring a server attribute value as an input. See Chain blueprint step outputs and inputs for more information.
(Optional) Step 4: Add parameters
Define input parameters for each step, as required. You can also define global process Inputs. These are global parameters that can be called from within any script in a blueprint. Using process inputs makes it easy to pre-configure multi-step blueprints, enabling single-click deployment of ready-to-use systems, such as web clusters that may involve launching and configuring multiple servers and applications.
The following configuration fields are available for input parameters:
Specifies input parameter types. The following input parameters types are supported:
Specifies an input parameter key.
Value specified for the parameter key. Values defined for parameters are saved and passed during runtime.
Short hint that is displayed in the input or selection field. This text is hidden when a value is entered or selected. You can use placeholder text to display a sample of the input in the expected format. Example: For a URL field, you can use "http://www.url.com."
A short description about the input parameter, its functionality, and usage.
If selected, the parameter is mandatory during blueprint deployment.
If selected, the parameter is editable during blueprint deployment.
If selected, the parameter is visible during blueprint deployment.
If selected, you can refer the parameter from within any script in a blueprint.
Impact to architecture override
If selected, the parameter is used to evaluate a conditional step and does not affect the architecture of the deployment. The parameter is displayed in the configuration step of the blueprint deployment. By default, Smart Tools considers parameters used to evaluate conditional steps as those that affect architecture. These are displayed earlier in the deployment process as architecture options.
You can use regular expression to specify input parameter format and validate the values based on the regular expression. To use regular expression, click the settings icon on the Value box. Select Validate format with regular expressions and define your regular expression format. You can also customize the error message that appears if there is an invalid value input.
(Optional) Step 5: Set up operational tasks
Operational tasks contain actions performed on a specified schedule. Use the Operations section to add operational tasks.
- Click the Manage tab. The Operations section is selected by default.
- Click Add Task.
- Create a schedule for the operational task to run. You can set up repeat intervals and number of occurrences to run, before the operational task ends.
- Drag and drop scripts or steps from the library to build an operational task. You cannot drag and drop a blueprint to an operational task. You need to add atleast one step for a scheduled operational task. You can add your own scripts or add the following predefined steps:
- EC2 Generic Step
- CloudPlatform Step
- Manual Step
- Conditional Step
- Reboot Step
- Wait Step
(Optional) Step 6: Set up scaling
The Blueprint Designer lets you configure manual or automatic scaling of your deployment. Blueprints that include steps for scaling resources up or down (such as adding or removing servers) are self-contained blueprints.
You can use the following manual scaling options:
- Scale Up: Use the Scale Up option to run a process that adds resources (servers and applications) to a deployment launched through an initial Process. You can also use Scale Up to add resources (such as applications) to pre-existing servers provisioned independently.
- Scale Down: Use the Scale Down option to remove resources from a deployment (stop, remove, terminate servers and applications). The Scale Down function runs a pre-configured shutdown process containing steps for removing resources.
You can also use auto scaling to dynamically scale your deployment based on your requirements. You can configure rules and preferences that govern when the deployment need to be scaled up or down and how many servers need to be added or removed.
For more information about configuring scaling, see Manage scaling.
(Optional) Step 7: Add failover rules and blueprints
Using failover blueprints, functions of a failed primary system component can be switched to a secondary system component. The system component may be a processor, server, network, or database.
- Click the Fail Over tab.
- Select failover conditions (All or Any) from the If box. The default option is Any.
- Click Add Rule.
- Select the basis for failover from the For box and click Next. The default condition is Avg of All Machines in Blueprint.
- Select a metric from the Metric For Fail Over box to failover a blueprint. This can either be an app, system or custom metric. For more information on metrics, see the Monitor servers and applications topic.
- Select a failover condition for the selected metric from the Fail Over When box and enter the required values. For example, if you select Agent Ping as a metric, then you can select No Data or Has Data and enter a timeline after which you want the failover to occur.
- Click Finish to save and add the rule to the failover process.
- Drag and drop steps and/or blueprints required for the failover process from the Blueprint Designer.
- Perform configurations (if required) for the added steps and/or blueprints.
(Optional) Step 8: Add failback rules and processes
Using failback blueprints, functions can be restored to a primary system component after they have been switched to a secondary system component during failover.
- Click the Fail Back tab.
- Select failback conditions (All or Any) from the If box. The default option is Any.
- Click Add Rule.
- Select the basis for failback from the For box and click Next. The default condition is Avg of All Machines in Blueprint.
- Select a metric from the Metric For Fail Back box to failback this blueprint. This can either be an app, system or custom metric. For more information on metrics, see the Monitor servers and applications topic.
- Select a failback condition for the selected Metric from the Fail Back When box and enter the required values. For example, if you select Agent Ping as a metric, then you can select No Data or Has Data and enter a timeline after which you want the failback to occur.
- Click Finish to save and add the rule to the failback process.
- Drag and drop steps and/or blueprints required for the failback process from the Blueprint Designer.
- Perform configurations (if required) for the added steps and/or blueprints.
Step 9: Review and Save
- Review all the steps, blueprints, rules, and configurations by clicking the respective tabs.
- Click Save.
Citrix Smart Tools saves the created blueprint and lists it in the Library page. You can deploy the blueprint or reuse it as a sub-process in another blueprint. You can also view, edit, clone, share, or delete a blueprint from the library.