Browse Category

VMware

VMware products

Upgrading Aria Operations to 8.17.2 via Aria Suite Lifecycle

In this post i will go over upgrading my 8.x Aria Operations appliance to 8.17.2 using Aria Suite Lifecycle. As a pre requirement we do need to have Aria Suite Lifecycle upgraded to 8.16. Instructions can be found here. The upgrade does not include the latest Product Support Pack. We can apply the latest Product Support Pack following the instructions here.

To get started we can go to Aria Suite Lifecycle -> Lifecycle Operations -> Settings -> Binary Mapping. (If you haven’t added your My VMware credentials you will need to do that first by going to Aria Suite Lifecycle -> Lifecycle Operations -> Settings -> My VMware)

Click on Add Binaries under Product Binaries

Select My VMware and click on Discover

We can see a list of binaries that have been discovered. Make sure we select the upgrade package not the install package. We can select what we need and click on Add

This will create a request and start downloading the package. To view the progress we can click on the Click Here hyperlink

Click on the in Progress button to view the details

We now have to wait for the download to complete

After the download is complete we can go to Environments -> View Details on the environment that includes Aria Operations

Click on Upgrade

An Inventory sync is recommended if the environment has changed since LCM performed the last sync. We trigger the sync from the UI or click on Proceed to continue

Select product Version 8.17.2 and click Next. We can also review the compatibility matrix to make sure the environment is compatible.

Run the Assessment tool to make sure the currently used dashboards, reports, metrics etc are still compatible with the new version

Once the report has finished running we can either Download or view the report. Once everything has been reviewed, we can click on the I have viewed the report and agree to proceed box and click next to proceed to the next step.

A new feature that was added was the capability to automatically create a snapshot prior to the upgrade and remove it after the upgrade. On this screen we also have the ability to chose if we want to keep the snapshots post upgrade for validation testing for example. Click next

Run the Precheck to make sure there are no errors or issues.

Once the check is complete we can review the checks that were performed and we can continue by clicking Next.

Review the upgrade details and click on Next and the Submit. We are taken to the progress screen where we can follow the progress.

The system will get rebooted and once its back up, we will be on 8.17.2

Since we are doing a major upgrade i strongly recommend to clean the cache before using the new Aria Operations version.

Aria Suite Lifecycle Product Support Pack (PSPACK) upgrade – manual version

In this guide i will go over the manual steps of getting an existing 8.x Aria Suite Lifecycle appliance to support the latest product releases available. Here is a great blog that goes in to the details about what the Product Support Pack is https://blogs.vmware.com/management/2019/01/vrslcm-pspak.html. Typically the newer Product Support Pack is included part of the upgrade for Aria Suite Lifecycle, however sometimes there are product releases in between releases where product support packs come in handy. As of 8.16.0 Product Support Pack 4 we can no longer automatically download the Product Support Pack files. The release notes can be found here.

The first step is to log in to Aria Suite Lifecycle under the Lifecycle Operations section

Go to settings -> Product Support Pack

Make sure you download the patch from the support portal first from https://support.broadcom.com

The direct link is here.

We can see that the are no Product Support Packs available

We can click on upload and import the new downloaded Product Support Pack

We can check on the status of the import by clicking on Click Here in the request window

Once completed we can see that PSPACK 8.16.0.4 is available. Based on what we can see in the details the new support pack adds support for a few additional product versions.

Click on Apply Version

Verify that a snapshot or a backup exists and click Submit

We can view the progress by clicking on the Click Here link after submitting the request

Once the process is complete the system will most likely reboot. To check the status we can go back to settings -> Product Support Pack. As we can see we are now at the updated patch level

If you get the below error clear the browser cache and try again

Upgrading Aria Operations to 8.17.1 via Aria Suite Lifecycle

In this post i will go over upgrading my 8.x Aria Operations appliance to 8.17.1 using Aria Suite Lifecycle. As a pre requirement we do need to have Aria Suite Lifecycle upgraded to 8.16. Instructions can be found here. The upgrade does not include the latest Product Support Pack. We can apply the latest Product Support Pack following the instructions here.

To get started we can go to Aria Suite Lifecycle -> Lifecycle Operations -> Settings -> Binary Mapping. (If you haven’t added your My VMware credentials you will need to do that first by going to Aria Suite Lifecycle -> Lifecycle Operations -> Settings -> My VMware)

