Based on the changing requirements, there may be scenarios where you will have to make changes to your current deployment, i.e., to make an application available in another partition, enable cloud bursting, etc. In such situations, you need to change the current deployment patterns, by updating the relative artifacts in runtime. Always follow the logical sequence when updating artifacts to avoid facing errors. The following sub-sections discuss the sequence in which you need to update the artifacts.
Updating a Kubernetes Cluster
A Kubernetes cluster can be updated in run-time by adding hosts to the Kubernetes cluster. For more information on how new hosts can be added to an existing Kubernetes cluster via REST API or CLI, see Adding a Host to a Kubernetes-CoreOS Cluster.
Updating a network partition
You can carryout any of the following actions to update a network partition in run-time:
- Add a new partition to an existing network partition
- Update values in an existing network partition
- Remove a partition from a network partition
Add a new partition to an existing network partition
Follow the instructions below to add a new partition in an existing network partition in run-time:
Identify the network partition that corresponds to the deployed application, and define a new partition in the existing network partition definition JSON.
Update the identified network partition in Private PaaS.
Optionally, if you wish to use the new partition in the existing deployment policy, carryout the following steps:
Identify the deployment policy that corresponds to the deployed application, and add the newly defined partition to the existing deployment policy definition JSON.
Update the identified deployment policy in Private PaaS.
Update values in an existing network partition
Follow the instructions below to update the values in an existing network partition in run-time:
Identify the network partition that corresponds to the deployed application, and update the values in the existing network partition definition JSON.
Update the identified network partition in Private PaaS.
Remove a partition from a network partition
Follow the instructions below to remove a partition from an existing network partition in run-time:
Identify the deployment policy that corresponds to the deployed application, and remove the partition from the deployment policy JSON definition.
Update the identified deployment policy in Private PaaS.
Identify the network partition that corresponds to the deployed application, and remove the partition from the network partition JSON definition.
Update the identified network partition in Private PaaS.
Updating a deployment policy
When a deployment policy is updated in run-time, Private PaaS applies these changes to all the applications that are using the deployment policy. You can carryout any of the following actions to update a deployment policy in run-time:
- Add a new partition to an existing deployment policy
- Remove a partition from an existing deployment policy
- Update the values in an existing deployment policy
Add a new partition to an existing deployment policy
Follow the instructions below to add a new partition to an existing deployment policy in run-time:
Optionally, identify the network partition that corresponds to the deployed application, and define a new partition in the existing network partition definition JSON. If you wish to use an unused partition, which already exists in the network partition, skip step 1 and 2.
Update the identified network partition in Private PaaS.
Identify the deployment policy that corresponds to the deployed application, and add the new partition to the existing deployment policy definition JSON.
Update the identified deployment policy in Private PaaS.
Remove a partition from an existing deployment policy
Follow the instructions below to remove a partition from an existing deployment policy in run-time:
Identify the deployment policy that corresponds to the deployed application, and remove the partition from the deployment policy JSON definition.
Update the identified deployment policy in Private PaaS.
Identify the network partition that corresponds to the deployed application, and remove the partition from the network partition JSON definition.
Update the identified network partition in Private PaaS.
Update the values in an existing deployment policy
Follow the instructions below to update the values in an existing deployment policy in run-time:
Identify the deployment policy that corresponds to the deployed application, and update the values in the existing deployment policy definition JSON.
Update the identified deployment policy in Private PaaS.
Updating an auto-scaling policy
When a auto-scaling policy is updated in run-time, Private PaaS applies these changes to all the applications that are using the auto-scaling policy. Only specific properties in an auto-scaling policy definition can be updated. For more information on what properties can be updated, see the Auto-scaling Policy Resource Definition, and see Updating an Auto-scaling Policy to learn how to update an auto-scaling policy via the REST API, CLI or the UI.
Updating a cartridge
When a cartridge is updated in run-time, Private PaaS will not apply the changes to the currently deployed applications. However, Private PaaS will apply these changes to all the applications that are deployed after these changes. Only specific properties in a cartridge definition can be updated. For more information on what properties can be updated, see the Cartridge Resource Definition, and see Updating a Cartridge to learn how to update a cartridge via the REST API, CLI or the UI.
Updating a cartridge group
Private PaaS does not allow cartridge groups to be updated.
Updating an application
Only specific properties in an application definition can be updated as stated below. For more information on what properties can be updated, see the Application Resource Definition, and see Updating an Application to learn how to update an application via the REST API, CLI or the UI.
- Application can be updated only when the Application is in DEPLOYED mode
- cartridgeMin/cartridgeMax and/or groupMinInstances/groupMaxInstances only can be updated in the application.
- In order to change groupMinInstances/groupMaxInstances , groupMaxInstances should be greater than one in the initial application.
- Application id/alias should not be changed.