Unsupported content This version of the documentation is no longer supported. However, the documentation is available for your convenience. You will not be able to leave comments.

Provisioning for Azure Resource Manager (with or without templates)


Through templates, Azure Resource Manager gives developers and systems administrators an easy way to create and manage a collection of related Azure resources, provisioning and updating them in an orderly and predictable fashion.

The topics in this section provide information and instructions for deploying Azure resources from Azure Resource Manager (with or without templates):

Note

You cannot perform provisioning and other actions ( start, stop, restart, and shutdown) by using Legacy UI. BMC recommends using the new end user portal.

Process for deploying Azure resources from Azure Resource Manager

In version 4.6.04 and later, BMC Cloud Lifecycle Management service blueprints allow specifications of one or more external templates that are sequenced among other template constructs (servers and other elements). You can use sample templates from Azure Resource Manager or create your own templates to describe the Azure resources (and any associated dependencies or runtime parameters) required to run your application.

You can create templates for the service or application architectures you want and have Azure Resource Manager use those templates for quick and reliable provisioning of the services or applications (called “resource groups”). Through the My Cloud Services console, the template invocation service returns the information about the provisioned artifacts, such as names, identifiers, and connection details (all grouped under a name or identifier for the resource group).

After the Azure resources are deployed, you can also easily update the resource group to conform to a newly submitted template (which might effectively roll back any changes in the artifacts, or drive a change into the resultant resource group compared to its original state). Or, you can update the resource group to replicate the group as needed.

In BMC Cloud Lifecycle Management 4.6.05 and later, you can also provision Azure resources without templates through Azure Resource Manager.

To enable end users to deploy Azure resources from Azure Resource Manager (with or without templates), you must create a custom provider. The entire process is as follows:

Step

Where to find out how

1. Install BMC Cloud Lifecycle Management 4.6.04 or later for the Azure artifacts.

The first section below

2. Register AzureRM Templates as the proxy custom resource provider.

3. Manage Azure provider users.

4. Onboard resources for Azure.

5. Map tenants to the logical data center.

6. Set up service blueprints for custom resources.

7. Create a service offering.

8. Provision an Azure service.

9. Set up support for managed disk

10. Manage the Azure resources

Registering Azure Resource Manager or Azure Template Provider as a proxy custom resource provider

Use this procedure to register Azure Resource Manager or Azure Template Provider. (This procedure is available for BMC Cloud Lifecycle Management 4.6.04 and later.)

  1. From the BMC Cloud Lifecycle Management Administration Console, click the vertical Workspaces menu on the left side of the window and select Providers.
  2. Under Quick Links, select Custom.
     

    Note

    If you do not deploy the artifacts from BMC Communities as indicated in the ZipKit instructions section, Custom will not appear as an option.

  3. On the Providers page, click the Register icon plus_button.gif.
  1. In the Register Provider dialog box, select AzureRMTemplateProvider as the resource provider type to register.

 Complete or modify the following fields, as necessary.

In version 4.6.05.002 and later, you will see these fields:

Register_Azure4605002.png

Field

Description

Name

(Required) Specify a name for this instance of the Azure Resource Manager provider.

Description

(Optional) Specify a useful description of the provider. Descriptions can help you distinguish provider instances and help you find a provider by using Search.

Task Polling Retry Count

(Required) Specify the number of allowable attempts to access Azure Resource Manager.

Task Polling Interval (in seconds)

(Required) Specify the interval (in seconds) between each retry.

Enable Proxy

Select true to enable BMC Cloud Lifecycle Management to access the Internet via a proxy host.

The default value is false; proxy mode is not enabled.

Note: When Enable Proxy is set to false, do not enter values into the fields that follow (even though they are enabled). Only complete the fields when Enable Proxy is set to true.

Proxy Type

The field automatically includes HTTP, which is the only supported type. (HTTPS and SOCKS are not supported.)

Proxy Host