Click on Add Binaries under Product Binaries

Select My VMware and click on Discover

We can see a list of binaries that have been discovered. Make sure we select the upgrade package not the install package. We can select what we need and click on Add

This will create a request and start downloading the package. To view the progress we can click on the Click Here hyperlink

Click on the in Progress button to view the details

We now have to wait for the download to complete

After the download is complete we can go to Environments -> View Details on the environment that includes Aria Operations

Click on Upgrade

An Inventory sync is recommended if the environment has changed since LCM performed the last sync. We trigger the sync from the UI or click on Proceed to continue

Select product Version 8.17.1 and click Next. We can also review the compatibility matrix to make sure the environment is compatible.

Run the Assessment tool to make sure the currently used dashboards, reports, metrics etc are still compatible with the new version

Once the report has finished running we can either Download or view the report. Once everything has been reviewed, we can click on the I have viewed the report and agree to proceed box and click next to proceed to the next step.

A new feature that was added was the capability to automatically create a snapshot prior to the upgrade and remove it after the upgrade. On this screen we also have the ability to chose if we want to keep the snapshots post upgrade for validation testing for example. Click next

Run the Precheck to make sure there are no errors or issues.

Once the check is complete we can review the checks that were performed and we can continue by clicking Next.

Review the upgrade details and click on Next and the Submit. We are taken to the progress screen where we can follow the progress.

The system will get rebooted and once its back up, we will be on 8.17.1

Since we are doing a major upgrade i strongly recommend to clean the cache before using the new Aria Operations version.

Aria Suite Lifecycle Product Support Pack (PSPACK) upgrade

In this guide i will go over the steps of getting an existing 8.x Aria Suite Lifecycle appliance to support the latest product releases available. Here is a great blog that goes in to the details about what the Product Support Pack is https://blogs.vmware.com/management/2019/01/vrslcm-pspak.html. Typically the newer Product Support Pack is included part of the upgrade for Aria Suite Lifecycle, however sometimes there are product releases in between releases where product support packs come in handy.

The first step is to log in to Aria Suite Lifecycle under the Lifecycle Operations section

Go to settings -> Product Support Pack

We can see that i recently upgraded to 8.16.0 however a new update is available 8.16.0.2. Based on what we can see in the details the new support pack adds support for a few additional product versions. If an update is not available click on the Check Support Packs Online button and refresh the screen within a few minutes

Click on Apply Version

Verify that a snapshot or a backup exists and click Submit

We can view the progress by clicking on the Click Here link after submitting the request

Once the process is complete the system will most likely reboot. To check the status we can go back to settings -> Product Support Pack. As we can see we are now at the updated patch level

If you get the below error clear the browser cache and try again

Creating a Custom Role in vCenter for Aria Automation: A Step-by-Step Guide

Introduction
Automation in VMware environments enhances efficiency, reduces human error, and improves the consistency of operations. Aria Automation (formerly vRealize Automation) is a powerful tool designed to automate processes in your VMware infrastructure. However, to fully leverage its capabilities, Aria Automation requires specific permissions in vCenter. This blog post will guide you through creating a custom role in vCenter with all necessary permissions for the Aria Automation service account.

Prerequisites

  • Access to vCenter with administrative privileges.
  • VMware PowerCLI installed on your computer.
  • Familiarity with VMware environments and basic scripting.

Step 1: Establish a Connection to Your vCenter Server
Begin by opening VMware PowerCLI and connecting to your vCenter server. Use the following script, substituting your actual credentials and server details:

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password

Step 2: Define the Role and Permissions
Next, specify the role’s name and the permissions necessary for Aria Automation. These permissions will allow Aria Automation to manage virtual machines and other resources effectively:

$roleName = "Aria Automation Custom Role"
$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Folder.Create",
    "Folder.Delete",
    "Datastore.Browse",
    "Datastore.FileManagement",
    "Datastore.AllocateSpace",
    "Network.Assign",
    "VirtualMachine.Inventory.Create",
    "VirtualMachine.Inventory.CreateFromExisting",
    "VirtualMachine.Inventory.Delete",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.Interact.PowerOn",
    "VirtualMachine.Interact.PowerOff",
    "VirtualMachine.Interact.Suspend",
    "VirtualMachine.Interact.Reset",
    "VirtualMachine.Interact.ConsoleInteract",
    "VirtualMachine.Interact.DeviceConnection",
    "VirtualMachine.Interact.SetCDMedia",
    "VirtualMachine.Interact.ToolsInstall",
    "VirtualMachine.Config.Rename",
    "VirtualMachine.Config.Annotation",
    "VirtualMachine.Config.AddExistingDisk",
    "VirtualMachine.Config.AddNewDisk",
    "VirtualMachine.Config.RemoveDisk",
    "VirtualMachine.Config.CPUCount",
    "VirtualMachine.Config.Memory",
    "VirtualMachine.Config.AddRemoveDevice",
    "VirtualMachine.Config.EditDevice",
    "VirtualMachine.Config.Settings",
    "VirtualMachine.Config.Resource",
    "VirtualMachine.Config.AdvancedConfig",
    "VirtualMachine.Config.SwapPlacement",
    "VirtualMachine.Config.DiskExtend",
    "VirtualMachine.Config.ChangeTracking",
    "VirtualMachine.State.CreateSnapshot",
    "VirtualMachine.State.RevertToSnapshot",
    "VirtualMachine.State.RemoveSnapshot",
    "VirtualMachine.Provisioning.Customize",
    "VirtualMachine.Provisioning.Clone",
    "VirtualMachine.Provisioning.DeployTemplate",
    "VirtualMachine.Provisioning.CloneTemplate",
    "VirtualMachine.Provisioning.ReadCustSpecs",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Authorization.ModifyPermissions",
    "VApp.ApplicationConfig",
    "VApp.Import",
    "StoragePod.Config",
    "InventoryService.Tagging.AttachTag",
    "InventoryService.Tagging.ModifyUsedByForCategory",
    "ContentLibrary.EvictLibraryItem",
    "InventoryService.Tagging.DeleteCategory",
    "ContentLibrary.TypeIntrospection",
    "ContentLibrary.GetConfiguration",
    "InventoryService.Tagging.EditTag",
    "ContentLibrary.UpdateSession",
    "ContentLibrary.UpdateLibrary",
    "InventoryService.Tagging.ModifyUsedByForTag",
    "ContentLibrary.SyncLibraryItem",
    "ContentLibrary.UpdateSubscribedLibrary",
    "ContentLibrary.UpdateLibraryItem",
    "ContentLibrary.DeleteLibraryItem",
    "InventoryService.Tagging.CreateTag",
    "InventoryService.Tagging.DeleteTag",
    "ContentLibrary.SyncLibrary",
    "ContentLibrary.UpdateConfiguration",
    "ContentLibrary.DownloadSession",
    "ContentLibrary.DeleteLocalLibrary",
    "InventoryService.Tagging.ObjectAttachable",
    "ContentLibrary.EvictSubscribedLibrary",
    "ContentLibrary.DeleteSubscribedLibrary",
    "ContentLibrary.CreateSubscribedLibrary",
    "ContentLibrary.UpdateLocalLibrary",
    "InventoryService.Tagging.EditCategory",
    "InventoryService.Tagging.CreateCategory",
    "ContentLibrary.ProbeSubscription",
    "ContentLibrary.ReadStorage",
    "ContentLibrary.AddLibraryItem",
    "ContentLibrary.CreateLocalLibrary"
)

Step 3: Create the Custom Role
Create the role using the New-VIRole cmdlet. This step involves applying the previously defined permissions to the new role:

New-VIRole -Name $roleName -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."

Step 4: Verify and Disconnect
After creating the role, it’s good practice to verify that the role has been created with the correct permissions. Then, ensure you disconnect from your vCenter server securely:

Disconnect-VIServer -Server $vcServer -Confirm:$false

