Did you know that Veeam ONE has a tool called deployment projects that has the ability to simulate how a task such as adding or evicting hosts and VMs impacts your virtual infrastructure? These simulations help us to review predicted resource capacities against future resource demand, provide practical recommendations and help identify potential resource shortages. It’s a quick and easy way to check your resources before making small or large changes. Think of it as a way to perform due diligence and gain insight before making any changes to your virtual environment.

Deployment Projects can be found under Veeam ONE Reporter, to access Veeam ONE Reporter we browse to the URL of the Veeam ONE Reporter website. This website runs on the machine where the Veeam ONE Web UI component is installed. Assuming you have are using the default port it would look similar to https://veeamoneip:1239

Once we have logged into Veeam One Report, open the Workspace section, in the hierarchy on the left, we select All Deployment Projects.

Performance Thresholds

By default, deployment project will use the pre-defined performance thresholds which describe the maximum allowable resource utilisation level that must not be exceeded after the deployment project changes come into effect. These default thresholds are set to the following,

Name Description Default Value CPU Max Load Maximum allowable processor utilisation level on a physical host. 80% vCPUs per core Maximum allowable CPU allocation ratio (the ratio of vCPU to pCPU). It is calculated as the total number of allocated virtual cores divided by the number of physical cores in the target container. 4 Memory max load Maximum allowable memory utilisation level on the physical host.



90% Storage max load The maximum allowable amount of used space on the target datastores. 90%

If you wish to change these thresholds you can by clicking on the thresholds button which is highlighted below.

Adding a Deployment Project

Now that we have reviewed the current thresholds, we can create a deployment project, to do so we simply click Add.

The ‘Add Project’ dialogue box will open and ask us for the following information,

Name Description Name A name specified for the project. Creator The project creator name Container Name The host or clustter for which you want to add hosts or VMs, or from which you want to remove hosts or VMs Datastore (Optional) One or more datastores to which VMs will be placed Scenario Describes configuration of the hosts or VMs that must be added or evicted from the target container Deployment Date Date specified for when the deployment project must be completed.

In this example below, I entered a name of ‘Add VM Simulation’, the creator is the administrator account used to create this deployment project and I have selected an ESXi host and datastore.

The next step is to define the scenarios for which we wish to simulate because I wish to simulate the adding of VM I have chosen to Add the item ‘Virtual Machine’, we can also choose to Evict VMs, Add Hosts or even Evict Hosts. I have provided screenshots below of the steps I took to define a virtual machine being added to my selected ESXi host.

At the next step, we need to define the VM configuration, we have two options here. We can explicitly define a VM configuration by the VM name, the number of CPU cores and CPU clock speed, the amount of memory resources, the amount of space allocated for a virtual disk and the number of disks. Alternatively, we can choose an existing VM that will be used as a template in the scenario.

In this case, we defined the resources manually as shown in the below screenshot

Whats important to mention here is that we can easily simulate small change and large changes simply by adding the required number of items to the Deployment Project. For example, we may be planning to remove an old ESXi host, adding a new ESXi host and looking at provisioning 4 new VMs. Such a simulation would look like the below screenshot.

After accepting the scenario configuration we need to specify the date for when the deployment project must be completed, in this example I have chosen today’s date.

Building the Simulation

After clicking OK, Veeam ONE Reporter will create the project and display the result in the State field. Notice the state is currently ‘Needs to be calculated’, at this stage, we still need to build it (calculate it) to run the scenario modelling and make sure that our modelling meets the deployment conditions. Once the deployment project has been created we need to build the deployment project, to build the project deployment we need to open the Workspace section, in the hierarchy on the left, select all deployment projects and select the necessary deployment project in the list and click Build.

Deployment projects may have one of the following states, its important to be aware of the different states when buiilding Deployment Projects.

State Description Needs to be calculated The state indicates that project calculation is pending. Remediation action is to build the project. Needs to be recalculated The state is assigned if the project settings have changed, or changes in a concurrent project affect the project. Remediation action is to build the project. Failed The state indicates that the project simulation has completed but the deployment cannot be executed successfully due to anticipated resource constraints.The deployment simulation analysis has concluded that it is impossible to place the desired number of hosts and/or VMs without causing the future resource utilization to exceed 100 percent on any of the performance metrics.



Remediation action is to change view the project report and change the project settings in accordance with the report recommendations. Passed with Warnings This state indicates that the deployment is feasible but will cause the resource utilization to breach the threshold values. However, the threshold values will not reach 100 percent.



Remediation action is to change view the project report and change the project settings in accordance with the report recommendations. Passed The state means that the project has completed successfully and its requirements are fully met. There are enough resources to accomplish the planned deployment and maintain an acceptable level of resource utilization.

How Deployment Projects are calculated

The following factors are used in the analysis:

Current compute capacities

Additional capacities introduced through adding new host(s) or evicting VM(s)

Withdrawn compute capacities through evicting host(s)

Extra capacities required to run new VM(s)

The following algorithms are employed to forecast workloads:

When a new VM is added, it is assumed that the VM will use all its provisioned resources.

When an existing VM is selected as a baseline model, Veeam ONE Reporter will use the average value of the VM resource consumption during the current week.

When calculating the amount of free space, Veeam ONE Reporter verifies that there is sufficient storage capacity for all virtual disks of the VM.

Reporting

Once the project has been built, we can see if the simulation was successful and view a report detailing the outcome of the predicted deployment. The deployment project will report as successful if future resource utilisation and performance metrics do not breach the performance thresholds that we covered earlier in this article, remember these thresholds can be tweaked at any time if necessary.

Tentatively successful projects (projects completed with warnings) are caused by resource consumption reaching the thresholds defined but not reaching 100% consumption. For example, our memory max load usage is set to 80% and the simulation reaches 85% usage, we have crossed the threshold but we didn’t reach 100 percent consumption.

By clicking on View Report, we can see a detailed breakdown of the Deployment Project

After we have finished with the deployment project, we need to mark the project as completed. When completing a deployment project, we are telling Veeam ONE Reporter that all resources tied up to the project can be released and made available for calculation for other deployment projects.