Enter the name or IP address of the system that serves as the proxy host. If proxy is enabled, this field is required.

Proxy Port

Enter the port on which BMC Cloud Lifecycle Management communicates with the proxy host (for example, 8080). If proxy is enabled, this field is required.

Proxy Username

Enter the name of a proxy user.

Proxy Password

Enter the password for the above user.

Azure AR VM Images Refresh Time in Hours

Enter the refresh interval (in hours) for Azure Resource Manager virtual machine images.

Resource Groups Containing Custom VM Images

Enter the names of the Azure Resource Manager groups that contain the custom virtual machine images you want to use. To enter multiple groups, enter a comma-separated list. To specify containers in a resource group, use the following format:

ResourceGroupName::ContainerName

Publishers for Public Images

Enter any public VM image publishers you want to include. Use the following format:

PUBLISHER::OFFER::SKU::VERSION

To enter multiple publishers, enter a comma-separated list.

PUBLISHER is required, and the other entries are optional. For example, if you want to enter three publishers (Canonical, Microsoft and RedHat) and have details for only the Canonical publisher, you could enter:

Canonical::UbuntuServer::14.04.2-LTS::latest,Microsoft,RedHat

By default, no public images are fetched.

Tag Azure Resources While Provisioning

Select True to include the tags that you add through the ARM_TAGS parameter. The tags are added to the Azure Resource Manager resource group and resources. (For more information, see Service-blueprint-parameters-for-Azure.)

By default, the following tags are always added to the resource in Azure:

  • CLM Owner
  • CLM ServiceOfferingInstance
  • CLM Tenant

If you select False, then none of the tags are applied.

New in 4.6.06Azure Storage

Select managed_disks to enable BMC Cloud Lifecycle Management to use managed disks. The default is unmanaged_disks. For more information, see To set up support for managed disk and replication type.

New in 4.6.06Relax ARM Resource Group Constraint

Select True to create a resource group with the name that the user has provided in the resource-container parameter. If the resource group with the specified name already exists, then it will consume that resource group to deploy or consolidate all workloads. However, if you select False, then ensure that you must specifiy an already existing resource group name in the resource-container parameter. The default is True. For more information, see Service-blueprint-parameters-for-Azure.

In version 4.6.04, you will see these fields:

Register_Azure.png

Field

Description

Name

(Required) Specify a name for this instance of the Azure Resource Manager provider.

Description

(Optional) Specify a useful description of the provider. Descriptions can help you distinguish provider instances and help you find a provider by using Search.

Task Polling Retry Count

(Required) Specify the number of allowable attempts to access Azure Resource Manager.

Task Polling Interval (in seconds)

(Required) Specify the interval (in seconds) between each retry.

Enable Proxy

Select true to enable BMC Cloud Lifecycle Management to access the Internet via a proxy host.

The default value is false; proxy mode is not enabled.

Note: When Enable Proxy is set to false, do not enter values into the fields that follow (even though they are enabled). Only complete the fields when Enable Proxy is set to true.

 

Proxy Type

The field automatically includes HTTP, which is the only supported type. (HTTPS and SOCKS are not supported.)

Proxy Host

Enter the name or IP address of the system that serves as the proxy host. If proxy is enabled, this field is required.

Proxy Port

Enter the port on which BMC Cloud Lifecycle Management communicates with the proxy host (for example, 8080). If proxy is enabled, this field is required.

Proxy Username

Enter the name of a proxy user.

Proxy Password

Enter the password for the proxy user.

Installing BMC Cloud Lifecycle Management 4.6.04 or later for the Azure artifacts

To integrate BMC Cloud Lifecycle Management with Azure Resource Manager, install BMC Cloud Lifecycle Management 4.6.04 or later.

To ensure that BMC CSM (Platform Manager), BMC Remedy AR System, and mid tier services are up and running:

  1. Log on to the Cloud Lifecycle Management Administration Console.
  2. Click the vertical Workspaces menu at the left and select Configuration.
  3. On the General tab > Resync Index section, click Sync Index.
  4. Wait for the Sync Index operation to complete.