Step 5: Put it all together

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password
$roleName = "Aria Automation Custom Role"
$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Folder.Create",
    "Folder.Delete",
    "Datastore.Browse",
    "Datastore.FileManagement",
    "Datastore.AllocateSpace",
    "Network.Assign",
    "VirtualMachine.Inventory.Create",
    "VirtualMachine.Inventory.CreateFromExisting",
    "VirtualMachine.Inventory.Delete",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.Interact.PowerOn",
    "VirtualMachine.Interact.PowerOff",
    "VirtualMachine.Interact.Suspend",
    "VirtualMachine.Interact.Reset",
    "VirtualMachine.Interact.ConsoleInteract",
    "VirtualMachine.Interact.DeviceConnection",
    "VirtualMachine.Interact.SetCDMedia",
    "VirtualMachine.Interact.ToolsInstall",
    "VirtualMachine.Config.Rename",
    "VirtualMachine.Config.Annotation",
    "VirtualMachine.Config.AddExistingDisk",
    "VirtualMachine.Config.AddNewDisk",
    "VirtualMachine.Config.RemoveDisk",
    "VirtualMachine.Config.CPUCount",
    "VirtualMachine.Config.Memory",
    "VirtualMachine.Config.AddRemoveDevice",
    "VirtualMachine.Config.EditDevice",
    "VirtualMachine.Config.Settings",
    "VirtualMachine.Config.Resource",
    "VirtualMachine.Config.AdvancedConfig",
    "VirtualMachine.Config.SwapPlacement",
    "VirtualMachine.Config.DiskExtend",
    "VirtualMachine.Config.ChangeTracking",
    "VirtualMachine.State.CreateSnapshot",
    "VirtualMachine.State.RevertToSnapshot",
    "VirtualMachine.State.RemoveSnapshot",
    "VirtualMachine.Provisioning.Customize",
    "VirtualMachine.Provisioning.Clone",
    "VirtualMachine.Provisioning.DeployTemplate",
    "VirtualMachine.Provisioning.CloneTemplate",
    "VirtualMachine.Provisioning.ReadCustSpecs",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Authorization.ModifyPermissions",
    "VApp.ApplicationConfig",
    "VApp.Import",
    "StoragePod.Config",
    "InventoryService.Tagging.AttachTag",
    "InventoryService.Tagging.ModifyUsedByForCategory",
    "ContentLibrary.EvictLibraryItem",
    "InventoryService.Tagging.DeleteCategory",
    "ContentLibrary.TypeIntrospection",
    "ContentLibrary.GetConfiguration",
    "InventoryService.Tagging.EditTag",
    "ContentLibrary.UpdateSession",
    "ContentLibrary.UpdateLibrary",
    "InventoryService.Tagging.ModifyUsedByForTag",
    "ContentLibrary.SyncLibraryItem",
    "ContentLibrary.UpdateSubscribedLibrary",
    "ContentLibrary.UpdateLibraryItem",
    "ContentLibrary.DeleteLibraryItem",
    "InventoryService.Tagging.CreateTag",
    "InventoryService.Tagging.DeleteTag",
    "ContentLibrary.SyncLibrary",
    "ContentLibrary.UpdateConfiguration",
    "ContentLibrary.DownloadSession",
    "ContentLibrary.DeleteLocalLibrary",
    "InventoryService.Tagging.ObjectAttachable",
    "ContentLibrary.EvictSubscribedLibrary",
    "ContentLibrary.DeleteSubscribedLibrary",
    "ContentLibrary.CreateSubscribedLibrary",
    "ContentLibrary.UpdateLocalLibrary",
    "InventoryService.Tagging.EditCategory",
    "InventoryService.Tagging.CreateCategory",
    "ContentLibrary.ProbeSubscription",
    "ContentLibrary.ReadStorage",
    "ContentLibrary.AddLibraryItem",
    "ContentLibrary.CreateLocalLibrary")
New-VIRole -Name $roleName -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."
Disconnect-VIServer -Server $vcServer -Confirm:$false

Conclusion
Creating a custom role for the Aria Automation service account in vCenter is an essential step for securing and optimizing your automation tasks. By assigning precise permissions tailored to your needs, you can maintain a secure and efficient VMware environment.

Happy Automating!

This blog post offers a practical walkthrough for VMware professionals looking to customize and secure their VMware automation tools, ensuring a robust setup for extensive and complex automation tasks.

Creating a Custom Role in vCenter for Aria Operations Actions

Introduction
Monitoring your VMware infrastructure effectively is crucial for maintaining system health and performance. VMware’s Aria Operations (formerly vRealize Operations) provides comprehensive monitoring capabilities, but it requires specific permissions to function optimally. In this blog post, we’ll walk through the steps to create a custom role in vCenter specifically for the Aria Operations service account, ensuring it has the necessary permissions to monitor and take actions in your infrastructure.

