Orchestration Problems

This section lists issues that you might encounter while using orchestrations to create and manage objects.

Can’t upload an orchestration

Description

When I try to upload my orchestration file, I get the following error: “Unable to create an orchestration from the JSON file.”

Solution

This error indicates that there are errors in the syntax of your orchestration JSON file. Open the JSON file in a text editor to identify and fix the problems. You should also validate your JSON file. You can do this by using a third-party tool, such as JSONLint, or any other validation tool of your choice.

Note:

Oracle doesn’t support or endorse any third-party JSON-validation tool.

Error while uploading an orchestration: User is not permitted...

Description

When I try to upload my orchestration file, I get an error similar to the following:

User /Compute-acme/jack.jones@example.com is not permitted to perform "orchestration.add" on
 orchestration:/Compute-acme/jack.jones@example.com/orchestration-1

Solution

This error indicates that you’re not authorized to create an orchestration in Compute Classic. Check the orchestration JSON file to ensure that you’ve entered the correct account and user name in the orchestration name. For example, the term /Compute-acme in this example should be replaced with /Compute-your_account_name and the user name, jack.jones@example.com in this example, should be replaced with your user name.

Also, check that you have the appropriate role to create an orchestration. You must have the Compute_Operations role assigned to you in Oracle Cloud Infrastructure Classic Console. If you don’t have this role, ask your service administrator to assign the Compute_Operations role to you in Oracle Cloud Infrastructure Classic Console. See Modifying User Roles in Managing and Monitoring Oracle Cloud.

My orchestration hasn’t created any instances

Description

I’ve uploaded my orchestration file but I don’t see my instances. What should I do?

Solution

After uploading your orchestration, the status of your orchestration is automatically set to Stopped. To create the resources defined in your orchestration, start your orchestration. If you have created orchestration v2, see Starting an Orchestration v2. If you have created orchestration v1, see Starting an Orchestration v1.

Error while starting an orchestration: object not found

Description

I’m trying to start an orchestration that I’ve used before to create an instance. In the past it has started successfully, but this time it is showing an error. How can I find out what’s wrong?

Solution

You can view an orchestration to see more information about its status. On the Orchestrations page, go to the orchestration that you’re trying to start and, from the menu icon menu, select View. The orchestration might show an error message similar to the following:

"info": {
    "errors": {
       "0": "{u'instances[vm-1].nat': [u'ipreservation Compute-acme/jack/IP-res-1 not found']}"

or

"info": {
    "errors": {
       "0": "{u'instances[vm-1].nat': [u'ipreservation Compute-acme/jack/IP-res-1 is already in use']}"

These error messages indicate that an object that is referenced in the orchestration is not available. In this example, the first message indicates that the IP reservation IP-res-1 has been deleted and the second message indicates that the IP reservation is associated with a running instance. Similar errors would be displayed in the orchestration if an SSH key, a security list, a storage volume, or any other object referenced in the orchestration has been deleted, disabled, or assigned to another resource after this orchestration was stopped.

When you’ve identified the object that’s preventing your orchestration from starting, make that object available to your orchestration. Then stop the orchestration and start it again.

Error while starting an orchestration: Specify imagelist or bootorder

Description

I’ve uploaded my orchestration, but when I start it, the following error occurs:
Specify either an ImageList or boot_order and StorageVolume.

Solution

This error indicates that your orchestration doesn’t specify either an image or a bootable storage volume for your instance.
  • To set up the instance to boot from a persistent disk, you must attach a bootable storage volume by using the storage_attachment instance attribute, and then specify the index number of the attached storage volume as the boot disk by using the boot_order instance attribute.
    {
      "objects": [
        {
          "instances": [
            {
              "boot_order": [
                1
              ],
              "storage_attachments": [
                {
                  "index": 1,
                  "volume": "/Compute-acme/joe/bootable-vol1"
                }
              ]
            }
          ]
        }
      ]
    }
    
  • To set up the instance to boot from a nonpersistent disk, specify the image that you want to use by using the imagelist attribute.
    {
      "objects": [
        {
          "instances": [
            {
              "imagelist": "/oracle/public/OL_6.7_UEKR4_x86_64"
            }
          ]
        }
      ]
    }

Note:

If you specify both boot_order and imagelist for an instance in an orchestration, the imagelist attribute is ignored and the instance is booted using the bootable storage volume specified by the boot_order attribute. See Orchestration v1 Attributes for instances.

My instance was created using a wrong image

Description

I created an instance using an orchestration. I specified an image in the orchestration file, but my instance was created using a different image.

Solution

Check your orchestration file. In the instance attributes, did you specify a bootable storage volume using the storage_attachment attribute? Did you also specify an image in the imagelist attribute?

If you want to use a bootable storage volume to boot your instance, use the boot_order instance attribute to specify the appropriate storage volume index number. If you’ve not specified the appropriate index number in the boot_order attribute, then your instance will be booted using the image you’ve specified in the imagelist attribute.

If you want to boot your instance using a nonpersistent storage volume, ensure that you’ve not specified the boot_order attribute and that you’ve specified a valid image for the instance using the imagelist attribute instead. Remember, if you specify a valid value for both boot_order and imagelist, the imagelist attribute is ignored and the instance is booted using the image stored on the bootable storage volume specified by the boot_order attribute.

For more information about instance attributes, see Orchestration v1 Attributes for instances.

My orchestration is stuck in the stopping state

Description

I tried to stop an orchestration but it’s been stuck in the Stopping state for a long time and the objects defined in that orchestration haven’t been deleted. Why did this happen and what should I do?

Solution

An orchestration can get stuck in the Stopping state if any of the objects defined in the orchestration are used or referenced by other objects. While stopping an orchestration, ensure that none of the objects in that orchestration are used or referenced by any other object.

For example, let’s say you’ve created an orchestration, seclist_orch, which defines a set of security lists. If any security list in this orchestration is used in a security rule, or has any running instances added to it, then that security list can’t be deleted. So the seclist_orch orchestration can’t be stopped. In this example, you’d have to delete any security rules that use any of the security lists in the seclist_orch orchestration. You’d also have to detach any instances that have been added to any of the security lists in the seclist_orch orchestration.

When you’ve cleared all existing dependencies, the orchestration that’s in the Stopping state will automatically transition to the Stopped state.