Before you get started, make sure that name resolution works for the following hosts or make an appropriate DNS entry for these hosts:

Note

BMC Cloud Lifecycle Management 4.6.06 has been certified with Squid proxy server. The proxy server must allow HTTP and HTTPS data traffic.

BMC Cloud Lifecycle Management 4.6.06 does not support the following proxy options:

  • Proxy with user name and password
  • Proxy with multi-level authentication
  • Proxy with domain authentication

The proxy also needs the following hosts, and the proxy does not restrict them:

Service type

Azure public

Azure government

Management portal

General

Core

Compute

Blob storage

Queue storage

Table storage

Service management

ARM load-balanced endpoint

If BMC Cloud Lifecycle Management environment is completely isolated from internet traffic, perform the following steps to honour the proxy:

  1. Go to the Platform Manager host.
  2. Stop the Platform Manager service.
  3. Open <PlatformManagerInstallationPath>/Platform_Manager/wrapper.conf file.
  4. Add the following entries to the file:

    # Java Additional Parameters


    #For http configuration
    wrapper.java.additional.10=-Dhttp.proxyHost=10.5.28.110
    wrapper.java.additional.11=-Dhttp.proxyPort=80
    wrapper.java.additional.12=-Dhttp.nonProxyHosts="localhost|127.0.0.1|*.<domain_for_all_clm_hosts>|<any_additional_criteria_if_required>"
    #For https configuration
    wrapper.java.additional.13=-Dhttps.proxyHost=10.5.28.110
    wrapper.java.additional.14=-Dhttps.proxyPort=80
    wrapper.java.additional.15=-Dhttps.nonProxyHosts="localhost|127.0.0.1|*.<domain_for_all_clm_hosts>|<any_additional_criteria_if_required>"
  5. Save the file.

    If you are defining proxy related settings in the wrapper.conf file, all the providers configured in the BMC Cloud Lifecycle Management environment honours the settings defined in the wrapper.conf file.

  6. Clean OSGi cache under  <PlatformManagerInstallationPath>/Platform_Manager/configuration directory.

    drwxr-xr-x 3 root root 1024 Dec 11 17:59 org.eclipse.core.runtime
    drwxr-xr-x 3 root root 1024 Dec 11 02:45 org.eclipse.equinox.app
    drwxr-xr-x 4 root root 1024 Dec 11 18:05 org.eclipse.osgi
  7. Start the Platform Manager service.

Setting up service blueprints for custom resources (AzureRMTemplateProvider) with templates

In version 4.6.04 and later, the Service Designer workspace offers considerable flexibility when defining a blueprint for a custom resource like AzureRMTemplateProvider. The following sections provide steps for creating a simple blueprint that uses a custom resource and steps for creating a multi-tier blueprint. For more details, see also Building-service-blueprints-for-an-Azure-service and Service-blueprint-parameters-for-Azure.