Prerequisites
Before we begin, ensure you have the following:

  • Access to vCenter with administrative privileges.
  • VMware PowerCLI installed on your system.
  • Basic understanding of VMware vSphere and Aria Operations.

Step 1: Connect to Your vCenter Server
Open VMware PowerCLI and connect to your vCenter server using the following commands. Replace the placeholders with your actual login credentials and vCenter server details.

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password

Step 2: Define the Role and Required Permissions
Define the role name and the specific permissions needed for Aria Operations to monitor the system. Here, we create a variable for the role and an array containing all necessary permissions IDs.

$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Global.Health",
    "Global.SystemTag",
    "Global.GlobalTag",
    "Datastore.Browse",
    "Datastore.AllocateSpace",
    "Host.Inventory.EditCluster",
    "Host.Inventory.ManageClusterLifecyle",
    "VirtualMachine.Inventory.Delete",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.Interact.PowerOn",
    "VirtualMachine.Interact.PowerOff",
    "VirtualMachine.Interact.Reset",
    "VirtualMachine.GuestOperations.Query",
    "VirtualMachine.GuestOperations.Modify",
    "VirtualMachine.GuestOperations.Execute",
    "VirtualMachine.GuestOperations.QueryAliases",
    "VirtualMachine.GuestOperations.ModifyAliases",
    "VirtualMachine.Config.CPUCount",
    "VirtualMachine.Config.Memory",
    "VirtualMachine.Config.Resource",
    "VirtualMachine.State.CreateSnapshot",
    "VirtualMachine.State.RemoveSnapshot",
    "VirtualMachine.Namespace.Management",
    "VirtualMachine.Namespace.Query",
    "VirtualMachine.Namespace.ModifyContent",
    "VirtualMachine.Namespace.ReadContent",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Resource.QueryVMotion",
    "StorageProfile.Apply",
    "Performance.ModifyIntervals",
    "Extension.Register",
    "Extension.Update",
    "Extension.Unregister",
    "ExternalStatsProvider.Register",
    "ExternalStatsProvider.Update",
    "ExternalStatsProvider.Unregister",
    "vStats.QueryAny",
    "vStats.CollectAny",
    "vStats.Settings",
    "AutoDeploy.Rule.Create",
    "AutoDeploy.RuleSet.Activate",
    "AutoDeploy.Rule.Edit",
    "AutoDeploy.RuleSet.Edit",
    "StorageProfile.Update",
    "StorageProfile.View",
    "StorageViews.ConfigureService",
    "AutoDeploy.Rule.Delete",
    "StorageViews.View"
)

Step 3: Create the Custom Role
Use the New-VIRole cmdlet to create the new role with the defined permissions. This step applies the permissions array to the role.

New-VIRole -Name $roleName -Description $roleDescription -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."

Step 4: Confirm and Disconnect
After the role is successfully created, you will receive a confirmation output. Always ensure to disconnect from your vCenter server cleanly to avoid any security issues.

Disconnect-VIServer -Server $vcServer -Confirm:$false

Step 5: Put it all together

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password
$roleName = "Aria Operations Actions Role"
$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Global.Health",
    "Global.SystemTag",
    "Global.GlobalTag",
    "Datastore.Browse",
    "Datastore.AllocateSpace",
    "Host.Inventory.EditCluster",
    "Host.Inventory.ManageClusterLifecyle",
    "VirtualMachine.Inventory.Delete",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.Interact.PowerOn",
    "VirtualMachine.Interact.PowerOff",
    "VirtualMachine.Interact.Reset",
    "VirtualMachine.GuestOperations.Query",
    "VirtualMachine.GuestOperations.Modify",
    "VirtualMachine.GuestOperations.Execute",
    "VirtualMachine.GuestOperations.QueryAliases",
    "VirtualMachine.GuestOperations.ModifyAliases",
    "VirtualMachine.Config.CPUCount",
    "VirtualMachine.Config.Memory",
    "VirtualMachine.Config.Resource",
    "VirtualMachine.State.CreateSnapshot",
    "VirtualMachine.State.RemoveSnapshot",
    "VirtualMachine.Namespace.Management",
    "VirtualMachine.Namespace.Query",
    "VirtualMachine.Namespace.ModifyContent",
    "VirtualMachine.Namespace.ReadContent",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Resource.QueryVMotion",
    "StorageProfile.Apply",
    "Performance.ModifyIntervals",
    "Extension.Register",
    "Extension.Update",
    "Extension.Unregister",
    "ExternalStatsProvider.Register",
    "ExternalStatsProvider.Update",
    "ExternalStatsProvider.Unregister",
    "vStats.QueryAny",
    "vStats.CollectAny",
    "vStats.Settings",
    "AutoDeploy.Rule.Create",
    "AutoDeploy.RuleSet.Activate",
    "AutoDeploy.Rule.Edit",
    "AutoDeploy.RuleSet.Edit",
    "StorageProfile.Update",
    "StorageProfile.View",
    "StorageViews.ConfigureService",
    "AutoDeploy.Rule.Delete",
    "StorageViews.View"
)
New-VIRole -Name $roleName -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."
Disconnect-VIServer -Server $vcServer -Confirm:$false

