Symptoms

Important: only OSA version 7.0 affected.

It is not possible to change network configuration of a VE, buttons 'Add IPv4 address' and 'Release' fail due to a task with the message:

[ApplicationUnknownError] [APS] {
"error": "APS::Util::OutOfResourceLimits",
"message": "Creation of resource with type 'http://www.parallels.com/infrastructure/virtual-environment/ip-v4-address/1.0' is not allowed. Make sure that corresponding Resource is included into Subscription and does not exceed its limit."
}

Or "Execute operation 'change_environment_network'" task fails with errors like:

403 Forbidden
406 Not Acceptable

There were some change orders for IPv4 resource recently on the subscription, and there is a failed order pending provisioning.

The limit of the IPv4 address resource on Operations side does not match the amount of included IPv4 resource rates in Billing.

The amount of IP addresses listed for the VE in Provider's CP Cloud Infrastructure > Virtual Servers > Server_Name and in CCP does not match.

Cause

A race in VE network configuration change as a result of double click on Add IPv4 address button. The issue is going to be prevented by product improvement requests with IDs CCU-14047 and CCU-14266.

Resolution

  1. Make sure the VE is not in transient state - there is no Configuring message in VPS tab in CCP.
  2. Cancel the pending Upsell "PACIVPSHostingVPS" for APS application Cloud Infrastructure and Execute operation 'change_environment_network' tasks.
  3. Cancel the pending failed orders.
  4. Order additional IPv4 resources in the amount of the difference between Operations in Billing (there should be a bigger limit in Operations side).
  5. Once the amount of addresses is synchronized, use CCP to downsell/upsell IP addresses normally and avoid double clicks not to run into the same issue again.
  6. In case of discrepancy between the actual IP addresses assigned in the VE and the list reflected in CCP, use the drop-ip OACI API request to remove the unnecessary IPs, example:

    [root@osscore ~]# cat reconfigure.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <reconfigure-ve>
      <reconfigure-ipv4>
        <drop-ip ip="203.0.113.2"/>
      </reconfigure-ipv4>
    </reconfigure-ve>
    
    [root@osscore ~]# curl -u'admin:***' -X PUT -d@reconfigure.xml http://192.0.2.2:4465/paci/v1.0/of/1008409/ve/server-1015353-1 -H "Content-Type: application/xml"
    

Internal content