To create a service blueprint with templates or hybrid blueprint

  1. In the Service Designer workspace, click Create New > Service Blueprint.
  2. Click Custom Resource.
    A new Custom Resource is added to the service blueprint as shown in the following figure:
    CustomResourceBP.gif

    In BMC Cloud Lifecycle Management 4.6.05 and later, you can create mixed mode (hybrid) blueprints by adding another resource set. For example, a blueprint can contain both custom resources and Azure resources for instance-based provisioning as shown below:

     MixedMode.png

  3.  Go to Service Deployment Definition > Service Deployment Definition Name > Resource set.
  4. Click Edit
  5. Go to Compute Resources tab and verify the Installable Resource name. 

    AnyInstallableResource.png

    In BMC Cloud Lifecycle Management 4.6.05.002, if the value of the installable resource name (Cloud Platform > Machine Image) is preceded by (Any), then the images are deployed on any of the available regions depending on the logical hosting environment selection at the time of provisioning. For more information about logical hosting environment, see Managing-Logical-Data-Centers-for-the-Azure-Provider.

    However, you must ensure that the image names are identical in the regions. For example, if you have a Win2K12EnterpriseEdition image  in both EastUS region and WestUS region, and the value of the Machine Image field is (Any)Win2K12EnterpriseEdition, then the image is deployed in any of the two regions. 

    To retrieve the value in Cloud Platform > Machine Image field, you must ensure that you have entered a resource group name containing managed images in the Register Provider > Resource Groups containing Custom VM Images field.

  6. Click OK.
  7. Click Save.
  8. Enter a unique name for your blueprint to describe the custom resource type (for example, Azure_SingleLAMP).
  9. Provide a Description.
  10. Click OK.

    Note

    After onboarding, the Azure Provider auto-publishes all of the images from your Microsoft Azure account to the BMC Product Catalog with the following attributes for each Definitive Media Library (DML) entry:

    • Product TypeSoftware
    • CI Type: Product
    • Categorization Tier1Software Distribution
    • Categorization Tier2VM Template
    • Categorization Tier3AzureRM
    • Product Name<Valid Azure image name as listed in the Image Gallery of Microsoft Azure management portal>
    • ManufacturerAzureRM

    If the images are not available or are deleted in your Microsoft Azure account, the Cloud Administrator must delete the DML entries manually from BMC Cloud Lifecycle Management.

    Note

    The Monitoring Blueprint Configuration option type is not applicable for Azure Resource Manager (for provisioning with templates and without templates). Even though you can select the options native to the service blueprint, namely Enable MonitoringEnable Monitoring Policy, and Monitoring Level, these options do not have any significance.

Back to top

Setting up service blueprints for custom resources without templates

The following sections provide steps for creating a simple blueprint that uses a custom resource. 

To create a service blueprint without templates

  1. In the Service Designer workspace, click Create New > Service Blueprint.
  2. Click Custom Resource.
    A new Custom Resource is added to the service blueprint as shown in the following figure:
    CustomResourceBP.gif

    In BMC Cloud Lifecycle Management 4.6.05 and later, you can create mixed mode (hybrid) blueprints by adding another resource set. 
    MixedMode.png

  3.  Go to Service Deployment Definition > Service Deployment Definition Name > Resource set.
  4. Click Edit
  5. Go to Compute Resources tab and verify the Installable Resource name. 

    AnyInstallableResource.png

    In BMC Cloud Lifecycle Management 4.6.05.002, if the value of the installable resource name (Cloud Platform > Machine Image) is preceded by (Any), then the images are deployed on any of the available regions depending on the logical hosting environment selection at the time of provisioning. For more information about logical hosting environment, see Managing-Logical-Data-Centers-for-the-Azure-Provider.

    However, you must ensure that the image names are identical in the regions. For example, if you have a Win2K12EnterpriseEdition image  in both EastUS region and WestUS region, and the value of the Machine Image field is (Any)Win2K12EnterpriseEdition, then the image is deployed in any of the two regions.

    Note

    To retrieve the value in Cloud Platform > Machine Image field, you must ensure that you have entered a resource group name containing managed images in the Register Provider > Resource Groups containing Custom VM Images field.

  6. Click OK.
  7. Click Save.
  8. Enter a unique name for your blueprint to describe the custom resource type (for example, Azure_SingleLAMP).
  9. Provide a Description.
  10. Click OK.

    Note

    After onboarding, the Azure Provider auto-publishes all of the images from your Microsoft Azure account to the BMC Product Catalog with the following attributes for each Definitive Media Library (DML) entry:

    • Product TypeSoftware
    • CI Type: Product
    • Categorization Tier1Software Distribution
    • Categorization Tier2VM Template
    • Categorization Tier3AzureRM
    • Product Name<Valid Azure image name as listed in the Image Gallery of Microsoft Azure management portal>
    • ManufacturerAzureRM

    If the images are not available or are deleted in your Microsoft Azure account, the Cloud Administrator must delete the DML entries manually from BMC Cloud Lifecycle Management.