Conclusion
Creating a custom role in vCenter for your Aria Operations service account is a best practice that enhances both security and functionality. By following these steps, you equip your monitoring tools with the necessary permissions without compromising the principle of least privilege.

Happy Monitoring!

This guide provides a clear pathway to securing your VMware infrastructure monitoring with Aria Operations, ensuring you’re well-prepared to tackle performance and health monitoring with confidence.

Creating a Custom Role in vCenter for Aria Operations Monitoring

Introduction
Monitoring your VMware infrastructure effectively is crucial for maintaining system health and performance. VMware’s Aria Operations (formerly vRealize Operations) provides comprehensive monitoring capabilities, but it requires specific permissions to function optimally. In this blog post, we’ll walk through the steps to create a custom role in vCenter specifically for the Aria Operations service account, ensuring it has the necessary permissions to monitor your infrastructure.

Prerequisites
Before we begin, ensure you have the following:

  • Access to vCenter with administrative privileges.
  • VMware PowerCLI installed on your system.
  • Basic understanding of VMware vSphere and Aria Operations.

Step 1: Connect to Your vCenter Server
Open VMware PowerCLI and connect to your vCenter server using the following commands. Replace the placeholders with your actual login credentials and vCenter server details.

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password

Step 2: Define the Role and Required Permissions
Define the role name and the specific permissions needed for Aria Operations to monitor the system. Here, we create a variable for the role and an array containing all necessary permissions IDs.

$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Global.Health",
    "Global.SystemTag",
    "Global.GlobalTag",
    "Datastore.Browse",
    "Datastore.AllocateSpace",
    "Host.Inventory.EditCluster",
    "Host.Inventory.ManageClusterLifecyle",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.GuestOperations.Query",
    "VirtualMachine.GuestOperations.Modify",
    "VirtualMachine.GuestOperations.Execute",
    "VirtualMachine.GuestOperations.QueryAliases",
    "VirtualMachine.GuestOperations.ModifyAliases",
    "VirtualMachine.Namespace.Management",
    "VirtualMachine.Namespace.Query",
    "VirtualMachine.Namespace.ModifyContent",
    "VirtualMachine.Namespace.ReadContent",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Resource.QueryVMotion",
    "StorageProfile.Apply",
    "Performance.ModifyIntervals",
    "Extension.Register",
    "Extension.Update",
    "Extension.Unregister",
    "ExternalStatsProvider.Register",
    "ExternalStatsProvider.Update",
    "ExternalStatsProvider.Unregister",
    "vStats.QueryAny",
    "vStats.CollectAny",
    "vStats.Settings",
    "AutoDeploy.Rule.Create",
    "AutoDeploy.RuleSet.Activate",
    "AutoDeploy.Rule.Edit",
    "AutoDeploy.RuleSet.Edit",
    "StorageProfile.Update",
    "StorageProfile.View",
    "StorageViews.ConfigureService",
    "AutoDeploy.Rule.Delete",
    "StorageViews.View"
)

Step 3: Create the Custom Role
Use the New-VIRole cmdlet to create the new role with the defined permissions. This step applies the permissions array to the role.

New-VIRole -Name $roleName -Description $roleDescription -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."

Step 4: Confirm and Disconnect
After the role is successfully created, you will receive a confirmation output. Always ensure to disconnect from your vCenter server cleanly to avoid any security issues.

