Question

Getting error after After commvault upgrade with cvpysdk

  • 9 June 2023
  • 5 replies
  • 167 views

Badge +1

Hi,

We had automated the process of creating a vm group for a hypervisor for AWS, this was working for new AWS that were never configured with commvault before, but after we upgraded commvault to the latest version, our script failed while executing subclient._process_add_request(json_request) on a new AWS account with the following error:

raise SDKException('Response', '101', self._update_response_(response.text))
cvpysdk.exception.SDKException: Response was not success
},"errorMessage":"The [AWS-Plan-Development] plan is an Elastic Plan. To select this plan, associate the client to a region.","errorCode":587206437

We noticed that the Workload region wasn't set in the admin console of Commvault (Under Virtualization/Hypervisors) for this new account, which was done automatically before. So after setting this option and rerunning our script, our script could finish the setup successfully.

We instantiated the Commvault client, and we could verify that the region was already assigned on the client like this:

hypervisor = commcell.clients.get("our-new-aws-client")
client_props = hypervisor.properties
client_props.get('clientProps', {}).get('clientRegionInfo', {})

Which would give us: {'region': {'regionId': 63, 'displayName': 'Europe (Ireland)', 'regionName': 'eu-west-1'}}

Was there any change on the API spec that could create this behavior? We would appreciate a lot if you could help us to fix this error.

It's worth noting that we upgraded our cvpysdk version to 11.30.1

Kind regards


5 replies

Userlevel 7
Badge +19

Did you upgrade to the latest FR30 maintenance release? B.t.w. you state you manually set the region and afterwards you checked if the region was set correctly? Or did you create another hypervisor to see if you could reproduce the issue once again? 

Badge +1

Hi Onno,

 

We are now running the 11.28 version of commvault.

I did create a new hypervisor, so we could reproduce this issue as many times as we need. What I was trying to say is that our automation depends on having this “workload region” filled, so when we manually set it in the GUI, the rest of the script continues without an issue. Is just that after commvault was upgraded, now this “workload region” is never set, so I have to keep going to the GUI and doing this manual step.

 

How can I programmatically set the “workload region” for an hypervisor using cvpysdk?

I also created a github issue, but so far nobody could help us with this.

 

Thank you again for your help

Userlevel 7
Badge +19

Looks like the SDK doesn't support it yet, so you could do it using this API call → https://api.commvault.com/#ad1b85c3-7db1-4ba0-a7e6-cb63d04d267c

I've send a message in a channel to see if someone can respond. 

Badge +1

I think we don’t have issues with the client region, from my original message you can see that we managed to print the region associated with the client:

hypervisor = commcell.clients.get("our-new-aws-client")
client_props = hypervisor.properties
client_props.get('clientProps', {}).get('clientRegionInfo', {})

Which would give us: {'region': {'regionId': 63, 'displayName': 'Europe (Ireland)', 'regionName': 'eu-west-1'}}

Our issue is with the workload region that is not set, which I can’t find in the API documentation.

I will check if the plan region is also set. Thank you for sending them a message, we appreciate your help.

Badge

Hi,

Since the commvault service pack has not been changed so there should not be any change in functionality.

Can you check if below log lines appear at default log level in AppMgrService.log during hypervisor creation? We need to see if the workload region is getting attached to the Hypervisor.

Pseudoclient [] is associated with the region []

Pseudoclient [] is not associated to any region

Reply