List of custom load balancer parameters for Azure Provider

If you want to use Azure load balancer, ensure that you add the following parameters in BMC Atrium and BMC Cloud Lifecycle Management blueprint:

Parameter Name

Value  (Example )

PROBE_REQUEST_PATH

C:\StorageVolume

PROBE_COUNT

13

PROBE_INTERVAL

10

PROBE_PORT

8080

PROBE_PROTOCOL

HTTP

AZURE_FLOATING_IP

TRUE

AZURE_IDLE_TIME_OUT

10

AZURE_SESSION_PERSISTENCE

CLIENT_IP_AND_PROTOCOL

Back to top

Adding an Azure resource set to a multi-tier service blueprint

  1. In the Service Designer workspace, click the Azure resource in the service blueprint that you created.
  2. In the edit pane for that resource set, under Custom Resource Properties, specify information for the new Azure resource.
    Custom_resource_properties.png

    Field

    Instruction

    Proxy Provider Definition

    Select the proxy provider (AzureRMTemplateProvider).

    Type

    Select the type of resource (CustomResource).

    Subtype

    Select the subtype of the resource (AzureRM TemplateProvider).

    IR Type

    Select the installable resource type (External Repository).

    Location

    Specify the full path to the JSON file that contains the Azure template information.
    The Azure Resource Manager service must be able to resolve this URL. The URL can be on a public site, or it can be on an Azure storage location that is configured to require an access token to read the content. In the latter case (which is more secure), you append one of the following arguments to the URL so that BMC Cloud Lifecycle Management generates a static, long-living shared-access signature (SAS) token (as described in Microsoft Azure documentation):

    #sastoken_template# (This argument is not applicable for nested templates.)
    #sastoken# (use for nested templates)
    #sastoken_storage#
    #sastoken_container#

    For nested templates, use the #sastoken_storage# or #sastoken_container# if all referred templates are within same storage account or container.

           https://linuximgdisks455.blob.core.windows.net/templates/iaas-template.json#sastoken_container#

    For more information about deploying private templates with SAS tokens, see the Microsoft Azure documentation.

    Note: Only Azure storage accounts are supported as protected repositories for hosting templates.

     

    Account

    Select an Azure account. 

    Region

    Select the region for the account.

  3. Click the Discover Parameters button to upload the parameters from the JSON file that you entered in the Location field.
    The parameters appear on the Parameters panel.
    Azure_parameters.png
    These parameters are examples. Your environment might use different parameters.
  4. On the Parameters panel, add, edit, and delete the necessary parameters.

    Note

    The parameters that you add depend on the Azure resources that you want to create. If the parameters defined in the service blueprint are configured with User Entry Enabled and Required options, you can see the one-click Reprovisioning option.

    For more information about entering parameters, see Configuring-service-blueprint-parameters. See also Service-blueprint-parameters-for-Azure.

  5. Click the custom resource set (the green box) to provide basic details.

    Field

    Instruction

    Name

    Enter a name for the custom resource set.

    Description

    Describe the purpose or nature of the custom resource set.

    Number of Instances

    Enter the number of instances to be provisioned. The number you enter appears in the upper-right corner of the box representing a resource instance.

    Tags

    Define any tags you want applied to this resource set.  These tags must match the tags you specify in the logical data center.

    For more information about tags in service blueprints, see Managing-blueprint-tags.

  6. To allow a custom resource set to be reused in other service blueprints, save it to the Blueprint Library:
    1. Right-click the custom resource set and click Convert to Reference.
    2. Enter a Name for the custom resource set (for example, Azure_Infrastructure).
      This name will be visible in the Blueprint Library; therefore, provide a name that cloud administrators can easily identify as the custom resource set.
    3. Enter a Description of the custom resource set.
    4. Click OK.
      The blueprint is added to the Service Blueprints section of the Blueprint Library.
  7. After you finish defining the custom service blueprint, click Save and provide a name for the service blueprint.
    You can save a version of a blueprint and assign a tag to each version, as described in Creating-copying-or-editing-a-service-blueprint.

