Configuring PAS fails with "size may only be changed to automatic on jobs with non configurable persistent disk size"
search cancel

Configuring PAS fails with "size may only be changed to automatic on jobs with non configurable persistent disk size"

book

Article ID: 293523

calendar_today

Updated On:

Products

Operations Manager

Issue/Introduction

Symptoms:
This error can be reproduced using the followings steps:

1. See the following screenshot to confirm the initial state of the TCP Router job in the PAS tile UI.


2. Click the dropdown for "Persistent Disk Type" on the TCP Router and update the current value from Automatic: 1GB to 2GB. Scroll down to the bottom of the page and click Save.

3. Go to a machine and open up a terminal window which has the Ops Manager CLI installed. Run the following command to generate to the staged-config for your PAS tile:
om -u <user> -p <password> -t <ops-manager-url-endpoint> -k staged-config --product-name cf > pas-staged-config.yml

Note: 

  • user - The user you use to login to ops manager UI.
  • password - The password for the user you have specified.
  • option -k - Used for skipping ssl validation.
4. Check out the pas-staged-config.yml and look for "tcp_router" under the resource-config section. You will see something similar to this:



 5. Return to the terminal window where you generated the staged-config and run the following command:
om -u <user> -p <password> -t <ops-manager-url-endpoint> -k configure-product --config pas-staged-config.yml
 6. The above command will produce the following error:

Environment


Cause

When you run the staged-config command, a GET request is made to the Ops Manager API across the following endpoint /api/v0/staged/products/:product_guid/jobs/:job_guid/resource_config. Next, when you run the configure-product command, a PUT request was made to put the response back or start configuring the PAS tile.

When these requests are made, a property called "configurable" is checked in tile metadata for the TCP Router job. The following snippet shows this metadata:

Since  "configurable" is set to "false" in this case, you are restricted from modifying this value and hence the error is produced.

Resolution

Expected Behavior

The "Persistent Disk Type" on the TCP Router job should be configurable both from the Ops Manager UI and the Ops Manager CLI.

Resolution

Engineering is working towards a patch where the expected behavior can be achieved. The current workaround is to configure the PAS tile manually through the UI and skip the Ops Manager CLI configure-product step when trying to configure PAS using the Ops Manager CLI or an automation task.

Note: If you are trying to update the value of the tcp_router size_mb property in pas-staged-config.yml from a custom value, such as "2048" to automatic, you will be able to get past this error but at the same time you will get a behavior that is not desired.

For example:

  1. Change the size of the TCP Router job to 2GB(2048) in the PAS tile UI, save it and run "Apply Changes". 
  2. You will end with a persistent disk of size 2GB for the TCP Router VM.
  3. Generate the staged-config using the Ops Manager CLI as per the above steps. You will see that the generated staged-config will have a custom value for size_mb (size_mb: "2048") property. If you try to run configure-product now, an error will be thrown.
  4. Edit the staged-config and update the size_mb property for tcp_router to "automatic" (size_mb: automatic)
  5. Run the configure-product command again. The command is successful this time, but will end up changing the value to "Automatic: 1GB". This should be visible in the PAS tile UI itself after successful execution of the configure-product command, which is not desirable if you are planning to keep the size at 2GB.
  6. Run "Apply Changes" and after that you will end up with a disk size of Automatic: 1GB