Disconnect-VIServer -Server $vcServer -Confirm:$false

Step 5: Put it all together

$vcServer = 'vcenter.yourdomain.com'
$username = '[email protected]'
$password = 'yourPassword'
Connect-VIServer -Server $vcServer -User $username -Password $password
$roleName = "Aria Operations Monitoring Role"
$permissions = @(
    "System.Anonymous",
    "System.View",
    "System.Read",
    "Global.ManageCustomFields",
    "Global.SetCustomField",
    "Global.Health",
    "Global.SystemTag",
    "Global.GlobalTag",
    "Datastore.Browse",
    "Datastore.AllocateSpace",
    "Host.Inventory.EditCluster",
    "Host.Inventory.ManageClusterLifecyle",
    "VirtualMachine.Inventory.Move",
    "VirtualMachine.GuestOperations.Query",
    "VirtualMachine.GuestOperations.Modify",
    "VirtualMachine.GuestOperations.Execute",
    "VirtualMachine.GuestOperations.QueryAliases",
    "VirtualMachine.GuestOperations.ModifyAliases",
    "VirtualMachine.Namespace.Management",
    "VirtualMachine.Namespace.Query",
    "VirtualMachine.Namespace.ModifyContent",
    "VirtualMachine.Namespace.ReadContent",
    "Resource.AssignVMToPool",
    "Resource.HotMigrate",
    "Resource.ColdMigrate",
    "Resource.QueryVMotion",
    "StorageProfile.Apply",
    "Performance.ModifyIntervals",
    "Extension.Register",
    "Extension.Update",
    "Extension.Unregister",
    "ExternalStatsProvider.Register",
    "ExternalStatsProvider.Update",
    "ExternalStatsProvider.Unregister",
    "vStats.QueryAny",
    "vStats.CollectAny",
    "vStats.Settings",
    "AutoDeploy.Rule.Create",
    "AutoDeploy.RuleSet.Activate",
    "AutoDeploy.Rule.Edit",
    "AutoDeploy.RuleSet.Edit",
    "StorageProfile.Update",
    "StorageProfile.View",
    "StorageViews.ConfigureService",
    "AutoDeploy.Rule.Delete",
    "StorageViews.View"
)
New-VIRole -Name $roleName -Privilege (Get-VIPrivilege -Id $permissions)
Write-Output "Role '$roleName' created successfully with necessary permissions."
Disconnect-VIServer -Server $vcServer -Confirm:$false

Conclusion
Creating a custom role in vCenter for your Aria Operations service account is a best practice that enhances both security and functionality. By following these steps, you equip your monitoring tools with the necessary permissions without compromising the principle of least privilege.

Happy Monitoring!

This guide provides a clear pathway to securing your VMware infrastructure monitoring with Aria Operations, ensuring you’re well-prepared to tackle performance and health monitoring with confidence.

Setting User SSH Keys in NSX: A Guide for Custom Labels and Types

In VMware NSX, configuring SSH keys for users with specific labels and types provides a tailored access control approach that enhances both security and management capabilities. This blog walks through the process of setting user-specific SSH keys in NSX, using customized labels and types for better organization and identification.

Overview

SSH keys are crucial for secure authentication in NSX environments, allowing administrators to manage access without exposing systems to the risks of password-based logins. By setting SSH keys with specific labels and types, you can streamline user access management and improve security configurations.

Prerequisites

Ensure you have administrative access to the NSX Manager and that the users have generated their SSH key pairs. You will need the public key, and an understanding of the user’s role and required access level within NSX.

Step 1: Prepare the SSH Key Information

Collect the following information for each user:

  • User ID: The identifier for the user in NSX.
  • Label: A unique label to identify the key’s purpose or the user’s role.
  • Type: The encryption type of the SSH key, typically RSA or ECDSA.
  • Public Key: The actual public key string.

Example format:

set user [USER] ssh-keys label [LABEL] type [TYPE] value [PUBLIC KEY]

Step 2: Access the NSX Manager CLI

Connect to your NSX Manager via SSH or through the direct console interface. You will need to use the administrative credentials to log in.

ssh admin@nsx-manager-ip

Step 3: Add the SSH Key

