Managing Orchestrations

Orchestration automates the management of your system components for high availability, monitoring, and persistence.

Orchestration ties together the components that you create into a single, manageable collection. In addition, you can specify the dependencies to control the sequence in which the components are created. For example, you can coordinate the creation of network and storage resources with the creation of the instance and, if high availability is enabled, restart the instance automatically if it terminates unexpectedly. In Oracle Compute Cloud Service, all instances are created using orchestrations.

Note:

Life-cycle commands (such as start, stop, restart etc.) that change the status of an orchestration, return immediately with the status change proceeding on the server side. Orchestration status can be monitored by retrieving the orchestration details.

For more information about procedures related to orchestrations, see Orchestration Templates in Using Oracle Compute Cloud Service.

add orchestration

This command enables you to create a new orchestration from a JSON file.

Note:

For more information about how to create an orchestration JSON file and the supported attributes, see Orchestration Templates in Using Oracle Compute Cloud Service.

Syntax

oracle-compute add orchestration filename

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
filename Name of an orchestration JSON file containing the configuration of the orchestration

Example

$ oracle-compute add orchestration mytenant_orchest.json

delete orchestration

This command enables you to delete a specific orchestration. The orchestration must be stopped to be deleted. No response is returned for the delete action if the command is successful.

Syntax

oracle-compute delete orchestration name

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.

Example

oracle-compute delete orchestration /mytenant/public/myorch

download orchestration

This command enables you to download a previously added orchestration to a file. The downloaded orchestration is saved in JSON format. You can later use this file to edit and launch a new orchestration.

Syntax

oracle-compute download orchestration name [--filename]

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.
--filename (Optional) Name of an orchestration file to which the JSON file will be downloaded. If this parameter is not specified, then a file named with the last part of the orchestration name will be created in the current directory. For example, if the orchestration name is /mytenant/public/user1/test-vm and --filename is not given, then a file called test-vm.json will be created.

Note:

For more information about how to create and modify a JSON file, see Orchestration Templates in Using Oracle Compute Cloud Service.

Example

$ oracle-compute download orchestration /mytenant/public/user1/test-vm --filename mytenant_orch.json

update orchestration

This command enables you to update information for a specific orchestration.

You can update any part of an orchestration aside from the name when it is in stopped status. When the orchestration is in ready status, you can update the ha_policy and label of an existing oplan in the orchestration. You can also add and remove oplans. Added oplans will be started, and removed oplans will be stopped.

Syntax

oracle-compute update orchestration name [--filename] [--oplan_label] [--ha_policy]

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.
--filename (Optional) Name of the updated orchestration JSON file containing the configuration of the orchestration.

Note:

For more information about how to create and modify a JSON file, see Orchestration Templates in Using Oracle Compute Cloud Service.
--oplan_label (Optional) Label of an object plan (oplan) to update. An oplan is an element within an orchestration defining a specific object creation action.

Note:

You must specify the ha_policy parameter when the oplan_label parameter is provided.
--ha_policy (Optional) High availability policy can only be set to active (for instances) or monitor (for instances and volumes). Attempting to set high availability policy on any other elements results in an error. The default is no high availability.

Note:

You must specify the oplan_label parameter when the ha_policy parameter is provided.

Example

$ oracle-compute update orchestration myorch.json

shutdown orchestration

This command enables you to shut down all VM instance members of an orchestration while preserving the resources used by the instance, such as IP addresses and boot disk contents. If you do not want to preserve these resources, then use stop orchestration. You can shut down orchestrations with a ready or warning status.

Syntax

oracle-compute shutdown orchestration name

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.

Example

$ oracle-compute shutdown orchestration /mytenant/public/user1/test-vm

restart orchestration

This command enables you to restart an orchestration that was previously in shut_down status. You can also restart an orchestration when it is in warning or error status.

Syntax

oracle-compute restart orchestration name

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.

Example

$ oracle-compute restart orchestration /mytenant/public/user1/test-vm

start orchestration

This command enables you to start a specific orchestration. You can start only orchestrations with a stopped status.

Syntax

oracle-compute start orchestration name

Starting an orchestration creates all of the objects defined in the orchestration. The status of the orchestration changes over time. You can view the details of the orchestration to see the status as the orchestration progresses. The start command returns the response immediately; however the start operation continues on the server. The start operation is completed only when the orchestration status reaches the ready status.

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.

Example

$ oracle-compute start orchestration /mytenant/public/user1/test-vm

stop orchestration

This command enables you to stop a specific orchestration. Stopping an orchestration deletes all instances, releasing all resources allocated by the orchestration.. This includes all boot (root) disks and all unreserved IP addresses. It is valid to stop orchestrations with the following statuses: ready, shut_down, warning, and error. You can start the orchestration again, creating new instances and allocating new resources.

Syntax

oracle-compute stop orchestration name [--confirm]

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.
--confirm (Optional) Confirms the action to stop an orchestration. If the option is not specified, then a warning message is displayed and the operation is not executed.

Example

$ oracle-compute stop orchestration /mytenant/public/user1/test-vm

Retrieve Orchestration Details

You can retrieve the orchestration details by using the CLI.

get orchestration

This command enables you to retrieve information for a specific orchestration.

Syntax

oracle-compute get orchestration name

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
name A unique hierarchical name of an orchestration. For example, /mytenant/public/myorch.

Example

$ oracle-compute get orchestration /mytenant/public/el-db-vms

Sample Output

$ oracle-compute get orchestration  /mytenant/public/el-db-vms -F name,status,info
name                          status         info
/mytenant/public/el-db-vms    ready          {"errors": {}, "warnings": {}}

list orchestration

This command enables you to list a set of orchestrations in a specific container.

Syntax

oracle-compute list orchestration container [--status]

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
container Hierarchical name-space for orchestrations
--status (Optional) Current status of the orchestration. The following status options are supported:
  • ready

  • scheduled

  • warning

  • error

  • starting

  • stopping

  • updating

  • shut_down

  • shutting_down

  • restarting

If this parameter is specified, then the list orchestration output is filtered for the given status.

Example

$ oracle-compute list orchestration /mytenant/public --status=ready

Sample Output

$ oracle-compute list orchestration /mytenant/public --status=ready -F name,status
name                                      status
/mytenant/public/el-control-vms           ready
/mytenant/public/el-db-vms                ready

discover orchestration

This command enables you to discover an orchestration within a specific container or subcontainer.

Syntax

oracle-compute discover orchestration container

Parameters and Options

The following parameters are specific to this command. You can also use the common options described in General Command Options.

Parameter Description
container Hierarchical name-space for orchestrations

Example

$ oracle-compute discover orchestration /mytenant/public

Sample Output

$ oracle-compute discover orchestration /mytenant/public
entry
/mytenant/public/el-control-vms
/mytenant/public/el-db-vms
/mytenant/public/el-grill-vms
/mytenant/public/el-sim-vms
/mytenant/public/scae09-sdi-sdivm-el1-4-storagevolume-app
/mytenant/public/scae09-sdi-sdivm-el1-5-storagevolume-ops
/mytenant/public/scae09-sdi-sdivm-el1-6-storagevolume-data
/mytenant/public/scae09-sdi-sdivm-el1-8-instance