Back to top

Seting up support for managed disk and replication type

New in 4.6.06 BMC Cloud Lifecycle Management 4.6.05.001 and earlier versions supported un-managed instances or images. BMC Cloud Lifecycle Management 4.6.05.002 and later supports managed disks. For more information about managed disks, see https://docs.microsoft.com/en-us/azure/virtual-machines/windows/managed-disks-overview.

To set the value to use managed disk

  1. From the BMC Cloud Lifecycle Management Administration Console, click the vertical Workspaces menu on the left side of the window and select Providers.
  2. Under Quick Links, select Custom.
  3. Click the provider for which you want detailed information.
  4. Click Edit.
  5. In the Azure Storage field, select a value for the disk storage. The default value is unmanaged_disks.
  6. Click Submit.

    The following table displays all the possible combination:

Value of the Azure Storage field

What you can provision

managed_disks

VM with managed disks

unmanaged_disks

VM with unmanaged disks

VM with managed disks


To set the value of the managed disk storage option

  1. In the Service Designer workspace, click the Azure resource in the service blueprint that you created.
  2. In the edit pane for that resource set, under Custom Resource Properties, specify information for the new Azure resource.
  1. With a blueprint open for editing in the Service Designer, open one of the following Compute Resources objects:
  2. Click either the Tags field or the Add icon plus_icon.gif next to the Tags field.
    The Tags menu appears.
  1. In the Tags menu, click the tag you want to add. 
  2. For ARM Managed OS Disk Account tag group,  select Premium_LRS or Standard_LRS. OR
    For ARM Managed Data Disk Account tag group, select Premium_LRS or Standard_LRS. For more information, see Managing-blueprint-tags.

    Note

     Do not apply both the tag groups to the same disk.

  3. Click Save.

You can select either of them to decide the nature of the drive. You cannot set Premium LRS for an unsupported instance or family. 

Back to top

Managing Azure resources 

You can perform the following basic management actions if the template is modified:

  • Decommission Service: You can decommission a service before the planned decommission date you specified when you created the cloud service.
  • Extend Decommission Date: You can extend the life of a service past the planned decommission date you specified when you created the cloud service.
  • Reprovision Service: When you create cloud services, you specify provisioning parameters. You can update the resource group parameters and reprovision the service.

To reprovision a custom resource

Note

The Reprovision action is available depending on how the Azure Resource Manager template is authored. You can add resources or modify an existing resource from an existing Azure deployment if they are managed in the Azure Resource Manager template. To support the Reprovision action, you can also edit the template, but make sure that the template's URI remains the same.

Perform the following steps if you want to update the existing Azure resources:   

  1. Navigate to My Cloud Services console > My Resources tab > Resource Type > Custom Resources.
  1. Click the hyperlink for the specific custom resource as shown in the following figure:
    Click_custom_resource_to_reprovision.JPG  
  2. On the Custom Resources details page, click Reprovision.
    Reprovisioning_Custom_Resource_2.jpg
  3. On the Custom Resource Reprovision dialog box, specify new values for the Azure resources that you want to reprovision.
    ParametersForReprovisioning.jpg
  1. Click Reprovision.
    After reprovisioning is complete, the new values for the Azure resources are displayed.

Back to top

Related BMC Communities videos

See the following BMC Community video for more information:

icon-play.png Setting up Azure Resource Manager provisioning (9:12): https://youtu.be/rAL6AXOsi1k 

Related topic

Setting-up-and-using-external-templates-for-provisioning