Once logged in, you can add the SSH key for the user. Replace [USER], [LABEL], [TYPE], and [PUBLIC KEY] with the actual values. Here’s an example command:

set user jdoe ssh-keys label admin-access type rsa value "AAAAB3NzaC1yc2EAAAADAQABAAABAQC..."

This command sets an RSA key for user jdoe with the label admin-access.

Step 4: Verify the Key Setup

After adding the SSH key, verify that it has been correctly set up by listing the SSH keys for the user:

show user jdoe ssh-keys

This command should display all SSH keys associated with the user, including the newly added key with its label and type.

Step 5: Test SSH Connectivity

Have the user test their SSH connectivity to ensure that the key works correctly:

ssh -i /path/to/private/key jdoe@nsx-manager-ip

If the setup is correct, the user should be able to connect without a password prompt, indicating that the key has been accepted.

Conclusion

Setting user SSH keys in NSX with specific labels and types is a powerful way to enhance your network security and streamline access management. By organizing SSH keys in this manner, you can easily maintain control over who accesses what within your NSX environment, ensuring that only authorized users can perform administrative tasks.

Deploying the Aria Suite Lifecycle using VCF 5

The official documentation for deploying the Aria Suite can be found here

First step is to download the bundle by going to sddc-manager -> Repository -> Bundle management. Look for VMware Software Install Bundle – vRealize Suite Lifecycle Manager 8.16.0-23377566

After the download is complete we can go to Administration -> VMware Aria Suite and a deploy button should be available. If the deploy button is not available due to X-Region Application Virtual Network is not created error please follow the instructions found here:

Verify the Prerequisites and click on begin

Verify the network settings and click Next

Fill up the network and appliance settings and click next

Review the summary and click Finish

We can follow the progress by click on the Task on the bottom of the screen

This allows me to see the subtasks that are running

Once the deployment is complete we can open the Aria Suite Lifecycle by clicking on the Window icon link

Additionally towards the bottom of the page we can see the rest of the Aria Suite components that can be deployed.

We can then log in to the Aria Suite Lifecycle using vcfadmin@local with the credentials used during the deployment.

We can see that the deployment wizard also created a few configurations items.

We can now proceed with the deployment of the rest of the components. The deployments will be done from Aria Suite Lifecycle.

How to Enable SSH on the NSX appliance

Enabling SSH on NSX appliances via the CLI (Command Line Interface) is an essential skill for VMware administrators, providing a more direct and scriptable approach to managing and configuring the NSX environment. Here’s how to enable SSH on NSX from the CLI, allowing for secure, remote administration of your virtual network infrastructure.

Pre-Requisites

Ensure you have local or console access to the NSX appliance (NSX Manager, NSX Edge, or Controller) for initial setup. Administrative credentials will be required to execute the following commands. The instructions have been tested on NSX 4.1.2.3

Steps to Enable SSH on NSX via CLI

  1. Access the NSX Appliance CLI: Connect to the console of the NSX appliance.
  2. Log in as Admin: Use the username admin and the password configured during the NSX appliance setup to log in.
  3. Enable SSH Service: Execute the command set service ssh start to enable the SSH service. This command starts the SSH daemon, allowing SSH connections to the appliance.
  4. (Optional) Configure SSH Service to Start on Boot: To ensure the SSH service is automatically started upon system reboot, execute set service ssh start-on-boot. This step is crucial for maintaining remote access after system restarts.
  5. Verify SSH Service Status: To confirm the SSH service is running, you can use the command get service ssh. This command displays the current status of the SSH service, including whether it’s running and if it’s configured to start on boot.

Security Considerations

When enabling SSH, consider implementing security measures to protect your NSX environment:

  • Use Strong Passwords: Ensure that all user accounts have strong, complex passwords.
  • Implement Access Control: Restrict SSH access to trusted hosts or networks using firewall rules.
  • SSH Key Authentication: For enhanced security, use SSH key-based authentication instead of passwords.
  • Regularly Update and Patch: Keep your NSX and all connected systems up to date with the latest security patches.

Conclusion

Enabling SSH on NSX via the CLI is a straightforward process that enhances the manageability and accessibility of your network virtualization environment. With SSH enabled, administrators can securely manage the NSX appliances from remote locations, streamlining operations and maintenance tasks. Always follow security best practices to safeguard your environment against unauthorized access.