Oracle Public Cloud Machine

CLI Reference for Oracle Compute Cloud Service

Release 17.1.2

E69222-06

April 2017

Oracle Public Cloud Machine CLI Reference for Oracle Compute Cloud Service, Release 17.1.2

E69222-06

Copyright © 2016, 2017, Oracle and/or its affiliates. All rights reserved.

Primary Author: Nidhi Kakkar

Contributing Author: Jeremy Bar, Karen Wilson, Samuel Jackson, and Jon Richards

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Contents

Preface

- Audience

- Documentation Accessibility

- Related Documents

- Conventions

1 Getting Started with the Oracle Compute CLI

- About the Oracle Compute CLI for Oracle Public Cloud Machine

- Roles of CLI Users

- Preparing to Use the Oracle Compute CLI

- Setting Up Environment Variables

- Installing the Oracle Compute CLI on a Remote System

2 Overview of the Oracle Compute CLI

- General Syntax

- General Command Options

- General Command Actions

- About Object Names

3 Tenant Management

- Viewing Tenants

- discover tenant

- get tenant

- list tenant

- Viewing Tenant Quotas

- discover quota

- get quota

- list quota

4 User Management

- Managing Users

- add user

- delete user

- update user

- authenticate user

- Retrieve User Details

- discover user

- get user

- list user

5 Instance and Snapshot Management

- Managing Instances

- delete instance

- shutdown instance

- restart instance

- update instance

- Retrieve Instance Details

- discover instance

- get instance

- list instance

- Managing Snapshots

- add snapshot

- delete snapshot

- Retrieve Snapshot Details

- discover snapshot

- get snapshot

- list snapshot

- Managing SSH Keys

- add sshkey

- delete sshkey

- update sshkey

- download sshkey

- Retrieve SSH Key Details

- discover sshkey

- get sshkey

- list sshkey

- Managing Orchestrations

- add orchestration

- delete orchestration

- download orchestration

- update orchestration

- shutdown orchestration

- restart orchestration

- start orchestration

- stop orchestration

- Retrieve Orchestration Details

- get orchestration

- list orchestration

- discover orchestration

- Viewing Shapes

- discover shapes

- get shape

- list shape

- Connecting to an Instance VNC Console

- download instancevnckey

- get instancevnckey

6 Template Management

- Managing Machine Images

- add machineimage

- delete machineimage

- download machineimage

- Retrieve Machine Image Details

- discover machineimage

- get machineimage

- list machineimage

- Managing Image Lists

- add imagelist

- delete imagelist

- update imagelist

- Retrieve Image List Details

- discover imagelist

- get imagelist

- list imagelist

- Managing Image List Entries

- add imagelistentry

- delete imagelistentry

- Retrieve Image List Entry Details

- get imagelistentry

- list imagelistentry

7 Site Information

- Accessing Site Information

- get siteinformation

- list siteinformation

8 Storage Management

- Managing Storage Volumes

- add storagevolume

- delete storagevolume

- update storagevolume

- Retrieve Storage Volume Details

- discover storagevolume

- get storagevolume

- list storagevolume

- Managing Storage Attachments

- add storageattachment

- delete storageattachment

- Retrieve Storage Attachment Details

- discover storageattachment

- get storageattachment

- list storageattachment

- Viewing Storage Properties

- discover property storage

- get property storage

- list property storage

9 Network Management

- Viewing Service Networks

- discover servicenet

- get servicenet

- list servicenet

- Managing vEthernet

- add vethernet

- delete vethernet

- update vethernet

- Retrieve vEthernet Details

- discover vethernet

- get vethernet

- list vethernet

- Managing vNET

- add vnet

- delete vnet

- update vnet

- Retrieve vNET Details

- discover vnet

- get vnet

- list vnet

- Viewing vNET Access

- discover vnetaccess

- get vnetaccess

- list vnetaccess

- Managing vNET Reservations

- add vnetreservation

- delete vnetreservation

- Retrieve vNET Reservation Details

- discover vnetreservation

- get vnetreservation

- list vnetreservation

- Viewing vCables

- discover vcable

- get vcable

- list vcable

A Debugging Common Error Messages

Preface

This guide describes Oracle Compute Cloud Service command-line interface (CLI) for Oracle Public Cloud Machine.

Audience

This document is intended for tenant administrators and tenant users who use Oracle Compute Cloud Service for Oracle Public Cloud Machine, and who are familiar with the following:

- The UNIX command line

- Virtualization technologies

- Networking and disk storage concepts

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Related Documents

For more information, see the following documents in the Oracle Public Cloud Machine documentation set:

- Using Oracle Compute Cloud Service

- REST API Reference for Oracle Compute Cloud Service

Conventions

The following text conventions are used in this document:

Convention

Meaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

monospace italics

Text in monospace italic indicates variables for which you supply a value.

...

Ellipses indicate that the sample output of a command is truncated for readability.

1 Getting Started with the Oracle Compute CLI

Oracle Public Cloud Machine supports a customized version of the Oracle Compute Cloud Service (Oracle Compute) command-line interface (CLI). The Oracle Compute CLI supports any action that can be performed by the Oracle Compute REST API. Use the CLI to manage the various Oracle Compute objects. This section gives an overview of the Oracle Compute CLI.

Topics:

- About the Oracle Compute CLI for Oracle Public Cloud Machine

- Roles of CLI Users

- Preparing to Use the Oracle Compute CLI

- Setting Up Environment Variables

- Installing the Oracle Compute CLI on a Remote System

About the Oracle Compute CLI for Oracle Public Cloud Machine

Oracle Compute Cloud service supports oracle-compute CLI tool. Use this tool to view and manage Oracle Compute objects such as instances, storage volumes, and orchestrations.

For more information on Oracle Compute Cloud Services and supported objects, see Getting Started with Using Oracle Compute Cloud Services in Using Oracle Compute Cloud Service.

Roles of CLI Users

The following CLI user roles are supported:

- Tenant administrator (/tenant_name/username): Administrator for a given tenant. Can perform all the administrative functions for a tenant. Can create users in their tenancy with Tenant User role. The default tenant admin user is /tenant_name/administrator.

- Tenant user (/tenant_name/username): User of a tenant group. Can create and use VMs and resources within the tenant.

For more information on user roles, see Getting Started with Using Oracle Compute Cloud Services in Using Oracle Compute Cloud Service.

Preparing to Use the Oracle Compute CLI

Before installing the Oracle Compute CLI tools, you must get the API URL of the API server used when installing your Oracle Public Cloud Machine. You can get this information from Oracle Cloud Administrator.

Examples in this guide use the following name for the API server:

api.oc.example.com

Setting Up Environment Variables

Set the environment variables in the shell to avoid having to provide the values in the CLI command.

The following table lists the environment variables, describes each variable, and provides the command to set the variable in the host using a bash shell.

Name

Description

Command

ORACLE_COMPUTE_API

URL of API endpoint

When this variable isn't set, you must specify a API endpoint with the -a option on the command line.

export ORACLE_COMPUTE_API=API URL

Example:

export ORACLE_COMPUTE_API="https://api.oc.example.com"

To make the environment variable persist across login sessions, add this line to your.bash_profile or .bashrc file.

ORACLE_COMPUTE_USER

The Oracle Compute user name.

When this variable isn't set, you must specify a user name with the -u option on the command line.

export ORACLE_COMPUTE_USER=username

Example:

export ORACLE_COMPUTE_USER="mytenant/user"

To make the environment variable persist across login sessions, add this line to your .bash_profile or .bashrc file.

ORACLE_COMPUTE_COOKIE

The value of an authentication token received from the oracle-compute auth command. See Authenticate User.

export ORACLE_COMPUTE_COOKIE=auth_token

If both ORACLE_COMPUTE_USER and ORACLE_COMPUTE_COOKIE are specified, then ORACLE_COMPUTE_USER takes precedence.

Installing the Oracle Compute CLI on a Remote System

The prerequisites for installing the Oracle Compute CLI on the remote client system are as follows:

- Client system must have Oracle Linux 6.3 or later.

- Client system must have Python 2.6 or later but not Python 3.x.

- The script must have root privileges in the client system.

To install the oracle-compute tool:

1. Install the prerequisite RPMs: python-simplejson, python-dateutil, python-setuptools.

sudo yum install python-simplejson python-dateutil python-setuptools

2. Get the installation script and make it executable.

wget http://API_URL/tools/Linux/install-IaaS-CLI.sh
chmod 555 install-IaaS-CLI.sh

3. Run the installation script.

./install-IaaS-CLI.sh

Use ./install-IaaS-CLI.sh http://API_URL if ORACLE_COMPUTE_API variable isn’t configured.

Note:

Use the -f option of the script to force run the script, even if the host isn’t running on a known RedHat OS.

After the installation, the following CLI tool is available:

- /usr/bin/oracle-compute

2 Overview of the Oracle Compute CLI

This section provides an overview for using the oracle-compute command for managing Oracle Compute Cloud Service on Oracle Public Cloud Machine.

Topics:

- General Syntax

- General Command Options

- General Command Actions

- About Object Names

General Syntax

The oracle-compute CLI tool has the following syntax:

oracle-compute -u user [ -a url] [ -p file] [options] action object [--parameter1 arg1 --parameter2 arg2 ...]

Command Option

Description

-u username| --user=username

The tenant user name (/tenant_name/username), or tenant administrators (/tenant_name/username)

Defaults to ORACLE_COMPUTE_USER environment variable.

-a url| --address=url

(Optional) URL of Oracle Compute API service.

Defaults to ORACLE_COMPUTE_API environment variable.

-p file| --pass=file

(Optional) File containing the user password.

--options

(Optional)See General Command Options.

action

An operation to execute. See General Command Actions.

object

The target of the action. See About Object Names.

--parameters

(Optional) Action-specific and object-specific parameters to direct the operation.

General Command Options

This section lists the options common to all commands.

-d, --debug

Enables the debug mode that shows the full details of the requests and responses.

-f format | --format=format

Specifies the format of the command output:

- table (default): Each field is displayed in a separate column.

- tabbed: Each record is displayed as a tab-separated list on a single line.

- csv: Each record is displayed as a comma-separated list on a single line.

- json: The output is displayed in JavaScript Object Notation (JSON) format. When you specify this format, the CLI ignores the -F option.

- xml: The output is displayed in XML format. This format can be used only for commands for the user resource.

-F fields |, --fields=fields

Specifies the fields depending on the type of object. Use this option to filter the fields or columns in the display of a large result.

-h | --help

Shows the help message and then exits.

-H | --no-header

Suppresses column headings in the default table output.

General Command Actions

This section lists the actions that can be executed on an object. Not all objects can use all actions.

add

Creates an object in a container.

delete

Deletes an object. No response is returned.

discover

Discovers objects in a container without the requirement of list or get permissions on each object. You must specify a container, which can only be a parent path of the key field (for example, / or /mytenant). Only objects in that container and names of subcontainers that the user has permission to discover are returned. The contents of subcontainers are not returned.

get

Retrieves information of a specific object.

list

Retrieves information about the listed object in the container you specify. The container can only be a key field of the specific object (for example, the tenant name, such as /mytenant/public) or a parent path of the key field (for example, / or /cloud) subject to listing permissions. Oracle Compute object key fields are usually the object names or ID fields (for example, /mytenant/public/myinstance for an instance). Be sure to use the correct field as the container, as detailed in the specific command descriptions. Use arguments to filter the output as needed.

update

Updates information of an object.

Each action can display its specific requirements for each type of object.
You can also expand Oracle Compute CLI commands at the action level to list all the objects associated with that action. For example, the oracle-compute add command lists all the objects for which the add action can be performed.

$ oracle-compute add

oracle-compute add alertrule <name> <subscriber> [--event] [--event_type] [--severity] [--error_code] [--alert_type] \
[--frequency]
oracle-compute add imagelist <name> <description> [--default]
oracle-compute add imagelistentry <imagelist name> <machineimages> <version> [--attributes]
oracle-compute add machineimage <name> <file> [--attributes] [--quota]
oracle-compute add orchestration <filename>
oracle-compute add servicenet <name> <type> [--pkey] [--num_provider_nodes] [--description]
oracle-compute add snapshot <instance> [--name] [--machineimage] [--quota]
oracle-compute add sshkey <name> <key> [--enabled] [--osuser]
oracle-compute add storageattachment <instance_name> <storage_volume_name> <index>
oracle-compute add storagevolume <name> <size> <properties> [--description] [--source_storagevolume_name] [--imagelist] \
[--imagelist_entry] [--tags] [--quota]
oracle-compute add user <username> <fullname> <email> [--role] [--password]
oracle-compute add vethernet <name> <description> <type> <id> [--switchports] [--svcnet]

In the same way, the Oracle Compute CLI also lists all the actions that can be performed on an object. For example, the oracle-compute instance command lists all the actions associated with object instance.

$oracle-compute instance

oracle-compute delete instance <name>
oracle-compute discover instance <container>
oracle-compute get instance <name>
oracle-compute list instance <container> [--tags] [--quota] [--vcable_id]
oracle-compute restart instance <name>
oracle-compute shutdown instance <name>
oracle-compute update instance <name> [--shape] [--networking] [--nis] [--tag] [--delete_tag]

About Object Names

Each Oracle Compute object for which you can execute a CLI command is identified uniquely by its URI. An object such as an instance, a storage volume, or an SSH key has a name based on its position in a hierarchy of containers.
For example, the object name /mytenant/public/8e7c16ad-1bc4-4743-a9ce-781be4e26f24 indicates that this instance 8e7c16ad-1bc4-4743-a9ce-781be4e26f24 is in the container public, and public is in the container mytenant.

3 Tenant Management

The tenant is a framework within which system objects such as users and machine images are created. The tenant can be an organization, a department within an organization, or an individual.

The Oracle Cloud Administrator grants designated tenant administrators and tenant users the authorization to use computing, networking, and storage resources of the Oracle Public Cloud Machine. The tenant provides the required capabilities to manage these resources.

Topics:

- Viewing Tenants

- Viewing Tenant Quotas

Viewing Tenants

The Tenant is the entity that uses Oracle Compute Cloud Service resources. Tenants must be registered by the Oracle Cloud Administrator before they can start using the service. For more information on how to obtain your tenant user information, see Using Oracle Compute Cloud Service.

Topics:

- discover tenant

- get tenant

- list tenant

discover tenant

This command enables you to list existing tenants in a specified container.

Syntax

oracle-compute discover tenant 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 a tenant. For example, /

Example

$ oracle-compute discover tenant /

Sample Output

$ oracle-compute discover tenant /
entry
/mytenant

.

get tenant

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

Syntax

oracle-compute get tenant 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 for a tenant. For example, /mytenant.

Example

$ oracle-compute get tenant /mytenant

Sample Output

$oracle-compute get tenant /mytenant

uri                            name        description    email                   public_pkey    private_pkey
https://api/tenant/mytenant    mytenant    Tenant User    mytenant@example.com    0x1415         0x1414

list tenant

This command enables you to display information about all tenants in a specific container.

Syntax

oracle-compute list tenant 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 a tenant. For example, /

Example

$ oracle-compute list tenant /demo

Sample Output

$ oracle-compute list tenant /mytenant
uri                          name       description   email           public_pkey  private_pkey
https://api/tenant/mytenant  mytenant   My Tenant      mytenant@e.com 0x1016        0x1015

Viewing Tenant Quotas

Quota defines the resource usage limit set for a tenant. The Oracle Cloud Administrator determines the quota limits for the tenant.

Topics:

- discover quota

- get quota

- list quota

discover quota

This command enables you to retrieve tenant quotas in the specified container and its subcontainers.

Syntax

oracle-compute discover quota 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 tenant. For example, / .

Example

$ oracle-compute discover quota /

Sample Output

$ oracle-compute discover quota /
entry
/default
/mytenant

get quota

This command enables you to retrieve the quota information for a specific tenant.

Syntax

oracle-compute get quota 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 for a tenant. For example, /mytenant.

Example

$ oracle-compute get quota /mytenant

Sample Output

$
oracle-compute get quota /mytenant -fjson
{
"list": [
{
"usage": {
"machineimage": {
"number": 2,
"megabytes": 4247
},
"vnet": {
"vnetreservations": 3
},
"compute": {
"instances": 6,
"ram": 46080,
"instance_restrictions": {},
"cpus": 12.0
},
"nds": {
"megabytes": 181468
}
},
"uri": "http://api.oc.example.com./quota/mytenant",
"description": "Default quota for \"mytenant\"",
"name": "/mytenant",
"allowance": {
"machineimage": {
"number": 5,
"megabytes": 100000
},
"vnet": {
"vnetreservations": null
},
"compute": {
"instances": 10,
"ram": 50000,
"instance_restrictions": {},
"cpus": 20.0
},
"nds": {
"megabytes": 200000
}
}
}
]
}

list quota

This command enables you to list details about the tenant quotas for a specific container.

Syntax

oracle-compute list quota 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

A hierarchical name-space for a tenant. For example, /mytenant/

Example

$ oracle-compute list quota /mytenant/

Sample Output

$
oracle-compute list quota /mytenant -fjson
{
"list": [
{
"usage": {
"machineimage": {
"number": 2,
"megabytes": 4247
},
"vnet": {
"vnetreservations": 3
},
"compute": {
"instances": 6,
"ram": 46080,
"instance_restrictions": {},
"cpus": 12.0
},
"nds": {
"megabytes": 181468
}
},
"uri": "http://api.oc.example.com/quota/mytenant",
"description": "Default quota for \"mytenant\"",
"name": "/mytenant",
"allowance": {
"machineimage": {
"number": 5,
"megabytes": 100000
},
"vnet": {
"vnetreservations": null
},
"compute": {
"instances": 10,
"ram": 50000,
"instance_restrictions": {},
"cpus": 20.0
},
"nds": {
"megabytes": 200000
}
}
}
]
}

4 User Management

A user is an entity within the system that is able to make requests. Each user is associated with one tenant, and has an associated role. The user's role determines the actions that the user is allowed to take. Tenant administrators manage users within their tenancy. Users have the /tenant_name/users role by default. Only the Oracle Cloud Administrator can grant a user the /tenant_name/admin role.

Topics:

- Managing Users

Managing Users

User names are unique within a specific tenant, and tenant names are unique within the system as a whole.

Topics:

- add user

- delete user

- update user

- authenticate user

- Retrieve User Details

add user

This command enables you to add new users.

Note:
Only a tenant administrator can add a new user.

Syntax

oracle-compute add user username fullname email [ --role] [ --password]

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

username

An unique hierarchical name for a user. For example, /mytenant/myuser.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

fullname

Full name of the user

email

Valid email address

--role

(Optional) The role of a user in the system.
This option can be specified only by the Oracle Cloud Administrator. A user can be granted one of the following roles:

- /cloud/admin for Oracle Cloud Administrators

- /cloud/monitor for cloud monitors

- /tenant_name/admin for tenant administrators

- /tenant_name/users for tenant users

If this option is not specified, then the default role of /tenant_name/users is granted.

--password

(Optional) User password. The password should be specified in a regular file, or should be entered from the terminal.
You can supply the password in one of the following ways:

- Specify the full path and name of the file containing the password .
Note that it must be a text file that is not world-readable (permission level: 600).

- Use a hyphen (-), to denote that you want to be prompted for the password value and enter it directly into the terminal.

If you omit this option, you will be prompted to enter and confirm the password. The password is stored in an encrypted format.

The password for a user must meet the following requirements:

- Alphanumeric.

- At least 6 characters in length.

- At least 5 unique characters. For example, "azylaz" is not a valid password but "azylmz" is valid.

- Can contain underscore and dash.

- Must not contain a sequence of characters. For example, "abcde1" and "asdfgh" are not valid passwords.

- Must not contain a dictionary word.

Example

$ oracle-compute add user /mytenant/myuser “User name” name@example.com --password /root/myuser_pwd.txt

delete user

This command enables you to delete an existing user.

Note:
Only the tenant administrator can delete a user.

Syntax

oracle-compute delete user username

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

username

Hierarchical name of the user to be deleted. For example, /mytenant/myuser and /cloud/myuser .

Example

$ oracle-compute delete user /mytenant/myuser

update user

This command enables you to update user information.

Note:
Tenant users can only update their password and email address.

Syntax

oracle-compute update user username [--fullname] [--email] [--role] [--password] [--blacklisted]

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

username

A unique hierarchical name for a user. For example, /mytenant/myuser and /cloud/myuser.

--fullname

(Optional) Full name of the user

--email

(Optional) Valid email address

--role

(Optional) The role of a user in the system.
This option can be specified only by the Oracle Cloud Administrator. A user can be granted any one of the following roles:

- /cloud/admin for cloud administrators.

- /cloud/monitor for cloud monitors.

- /tenant_name/admin for tenant administrators.

- /tenant_name/users for tenant users

--password

(Optional) User password. The password must be specified in a regular text file or entered from the terminal.
The password for a user must meet the following requirements:

- Alphanumeric.

- At least 6 characters in length.

- At least 5 unique characters. For example, "azylaz" is not a valid password but "azylmz" is valid.

- Can contain underscore and dash.

- Must not contain a sequence of characters. For example, "abcde1" and "asdfgh" are not valid passwords.

- Must not contain a dictionary word.

--blacklisted

(Optional) Specifies if the user is blacklisted.

Example

$ oracle-compute update user /mytenant/myuser --email new.email@example.com

Sample Output

uri              username         id                                   fullname   email       customer role      blacklisted
https://api/user /mytenant/myuser f36f54ca-e8d2-4e56-9371-0acae392c4f1 myuserfull new.email@e mytenant /mytenant False

authenticate user

This command enables you to specify authentication credentials for a user.

Authentication is generally used for testing the credentials for a user. This command returns an authentication cookie that you can use in future CLI requests. You can export this cookie to the ORACLE_COMPUTE_COOKIE environment variable. When you export the cookie, you no longer have to specify -u or -p options for future CLI requests; instead, the authentication information in the cookie is used.

Syntax

Use either of the following commands to specify the authentication credentials of the user:

oracle-compute auth user username password

oracle-compute authenticate user username password

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

username

Name of the user

password

Password for the user

Note:
The password can either be supplied as a command-line argument (in which case the value must be the name of a text file that is not world-readable, containing the password) or omitted from the command and entered directly from the terminal.

Example

$ oracle-compute auth user /mytenant/administrator pwdfile.txt

Sample Output

The following sample cookie is returned.

export ORACLE_COMPUTE_COOKIE='{"identity": "{\"realm\": \"myExa-Site\", \"value\": \"{\\\"customer\\\": \\\"mytenant\...+Kpdvzg==\"}"}'

Retrieve User Details

You can retrieve the user details using CLI.

Topics:

- discover user

- get user

- list user

discover user

This command enables you to discover a list of users in a specific container.

Note:
You can discover only tenant users in your tenancy.

Syntax

oracle-compute discover user 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 users

Example

$ oracle-compute discover user /mytenant

Sample Output

$ oracle-compute discover  user /mytenant
entry
/mytenant/administrator
/mytenant/myuser

get user

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

Note:
You can retrieve information only for tenant users in your tenancy.

Syntax

oracle-compute get user username

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

username

Hierarchical name of the user. For example, /mytenant/myuser and /cloud/myuser

Example

$ oracle-compute get user /mytenant/myuser

Sample Output

$ oracle-compute get user /mytenant/myuser -F username,id,fullname,email,blacklisted
uri               username        id             fullname email            blackisted
https://api/.../ /mytenant/myuser b730fb22...e7  MyUser   user@example.com False

list user

This command enables you to list users in a specific container.

Note:
You can list only tenant users in your tenancy.

Syntax

oracle-compute list user container [--role]

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 the user

--role

(Optional) The role of a user in the system.
You can filter the list output based on user role by specifying one of the following:

- /cloud/admin for cloud administrators

- /cloud/monitor for cloud monitors

- /tenant_name/admin for tenant administrators

- /tenant_name/users for tenant users

Example

$ oracle-compute list user /

Sample Output

$ oracle-compute list user / -F username,role
username           role
/mytenant/myuser1  /mytenant/users
/mytenant/myuser2  /mytenant/users

5 Instance and Snapshot Management

This section describes the various operations that can be performed for managing instances and snapshots.

Topics:

- Managing Instances

- Managing Snapshots

- Managing SSH Keys

- Managing Orchestrations

- Viewing Shapes

- Connecting to an Instance VNC Console

Managing Instances

An instance is a logical representation of a virtual machine (VM). An instance defines the properties of a virtual machine and has a life cycle that surrounds and extends beyond the life cycle of a single virtual machine. You create virtual machine instances by starting orchestrations, but you can manage them individually thereafter by using CLI commands or API requests.

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

Topics:

- delete instance

- shutdown instance

- restart instance

- update instance

- Retrieve Instance Details

delete instance

This command enables you to delete a specific instance.

Note:
An instance can only be deleted when it is in any one of the following states: running, shut_down, or error.

Syntax

oracle-compute delete instance 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 instance. For example, /mytenant/public/e6640ebc-6953-444f-848d-4a3bf6050ea5

Example

oracle-compute delete instance /mytenant/public/3e81e735-cdfc-43c2-9ba9-219585501f90

shutdown instance

This command enables you to shut down a specific instance.

Syntax

oracle-compute shutdown instance 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 for an instance. For example, /mytenant/public/e6640ebc-6953-444f-848d-4a3bf6050ea5

Example

$ oracle-compute shutdown instance /mytenant/public/0c9f738c-26e1-440e-9a92-c81378f80683

restart instance

This command enables you to restart a specific instance.

Note:
An instance can only be restarted when it is in one of the following states:shut_down, warning, and error .

Syntax

oracle-compute restart instance 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 instance. For example,  /mytenant/public/e6640ebc-6953-444f-848d-4a3bf6050ea5

Example

$ oracle-compute restart instance /mytenant/public/dc48d972-d893-4574-9446-5b7d6ea1f596

Sample Output

$
oracle-compute restart instance /mytenant/public/dc48d972-d893-4574-9446-5b7d6ea1f596 -Fname,state
name                                                    state
/mytenant/public/dc48d972-d893-4574-9446-5b7d6ea1f596     shut_down

update instance

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

Syntax

oracle-compute update instance name [--shape] [--networking] [--nis] [--tag] [--delete_tag]

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

An unique hierarchical name for an instance. For example, /mytenant/public/e6640ebc-6953-444f-848d-4a3bf6050ea5e

--shape

(Optional) The name of the shape to be associated with the instance. You can update the shape only when the instance is in the shut_down state.

--networking

(Optional) Mapping of device name to network specifiers for the virtual Network Interface Card (NICs) to be attached to this instance. You can update the instance when it is in either the running state or the shut_down state.

--nis

(Optional) Network Information Service (NIS) configuration. You can update the NIS configuration only when the instance is in the running state or the shut_down state.

--tag

(Optional) User-friendly tags for a specific instance. You can tag an instance with a list of human-readable tags (strings) that can be used to identify a group of instances easily during instance listing.

--delete_tag

(Optional) Deletes user-friendly strings for a specific instance. You can remove tags from the instance in any state.

For more information on instance optional parameters, see section Orchestration Templates in Using Oracle Compute Cloud Service.

Example

$ oracle-compute update instance /mytenant/public/e8faac3a-d4bb-41bd-9e79-e13d8be4d9d0 --shape medium -Fname,shape,state

Sample Output

name                                                  shape   state
/mytenant/public/e8faac3a-d4bb-41bd-9e79-e13d8be4d9d0 medium  shut_down

Retrieve Instance Details

You can retrieve instance details by using the CLI.

Topics:

- discover instance

- get instance

- list instance

discover instance

This command enables you to discover instances in the specific container and subcontainers.

Syntax

oracle-compute discover instance 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 containing instances

Example

$ oracle-compute discover instance /mytenant/

Sample Output

$ oracle-compute discover instance /mytenant/
name
/mytenant/public/0c9f738c-26e1-440e-9a92-c81378f80683
/mytenant/public/58f3a5d2-2c8c-41cb-8047-44f2e3aab876
/mytenant/public/6e319b05-4158-4d43-961b-be37157c8022
/mytenant/public/8243c540-337f-499e-ab08-4abd48b4d7bf
/mytenant/public/bdb7b6da-8919-4034-ad0f-6e506837e4f3
/mytenant/public/d02a40a0-5e51-43f9-a15d-09d014d0c915
/mytenant/public/e25237f7-def4-4853-9c13-dde120cb9161
/mytenant/public/fdd530da-347c-4f07-86ad-0855add035f2
/mytenant/public/scae09-sdi-sdivm-el1-8-instance/1a9ce3a1-ddba-44f7-9cc5-04c77f6523bc

get instance

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

Syntax

oracle-compute get instance 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 for an instance. For example, /mytenant/public/e6640ebc-6953-444f-848d-4a3bf6050ea5

Example

$ oracle-compute get instance /mytenant/public/0c9f738c-26e1-440e-9a92-c81378f80683

Sample Output

$ oracle-compute get instance /mytenant/public/0c9f738c-26e1-440e-9a92-c81378f80683 -F shape,tags,entry
entry           shape           tags
1               oc4             mytenant_db, mytenant_db_instance1, /mytenant/public/el-db-vms, db8633ae9d611203b6c566770b51d34b

list instance

This command enables you to retrieve instance information in a specific container or subcontainer.

Syntax

oracle-compute list instance container [--tags] [--quota] [--vcable_id]

Parameters and Options

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

Note:
The output of this command is filtered based on the optional parameters (if specified).

Parameter

Description

container

Hierarchical name-space for instances

--tags

(Optional) You can tag an instance with a list of human-readable tags (strings) that can be used to identify a group of instances easily during instance listing.

--quota

(Optional) The name of a quota associated with an instance

--vcable_id

(Optional) The unique identifier of a Virtual Cable (vCable) associated with an instance.

Example

$ oracle-compute list instance /mytenant/public/

Sample Output

$ oracle-compute list instance /demo/ -Fname,ip,state,label -ftab
name                                                   label     state     ip
/demo/public/960adf49-eefd-4f93-a300-2c798ba4a123      vm2       shut_down 10.247.60.146
/demo/public/dg1/35faaf0b-825c-42f9-bbfe-e72470c23883  myvm-j-v1 shut_down 10.247.64.55
/demo/public/ff94e915-a1d1-4f0f-88de-cc41b91394d3      vm1       shut_down 10.247.60.145

Managing Snapshots

A snapshot is a copy of the machine image boot disk taken at a specific time from an instance that is in running or shutdown state. You can add this copy to image lists, and use it to create a new instance.
Instance modifications are not preserved when an instance is deleted as a result of stopping an orchestration. Deleting an instance also removes all customizations and changes made to the boot disk since its creation. To keep the customized virtual machine (VM), create a snapshot to preserve the machine image. Then use the snapshot to create new VMs with the same customizations.

Note:
Another way to preserve customizations is to shut down that instance to free CPU and memory resources. When the VM is restarted, its customizations remain in effect. For more information about shutting down VM, see shutdown instance.

Topics:

- add snapshot

- delete snapshot

- Retrieve Snapshot Details

add snapshot

This command enables you to add a new snapshot for a specific instance.

Syntax

oracle-compute add snapshot instance [--name] [--machineimage] [--quota]

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

instance

Instance for which a snapshot must be taken

--name

(Optional) Unique identifier of the snapshot which replaces the identifier generated by the server.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

--quota

(Optional) Quota against which this snapshot will be stored

--machineimage

(Optional) Unique identifier of the machine image. If you do not provide this option, then the unique identifier is generated by the server.

Example

$ oracle-compute add snapshot /mytenant/public/190f166c-a08d-4f33-8c21-7291bcce98fc --machineimage /mytenant/public/snapshot-1

Sample Output

$ oracle-compute add snapshot /mytenant/public/190f166c-a08d-4f33-8c21-7291bcce98fc --machineimage /mytenant/public/snapshot-1 -Fname,state
name                                                                                        state
/mytenant/public/190f166c-a08d-4f33-8c21-7291bcce98fc/a0d58bae-687e-4c6f-9a77-5f6092f58590  active

delete snapshot

This command enables you to delete a snapshot creation request. This deletes only the request; the machine image that was the result of the request is not removed.

The following restrictions apply for deleting a snapshot request:

- Requests in the active state cannot be deleted.

- Requests can only be deleted when they are in the error or complete state.

Syntax

oracle-compute delete snapshot 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

Snapshot unique identifier

Example

$ oracle-compute delete snapshot /mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec

Retrieve Snapshot Details

You can retrieve the snapshot details by using the CLI.

Topics:

- discover snapshot

- get snapshot

- list snapshot

discover snapshot

This command enables you to discover snapshots in a specific container.

Syntax

oracle-compute discover snapshot 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 snapshots

Example

$ oracle-compute discover snapshot /mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/

Sample Output

$ oracle-compute discover snapshot /mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/
entry
/mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec
/mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/df8caca5-8a27-4153-9c5f-7440080b40c8

get snapshot

This command enables you to retrieve details for a specific snapshot.

Syntax

oracle-compute get snapshot 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

Snapshot unique identifier generated by the server

Example

$ oracle-compute get snapshot /mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec -f json

Sample Output

$ oracle-compute get snapshot /mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec -fjson
{
"list": [
{
"name": "/mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec",
"machineimage": "/mytenant/public/snapshot1",
"uri": "https://api.oc.example.com/snapshot/mytenant/public/a6fbb572-a584-486a-9314-56a24499028d/4dbb2b4c-d315-47ba-b938-696f74826bec",
"quota": null,
"instance": "/mytenant/public/a6fbb572-a584-486a-9314-56a24499028d",
"state": "active",
"error_reason": ""
}
]
}

list snapshot

This command enables you to list information for snapshots in a specific container.

Syntax

oracle-compute list snapshot container [--name] [--quota] [--instance] [--machineimage]

Parameters and Options

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

Note:
The output of this command is filtered based on the optional parameters (if specified).

Parameter

Description

container

Hierarchical namespace for snapshots

--name

(Optional) ) Unique identifier of the Snapshot which replaces the identifier generated by the server

--quota

(Optional) Quota against which this snapshot will be stored

--instance

(Optional) Instance for which the snapshot was taken

--machineimage

(Optional) Unique identifier of the machine image

Example

$ oracle-compute list snapshot /mytenant/

Sample Output

$ oracle-compute list snapshot /mytenant/ -Fname,machineimage
name                                                            machineimage
/mytenant/public/a6fbb572-48....7ba-b938-696f74826bec   /mytenant/it/lucid64
/mytenant/public/a6fbb...-8a27-4153-9c5f-7440080b40c8   /mytenant/public/a6fbb572-a5....7440080b40c8

Managing SSH Keys

You can automate the login process to instances by using the SSH keys.

Topics:

- add sshkey

- delete sshkey

- download sshkey

- update sshkey

- Retrieve SSH Key Details

add sshkey

This command enables you to import a new public SSH key and associate it with a user.

Syntax

oracle-compute add sshkey name key [--osuser] [--enabled]

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

Name of the SSH key.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

key

Name of the file that contains the value of the SSH public key

--osuser

(Optional) Operating system user to which this key will be assigned.  If this option is not specified, no key is installed in the VM.

--enabled

(Optional) Specifies if the key is enabled or disabled. Default value is True.

Example

oracle-compute add sshkey /mytenant/public/sshkey id_rsa.pub -f json

Sample Output

$ oracle-compute add sshkey /mytenant/public/sshkey id_rsa.pub -f json

{"list":
[ {
"osuser": "",
"enabled": true,
"uri": "http://api/sshkey/mytenant/public/sshkey",
"key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEo.....==\n-----END RSA PRIVATE KEY-----",
"name": "/mytenant/public/sshkey"
} ]
}

delete sshkey

This command enables you to delete a specific SSH key.

Syntax

oracle-compute delete sshkey 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

Name of the SSH key to be deleted

Example

$ oracle-compute delete sshkey /mytenant/public/sshkey

update sshkey

This command enables you to update information for a specific SSH key.

Syntax

oracle-compute update sshkey name [--key] [--enabled] [--osuser]

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

Name of the SSH key

--key

(Optional) Name of the file that contains the value of the SSH public key

--enabled

(Optional) Specifies if the key is enabled or disabled.

--osuser

(Optional) Operating system user to which this key will be assigned.

Example

$ oracle-compute -u /mytenant/user update sshkey /mytenant/public/sshkey --enabled false

Sample Output

$  oracle-compute -u /mytenant/user update sshkey /mytenant/public/sshkey --enabled false  -f json
{
"list": [
{
"osuser": "",
"enabled": false,
"uri": "http://api.oc.example.com/sshkey/mytenant/public/sshkey",
"key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEo.....==\n-----END RSA PRIVATE KEY-----",
"name": "/mytenant/public/sshkey"
}
]
}

download sshkey

This command enables you to download a specific SSH key.

Syntax

oracle-compute download sshkey name sshkey

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

Name of the SSH key to be downloaded

sshkey

Name of a local file to store the downloaded key

Example

oracle-compute download sshkey /mytenant/public/sshkey sshkey.pub

Retrieve SSH Key Details

You can retrieve SSH Key details by using the CLI.

Topics:

- discover sshkey

- get sshkey

- list sshkey

discover sshkey

This command enables you to discover SSH keys in a specific container and subcontainer.

Syntax

oracle-compute discover sshkey 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 the SSH key

Example

$ oracle-compute discover sshkey /mytenant/public

Sample Output

$ oracle-compute discover sshkey /mytenant/public
entry
/mytenant/public/user1_key1
/mytenant/public/root_key1

get sshkey

This command enables you to retrieve key information for a specific tenant or user.

Syntax

oracle-compute get sshkey 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

Name of SSH key, for which information must be retrieved

Example

$ oracle-compute get sshkey /mytenant/public/root_key1

Sample Output

$ oracle-compute get sshkey /mytenant/public/root_key1 -Fname,osuser
name                                   osuser
/mytenant/public/root_key1             root

list sshkey

This command enables you to list SSH Key information in a specific container and subcontainers.

Syntax

oracle-compute list sshkey container [--name]

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 SSH key

--name

(Optional) Name of SSH Key, for which information must be retrieved

Example

oracle-compute list sshkey /mytenant/public/

Sample Output

$ oracle-compute list sshkey /mytenant/public/ -F name,osuser
name                                              osuser
/mytenant/public/user1_key1                       oracle
/mytenant/public/root_key1                        root

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.

Topics:

- add orchestration

- delete orchestration

- download orchestration

- update orchestration

- shutdown orchestration

- restart orchestration

- start orchestration

- stop orchestration

- Retrieve Orchestration Details

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.

Topics:

- discover orchestration

- get orchestration

- list orchestration

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

Viewing Shapes

Shapes define the compute resources for an instance. You can view the shapes that are available to your tenant. Contact your Oracle Cloud Administrator if you need a shape with a different configuration.

Topics:

- discover shapes

- get shape

- list shape

discover shapes

This command enables you to determine what shapes you have access to in a specific container.

Syntax

oracle-compute discover shape 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 shapes

Example

$ oracle-compute discover shape /

Sample Output

$ oracle-compute discover shape /
entry
/myshape
/LARGE
/SMALL
/large
/oc4m
/oc5
/oc5m
/oc6
/oc7
/ot1
/small

get shape

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

Syntax

oracle-compute get shape 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

Name of the shape

Example

$ oracle-compute get shape myshape

Sample Output

$ oracle-compute get shape myshape
uri                               name         cpus        ram
https://api/shape/myshape         myshape      32.0        122880

list shape

This command enables you to list information about shapes. The only valid container for shape is /.

Syntax

oracle-compute list shape container [--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

container

Hierarchical name-space for shapes. It is always set to /.

--name

(Optional) Name of the shape

Example

$ oracle-compute list shape /

Sample Output

$ oracle-compute list shape /
uri                                    name                 cpus                ram
https://api/shape/oc4m                 oc4m                 16.0                122880
https://api/shape/myshape              myshape              32.0                122880
https://api/shape/oc3m                 oc3m                 8.0                 61440
https://api/shape/oc5m                 oc5m                 32.0                245760
https://api/shape/SMALL                SMALL                1.0                 4096
https://api/shape/oc1m                 oc1m                 2.0                 15360
https://api/shape/LARGE                LARGE                2.0                 8192
https://api/shape/oc2m                 oc2m                 4.0                 30720
https://api/shape/oc1                  oc1                  2.0                 16384

Connecting to an Instance VNC Console

To gain access to a virtual machine's (VM) Virtual Network Computing (VNC) console, a SSH tunnel from the local machine through the API endpoint to the node hosting the VM has to be created. Once the SSH tunnel is created, a VNC client is then launched on the local machine and connects to a specific local port. Each VM's SSH connection has a specific user, port and SSH keys.

Topics:

- download instancevnckey

- get instancevnckey

download instancevnckey

This command enables you to download the private RSA key used for the SSH tunnel to connect the VNC.

Syntax

oracle-compute download instancevnckey instance_name rsa_file

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

instance_name

Name of the instance for which you want to download the VNC key

rsa_file

Name of the file to which the RSA key will be downloaded

Example

$ oracle-compute download instancevnckey /mytenant/public/e8faac3a-d4bb-41bd-9e79-e13d8be4d9d0 instance1_rsa.priv

Sample Output

$oracle-compute -u /mytenant/user1 download instancevnckey /mytenant/public/e8faac3a-d4bb-41bd-9e79-e13d8be4d9d0 instance1_rsa.priv

instance1_rsa.priv is saved to the current directory

get instancevnckey

This command enables you to get all of the information related to accessing the VNC for the instance, such as VNC/SSH IP address, SSH port, VNC port, SSH user, and SSH private key.

Syntax

oracle-compute get instancevnckey instance_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

instance_name

Name of the instance.

Example

$ oracle-compute get instancevnckey /mytenant/public/scae09-msg-mcspod-amqax1-8-instance/19e61c76-e50b-4570-9bad-de40ad40e615

Sample Output

$ oracle-compute get instancevnckey /mytenant/public/scae09-msg-mcspod-amqax1-8-instance/19e61c76-e50b-4570-9bad-de40ad40e615 -f json
{
"list": [
{
"vncip": "10.128.36.31",
"vnckey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEoQIBAAKCAQEAwV....HtCEgy3iMsBYvmA==\n-----END RSA PRIVATE KEY-----",
"vnc_user": "19e61c76e50b45709badde40ad40e615",
"vncport": 5900,
"uri": "https://api/instancevnckey/mytenant/public/scae09-msg-mcspod-amqax1-8-instance/19e61c76-e50b-4570-9bad-de40ad40e615",
"vnc_sshd_port": 62300,
"name": "/mytenant/public/scae09-msg-mcspod-amqax1-8-instance/19e61c76-e50b-4570-9bad-de40ad40e615"
}
]
}

6 Template Management

Template management consists of managing three Oracle Compute objects: the machine image (machineimage), the image list (imagelist), and the image list entry (imagelistentry).

A machine image object is a copy of a virtual hard disk with an installed operating system that is used to launch a virtual machine (VM). An image list object is an ordered sequence of machine image objects, one of which may be selected as the default version. This allows users to continue using the same imagelist while upgrades are made to the latest version (that is, users can boot a different machine image if the imagelist gets a new default version). The image list entries are used to add and remove machine images from an image list.

Topics:

- Managing Machine Images

- Managing Image Lists

- Managing Image List Entries

Managing Machine Images

A machine image is a hard disk snapshot used to launch a virtual machine instance. The machine image archive must be a single raw disk image (including partition table and kernel) stored at the root of a tar archive and compressed with gzip. All machine images must be based on the Oracle Public Cloud Machine templates. A machine image template can be created only by a Oracle Cloud Administrator. For more information about building machine images and templates, see Using Oracle Compute Cloud Service.

Topics:

- add machineimage

- delete machineimage

- download machineimage

- Retrieve Machine Image Details

add machineimage

This command enables you to add a new machine image to the system.

Note:
You can add only private machine images to the system. To make a public machine image on the system, contact your Oracle Cloud Administrator.

Syntax

oracle-compute add machineimage name file [--attributes] [--quota]

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 for the machine image. For example, /mytenant/public/mymachineimage.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

file

Name of the file containing the disk image (.tar.gz)

--attributes

(Optional) User-defined parameters that can be passed to an instance of this machine image when it is launched. These parameters are passed as JSON objects. Syntax (key/value pairs): '{ "key1": "value1", "key2": "value2" }'

User-defined parameters that can be passed to an instance of this machine image when it is launched. These parameters are passed as JSON objects.

For example, you can specify the location of a database server and login details, which are then passed to the machine image during launch.

For more information about attributes, see Orchestration Templates in Using Oracle Compute Cloud Service.

--quota

(Optional)  The quota against which this image will be created

Example

$ oracle-compute add machineimage /mytenant/public/mymachineimage image.tar.gz

delete machineimage

This command enables you to delete an existing machine image.

Note:
You can delete only those private machine images that you have created.

Syntax

oracle-compute delete machineimage 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 for the machine image. For example, /mytenant/public/mymachineimage.

Example

$ oracle-compute delete machineimage /mytenant/public/mymachineimage

download machineimage

This command enables you to download one or more machine images.

Syntax

oracle-compute download machineimage path [--outputdir]

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

path

The full path name of your machine image. You can specify either the full path name of a single machine image, or a container. If a container is specified, then all machine images in that container are downloaded.

--outputdir

(Optional) Specifies the directory to which all the machine images will be downloaded

Example

$ oracle-compute download machineimage /oracle/public/oel6

Retrieve Machine Image Details

You can view machine image details by using the CLI.

Topics:

- discover machineimage

- get machineimage

- list machineimage

discover machineimage

This command enables you to discover machine images in a specific container.

Syntax

oracle-compute discover machineimage 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 machine images

Example

$ oracle-compute discover machineimage /oracle/public

Sample Output

$ oracle-compute discover machineimage /oracle/public
entry
/oracle/public/linux5_16.1.2_64
/oracle/public/linux6_16.1.2_64
/oracle/public/linux6_12.2.1.0.0_64_jaas_16.2.1.0.103

get machineimage

This command enables you to retrieve information for a specific machine image.

Syntax

oracle-compute get machineimage 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 for the machine image. For example, /mytenant/public/mymachineimage.

Example

oracle-compute get machineimage /oracle/public/linux6_16.1.2_64 -f json

Sample Output

$ oracle-compute get machineimage /oracle/public/linux6_16.1.2_64 -f json
{
"list": [
{
"name": "/oracle/public/linux6_16.1.2_64",
"sizes": {
"uploaded": 2176821211,
"total": 2176821211,
"decompressed": 19327352832
},
"no_upload": false,
"quota": null,
"uri": "https://api/machineimage/oracle/public/linux6_16.1.2_64",
"state": "available",
"signed_by": null,
"file": "https://api:443/machineimage/oracle/public/linux6_16.1.2_64",
"checksums": null,
"attributes": {},
"error_reason": null,
"audited": null
}
]
}

list machineimage

This command enables you to retrieve information for the machine images in a specific container.

Syntax

oracle-compute list machineimage container [--quota]

Parameters and Options

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

Note:
The output of this command is filtered based on the optional parameters (if specified).

Parameter

Description

container

Hierarchical name-space for machine images

--quota

(Optional) Quota associated with the image

Example

$ oracle-compute list machineimage /oracle/public

Sample Output

$ oracle-compute list machineimage /oracle/public -F name,quota,state
name                                                  quota    state
/oracle/public/linux5_16.1.2_64                       None     available
/oracle/public/linux6_16.1.2_64                       None     available
/oracle/public/linux6_12.2.1.0.0_64_jaas_16.2.1.0.103 None     available

Managing Image Lists

Machine images must be added to an image list to create a versioned instance template. When defining the launch plan for an orchestration to create an instance, an image list must be selected. You may also optionally select the version of the member machine image for launch. If no version is selected, then the default entry defined for the image list is launched. For example, you might want to set up an image list containing a selection of machine images of various Oracle Linux releases.

Topics:

- add imagelist

- delete imagelist

- update imagelist

- Retrieve Image List Details

add imagelist

This command enables you to add a new image list.

Note:
You can add only private image lists to the system. To make these image lists public, contact you Oracle Cloud Administrator.

Syntax

oracle-compute add imagelist name description [--default]

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 for the image list. For example, /mytenant/public/myimagelist .
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

description

A description of this image list

--default

(Optional) The version of the image in the list that should be considered the default. The default is used on instance launch if a specific version has not been given.

Example

$ oracle-compute add imagelist  /mytenant/admin/oel6 "new imagelist" --default=1

Sample Output

$ oracle-compute add imagelist  /mytenant/admin/oel6 "new imagelist" --default=1 -f json
{
"list": [
{
"default": 1,
"uri": "http://api.oc.example.com/imagelist/mytenant/admin/oel6",
"description": "new imagelist",
"name": "/mytenant/admin/oel6",
"entries": []
}
]
}

delete imagelist

This command enables you to delete an existing image list.

Note:
You can delete only private image lists that you have created.

Syntax

oracle-compute delete imagelist 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

Parameter

Description

name

A unique hierarchical name for the image list. For example, /mytenant/public/myimagelist.

Example

$ oracle-compute delete imagelist /mytenant/public/oel6

update imagelist

This command enables you to update an image list.

Note:
You can update only private image lists that you have created.

Syntax

oracle-compute update imagelist name [--description] [--default]

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 for the image list. For example, /mytenant/public/myimagelist

--description

(Optional) A description of this image list

--default

(Optional) The default machine image when launching instances from this image list

Example

$  oracle-compute update imagelist /mytenant/public/ol66_40GB --description "Refreshed imagelist"

Sample Output

$  oracle-compute update imagelist /mytenant/public/ol66_40GB --description "Refreshed imagelist" -f json
{
"list": [{
"default": 2,
"description": "Refreshed imagelist",
"entries": [],
"uri": "https://api.oc.example.com/imagelist/mytenant/public/ol66_40GB",
"name": "/mytenant/public/ol66_40GB"
}]

}

Retrieve Image List Details

You can retrieve image list details by using the CLI.

Topics:

- discover imagelist

- get imagelist

- list imagelist

discover imagelist

This command enables you to discover image lists in a specific container.

Syntax

oracle-compute discover imagelist 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 the image list

Example

oracle-compute discover imagelist /oracle/public

Sample Output

$ oracle-compute discover imagelist /oracle/public
entry
/oracle/public/linux5_16.1.2_64
/oracle/public/linux6_16.1.2_64
/oracle/public/linux6_12.2.1.0.0_64_jaas_16.2.1.0.103

get imagelist

This command enables you to retrieve information for a specific image list.

Syntax

oracle-compute get imagelist 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 for the image list. For example, /mytenant/public/myimagelist

Example

$ oracle-compute get imagelist /oracle/public/linux6_16.1.2_64

Sample Output

$ oracle-compute get imagelist /oracle/public/linux6_16.1.2_64 -F name,description,default
name                                 description                 default
/oracle/public/linux6_16.1.2_64      A default public image.     1
$

list imagelist

This command enables you to retrieve information for image lists in a container or subcontainers.

Syntax

oracle-compute list imagelist 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 the image list.

Example

$ oracle-compute list imagelist /oracle/public

Sample Output

$ oracle-compute list imagelist /oracle/public -F name,description,default
name                                                  description             default
/oracle/public/linux5_16.1.2_64                       A default public image. 1
/oracle/public/linux6_16.1.2_64                       A default public image. 1
/oracle/public/linux6_12.2.1.0.0_64_jaas_16.2.1.0.103 JCS Image               1

Managing Image List Entries

An image list entry connects machine images to image lists. This section specifies the operations associated with managing image list entries.

Topics:

- add imagelistentry

- delete imagelistentry

- Retrieve Image List Entry Details

add imagelistentry

This command enables you to add a machine image list to an image list entry.

Note:
You can add only private machine image list entries to the system. To make a public image list entry to the system, contact your Oracle Cloud Administrator.

Syntax

oracle-compute add imagelistentry imagelist name machineimages version [--attributes]

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

imagelist name

Unique hierarchical name for the imagelist entry. For example, /mytenant/public/myimagelistentry.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

machineimages

List of machine images to be used for this image lists

version

The version of the machine image in the specified image list

--attributes

(Optional) Specified as a JSON object, user-defined parameters that can be passed to an instance of this machine image when it is launched
For more information on attributes, see section Orchestration Templates in Using Oracle Compute Cloud Service.

Example

$ oracle-compute add imagelistentry /mytenant/public/my-imagelist-1 /mytenant/public/snapshot-1 1

Sample Output

$ oracle-compute add imagelistentry /mytenant/public/my-imagelist-1 /mytenant/public/snapshot-1 1 -fjson
{
"list": [
{
"attributes": {},
"imagelist": {
"default": 1,
"description": null,
"entries": null,
"uri": "imagelist/mytenant/public/my-imagelist-1",
"name": "/mytenant/public/my-imagelist-1"
},
"version": 1,
"machineimages": [
"/mytenant/public/snapshot-1"
],
"uri": "http://api.oc.example.com/imagelist/mytenant/public/my-imagelist-1/entry/1"
}
]
}

delete imagelistentry

This command enables you to delete a specific version of an image list entry.

Note:
You can delete only those image list entries that you have created.

Syntax

oracle-compute delete imagelistentry imagelist name version

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

imagelist name

Unique hierarchical name for the image list entry. For example, /mytenant/public/myimagelistentry.

version

The version of the machine image in the specified image list

Example

$ oracle-compute delete imagelistentry /oracle/public/oel6 2 -f json

Retrieve Image List Entry Details

You can retrieve details of image list entry by using the CLI.

Topics:

- get imagelistentry

- list imagelistentry

get imagelistentry

This command enables you to retrieve information for a specific version of an image list entry.

Syntax

oracle-compute get imagelistentry imagelist_name version

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

imagelist_name

Unique hierarchical name for the image list entry. For example, /mytenant/public/my-imagelist-1

version

The version of this machine image in this image list

Example

$ oracle-compute get imagelistentry /oracle/public/linux6_16.1.2_64 1

Sample Output

$ oracle-compute get imagelistentry /oracle/public/linux6_16.1.2_64 1 -F machineimages,version
machineimages                     version
/oracle/public/linux6_16.1.2_64   1

list imagelistentry

This command enables you to list information about image list entries for a specific image list. You must specify a container, which must be a specific image list.

Syntax

oracle-compute list imagelistentry imagelist_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

imagelist_name

Unique hierarchical name for the image list entry. For example, /mytenant/public/myimagelistentry

Example

oracle-compute list imagelistentry /oracle/public/linux6_16.1.2_64

Sample Output

$ oracle-compute list imagelistentry /oracle/public/linux6_16.1.2_64 -Fmachineimages,version,attributes

machineimages                    version    attributes
/oracle/public/linux6_16.1.2_64  1          {"connect2db": "true"}

7 Site Information

You may want to access site information in order to report any site related problem/issue to the cloud administrator. The following site wide information is available to all users.

Topics:

- Accessing Site Information

Accessing Site Information

This section specifies the operation that you can use to retrieve information about the installed site. Some of this information may be required for licensing and support requests. The fingerprint of the site is usually required for licensing, and provides a unique identifier for the installed site.

Topics:

- get siteinformation

- list siteinformation

get siteinformation

This command enables you to retrieve information for an installed site.

Syntax

oracle-compute get siteinformation

Parameters and Options

This command does not have any parameters or options.

Example

$ oracle-compute get siteinformation

Sample Output

$ oracle-compute get siteinformation
name        idpname     fingerprint         version          platform  system_identifier
example.com example.com 2B:9B:9F:02:..4D:D9 14.1x.005656-dev opcm      AK00298507uri

list siteinformation

This command enables you to retrieve detailed site information.

Syntax

oracle-compute list siteinformation

Parameters and Options

This command does not have any parameters or options.

Example

$ oracle-compute list siteinformation

Sample Output

$ oracle-compute list siteinformation -Fname,idpname,fingerprint,version,platform,system_identifier
name        idpname      fingerprint                                                 version         platform system_identifier
example.com example.com  D9:51:F6:97:06:44:FF:FD:48:7A:AE:C1:05:90:A8:D3:F4:27:8B:07 14.x.213443-dev opcm     AK00057539

8 Storage Management

Oracle Compute Cloud Service assigns a block of storage to an instance. The block of storage is a chunk of disk space on virtual disks. Oracle Compute manages virtual disks independently of the instances that use them. When an instance terminates, another instance can replace it and use the virtual disk space allocated to it. This section specifies the operations that can be performed to manage storage components.

Topics:

- Managing Storage Volumes

- Managing Storage Attachments

- Viewing Storage Properties

Managing Storage Volumes

Storage volumes are pieces of storage of specific size created in the storage pool. You can attach them to an instance, either in an orchestration or after the instance has been launched.

Topics:

- add storagevolume

- delete storagevolume

- update storagevolume

- Retrieve Storage Volume Details

add storagevolume

This command enables you to create a storage volume.

Note:
You can add only private volumes within your tenancy.

Syntax

oracle-compute add storagevolume name size properties [--description] [--source_storagevolume_name] [--imagelist] [--imagelist_entry] [--tags] [--quota]

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

Name of this storage volume
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

size

The size of this storage volume measured in the number of bytes or multiples of bytes. The allowed range is from 1 GB to 2 TB, in increments of 1 GB.
Use one of the following abbreviations as the unit of measurement:

- B or b (bytes)

- K or k (kilobytes)

- M or m (megabytes)

- G or g (gigabytes)

- T or t (terabytes)

For example, to create a volume of size 10 gigabytes, you can specify 10G, or 10240M, or 10485760K, and so on.

properties

A list of the storage properties that are associated with this storage volume.
The following storage properties are supported:

- /oracle/public/storage/default—Default storage property for internal storage appliance.

- /oracle/public/storage/latency—Storage property for placing volumes on external storage appliance.

- /oracle/public/storage/throughput—Storage property for placing volumes on external storage appliance.

For information on setting up storage volumes on external storage appliances, see section Managing Storage Volumes in Using Oracle Compute Cloud Service.

--description

(Optional) Description of the storage volume

--source_storagevolume_name

(Optional) Name of an existing storage volume, from where the data will be copied when this volume is created

--imagelist

(Optional) Name of the image list to use as the source for this storage volume when its created. This option must be paired with --imagelist_entry to reference a specific machine image.

--imagelist_entry

(Optional) Specific image list entry version to extract.

--tags

(Optional) A list of user-friendly strings that will tag the storage volume. Tags should be specified by using the syntax --tags ‘tag1,tag2’

--quota

(Optional) The quota against which this volume will be created.  If the quota is not specified, then the default quota of the tenancy (to which the user belongs) is used.

Example

$ oracle-compute add storagevolume /demo/public/v2 1G /oracle/public/storage/default --description "1GB volume" --tags 'tag1,tag2'

Sample Output

$ oracle-compute add storagevolume /demo/public/v2 1G /oracle/public/storage/default --description "1GB volume" --tags 'tag1,tag2' -Fstatus,name,size,tags
status        name           size       tags
Initializing /demo/public/v2 1073741824 tag1,tag2

delete storagevolume

This command enables you to delete a storage volume.

Note:
You can delete only private volumes within your tenancy.

Syntax

oracle-compute delete storagevolume name

Note:
To delete storage volumes that are attached to instances, you must first detach them by using the oracle-compute delete storageattachment  command.

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

Name of the storage volume

Example

$ oracle-compute delete storagevolume /mytenant/public/v2

update storagevolume

This command enables you to update a storage volume.

Note:
You can update only private volumes within your tenancy.

Syntax

oracle-compute update storagevolume name [--description] [--tags]

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

Name of this storage volume, generated by the server

--description

(Optional) Description of this storage volume

--tags

(Optional) A list of user-friendly strings that will tag the storage volume. During an update, the list of tags specified becomes the new list. To preserve existing tags, you must retrieve the existing set, make any desired changes to that list, and then specify that list for the update.

Example

oracle-compute update storagevolume /mytenant/public/vol-u01 --tags ‘my-application-volume-01’

Sample Output

$ oracle-compute update storagevolume /mytenant/public/vol-u01 --tags 'my-application-volume-01' -Fstatus,name,size,status_detail,tags -ftab
status    status_detail                   name                     size        tags
Online    The storage volume is online.    /mytenant/public/vol-u01 1073741824     my-application-volume-01

Retrieve Storage Volume Details

You can retrieve storage volume details by using the CLI.

Topics:

- discover storagevolume

- get storagevolume

- list storagevolume

discover storagevolume

This command enables you to retrieve information about existing storage volumes.

Syntax

oracle-compute discover storagevolume 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 the storage volume

Example

$ oracle-compute discover storagevolume /mytenant/public

Sample Output

$ oracle-compute discover storagevolume /mytenant/public/
entry
/mytenant/public/demo-em-1_vm1_vol01
/mytenant/public/demo-em-1_vm1_vol02
/mytenant/public/demo-em-1_vm2_vol01
/mytenant/public/demo-em-1_vm2_vol02
/mytenant/public/vol1

get storagevolume

This command enables you to retrieve storage volume information.

Syntax

oracle-compute get storagevolume 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

Name of the storage volume

Example

$ oracle-compute get storagevolume /mytenant/public/vol1

Sample Output

$ oracle-compute get storagevolume /mytenant/public/vol1 -Fstatus,name,size,status_detail

status status_detail                  name                 size
Online The storage volume is online. /mytenant/public/vol1 1073741824

list storagevolume

This command enables you to retrieve storage volumes from a specific container.

Syntax

oracle-compute list storagevolume container [--tags] [--quota] [--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

container

Hierarchical name-space for the storage volume

--tags

(Optional) A list of user-friendly strings that tag the storage volume

--quota

(Optional) The quota against which this volume is created

--name

(Optional) Name of this storage volume

Example

$ oracle-compute list storagevolume /mytenant/public/

Sample Output

$ oracle-compute list storagevolume /mytenant/public/ -Fstatus,name,size,tags
status  name                                size         tags
Online /mytenant/public/demo-em-1_vm1_vol01 1073741824
Online /mytenant/public/demo-em-1_vm1_vol02 1073741824
Online /mytenant/public/demo-em-1_vm2_vol01 1073741824
Online /mytenant/public/demo-em-1_vm2_vol02 1073741824
Online /mytenant/public/vol1 1073741824

Managing Storage Attachments

A storage attachment is an association between a storage volume and an instance. You can attach a storage volume to an instance either at launch time (by using a launch plan in an orchestration) or after an instance is running (by using UI, CLI and API). Each volume may only be attached to one instance at a time. To detach a storage volume from an instance, delete the associated storage attachment object.

Note:
The storage attachment must exist within the tenant name-space of the instance owner.

Topics:

- add storageattachment

- delete storageattachment

- Retrieve Storage Attachment Details

add storageattachment

This command enables you to attach a storage volume to an instance.

Syntax

oracle-compute add storageattachment instance_name storage_volume_name index

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

instance_name

Name of the instance to which the volume should be attached

storage_volume_name

Name of the storage volume to which the instance should be attached

index

Index number for the volume. The allowed range is 1 to 10. The index determines the device name by which this volume is exposed to the instance ( for example, /dev/sdal1). The index to device mapping is as follows:

- 1—/dev/xvdb

- 2—/dev/xvdc, and so on

Example

$ oracle-compute add storageattachment /mytenant/public/1a9ce3a1-ddba-44f7-9cc5-04c77f6523bc /mytenant/public/storagevolume-data 1

delete storageattachment

This command enables you to detach a storage volume from a specific instance.

If the instance is in the running state, then you must first unmount the storage volume in the instance. Log in to the instance, identify the storage volume, and unmount the storage volume using the command umount path-to-disk-mount-point.

Syntax

oracle-compute delete storageattachment 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

System-generated name of the storage attachment to be deleted

Example

$ oracle-compute delete storageattachment /mytenant/public/1a9ce3a1-ddba-44f7-9cc5-04c77f6523bc/8a6551a2-af25-4616-98e8-50db17da8f64

Retrieve Storage Attachment Details

You can retrieve storage attachment details by using the CLI.

Topics:

- discover storageattachment

- get storageattachment

- list storageattachment

discover storageattachment

This command enables you to discover storage attachments in a specific container or subcontainer.

Syntax

oracle-compute discover storageattachment 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 containing the storage attachments

Example

$ oracle-compute discover storageattachment /mytenant/public/

Sample Output

$ oracle-compute discover storageattachment /mytenant/public/
entry
/mytenant/public/1a9ce3a1-ddba-44f7-9cc5-04c77f6523bc/

get storageattachment

This command enables you to retrieve information for a specific storage attachment.

Syntax

oracle-compute get storageattachment 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

System-generated name of the storage attachment

Example

$ oracle-compute get storageattachment /mytenant/public/960adf49-eefd-4f93-a300-2c798ba4a123/a74237e5-53a5-49e9-9167-f09f3697a6bb

Sample Output

$ oracle-compute get storageattachment /mytenant/public/960adf49-eefd-4f93-a300-2c798ba4a123/a74237e5-53a5-49e9-9167-f09f3697a6bb -F storage_volume_name,index,hypervisor,state,readonly -ftab

storage_volume_name        index hypervisor state     readonly
/mytenant/public/vm2_vol02 2     None       attached  False

list storageattachment

This command enables you to list details about the storage attachment in a specific container.

Syntax

oracle-compute list storageattachment container [--name] [--instance_name] [--state] [--storage_volume_name]

Parameters and Options

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

Note:

The output of this command is filtered based on the optional parameters (if specified).

Parameter

Description

container

Hierarchical name-space containing the storage attachments

--name

(Optional) Name of the attachment, automatically generated by the server

--instance_name

(Optional) Name of the instance to which the volume is attached

--state

(Optional) Attachment state. The following values are supported:

- attaching
The storage attachment is in the process of attaching to the instance.

- attached
The storage attachment is attached to the instance.

- detaching
The storage attachment is in the process of detaching to the instance.

- unavailable
The storage attachment is unavailable.

- error
The storage attachment is in error state.

--storage_volume_name

(Optional) Name of the storage volume to which the instance is attached

Example

$ oracle-compute list storageattachment /mytenant/public/

Sample Output

$ oracle-compute list storageattachment /mytenant/public/ -Fname,state
name                                                                                       state
/mytenant/public/960adf49-eefd-4f93-a300-2c798ba4a123/a74237e5-53a5-49e9-9167-f09f3697a6bb attached
/mytenant/public/960adf49-eefd-4f93-a300-2c798ba4a123/eaa6406a-49ce-4912-b2bc-4e5b410c3735 attached
/mytenant/public/ff94e915-a1d1-4f0f-88de-cc41b91394d3/5d28def6-10fc-4b9e-b80c-f3849f1490c0 attached
/mytenant/public/ff94e915-a1d1-4f0f-88de-cc41b91394d3/836b7374-e56a-4adb-a53c-403d20b7895f attached

Viewing Storage Properties

Storage properties are used to describe the characteristics of storage pools and determine the volume placement within a pool when a volume is created.

Topics:

- discover property storage

- get property storage

- list property storage

discover property storage

This command enables you to discover storage property objects in a specific container.

Syntax

oracle-compute discover property storage 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 containing property objects

Example

$ oracle-compute discover property storage /oracle/public/storage/protocol

Sample Output

$ oracle-compute discover property storage /oracle/public/storage/protocol
entry
/oracle/public/storage/protocol/iscsi
/oracle/public/storage/protocol/nfs

get property storage

This command enables you to retrieve a specific storage property.

Syntax

oracle-compute get property storage 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

Name of the storage property

Example

$ oracle-compute get property storage /oracle/public/storage/protocol/nfs/

Sample Output

$ oracle-compute get property storage /oracle/public/storage/protocol/nfs/
uri                            name                                 description
https://api/property/.../nfs   /oracle/public/storage/protocol/nfs  Storage property for protocol: nfs

list property storage

This command enables you to retrieve a list of storage properties in a specific container.

Syntax

oracle-compute list property storage container [ --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

container

Hierarchical name-space containing property objects

--name

(Optional) Name of the storage property

Example

$ oracle-compute list property storage /

Sample Output

$ oracle-compute list property storage / -Fname,description
name                                    description
/oracle/public/storage/protocol/nfs     Storage property for protocol: nfs
/oracle/public/storage/default          Default storageproperty for all StoragePools and StorageVolumes
/oracle/public/storage/protocol/iscsi   Storage property for protocol: iscsi

9 Network Management

The Oracle Public Cloud Machine includes compute nodes, a storage appliance, switches, and other components that require connectivity to your network. The network connections allow clients and administrators to use the compute resources remotely, by accessing the IaaS, and PaaS user interfaces and APIs, as well as virtual machines running on compute nodes.
The following three types of networks are supported:

- Infrastructure service networks: Infrastructure service networks are service networks that are created during the installation process while configuring the Oracle Public Cloud Machine. This network type is managed by Oracle Cloud Administrator. Oracle Cloud Administrator can provide access to specific tenants, like for ZFSSA or OMS access.

- Service networks: Service networks provide shared services across multiple tenants. The shared services include access to storage, networks, and other engineered systems. The service networks are further classified as public networks (EoIB) and private networks (IPoIB). This network type is created and shared by Oracle Cloud Administrators, and used by tenant administrators and tenant users.

- Tenant networks: Networks that are assigned exclusively for a specific tenant. Only the instances in that tenant can use this network. The tenant networks are further classified as public networks (EoIB) and private (IPoIB) networks.
EoIB networks are created by Oracle Cloud Administrators, and used by tenant administrators and tenant users. IPoIB networks are fully managed by tenant administrators and tenant users.

Topics:

- Viewing Service Networks

- Managing vEthernet

- Managing vNET

- Viewing vNET Access

- Managing vNET Reservations

- Viewing vCables

Viewing Service Networks

Service networks (servicenets) are created in the system to provide shared services across multiple tenants. The shared services include access to storage, networks, and other engineered systems. An example of an external service provider is an Oracle ZFS storage appliance that provides storage shared across tenants. A dedicated InfiniBand partition is allocated for a servicenet, and no two servicenets share the partition.

The networks can be of type EoIB or IPoIB. The Oracle Cloud Administrator creates and manages these servicenets. In order to view a service network, a tenant must be granted access to the servicenet's underlying vNet by the Oracle Cloud Administrator. This is done with the use of vNet access.

- IPoIB Service Networks: The IPoIB servicenet is used for communication between service consumers and service providers. The servicenet is constructed over InfiniBand inside the system, between engineered Systems, or external ZFS appliance interconnected using InfiniBand.

- EoIB Service Networks: The EoIB servicenet is used for communication with a service provider or service consumer located outside the system over Ethernet through NM2 Gateways.

Topics:

- discover servicenet

- get servicenet

- list servicenet

discover servicenet

This command enables you to discover a list of service networks defined within a container.

Syntax

oracle-compute discover servicenet 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 service networks

Example

$ oracle-compute discover servicenet /oracle/public

Sample Output

$ oracle-compute discover servicenet /oracle/public
entry
/oracle/public/IPoIB-virt-admin

get servicenet

This command enables you to retrieve information for a specific service network.

Syntax

oracle-compute get servicenet 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

Name of the service network. For example, /oracle/public/mysvcnet

Example

$ oracle-compute get servicenet /cloud/public/IPoIB-default

Sample Output

$ oracle-compute get servicenet /cloud/public/IPoIB-default -F name,pkey,type,description
name                         pkey     type    description
/cloud/public/IPoIB-default  0x7fff   ipoib   Infrastructure service network: cloud/public/IPoIB-default

list servicenet

This command enables you to retrieve information for all the service networks within a specific container.

Syntax

oracle-compute list servicenet 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 service networks

Example

$ oracle-compute list servicenet /

Sample Output

$ oracle-compute list servicenet / -F name,pkey,type,description
name                                         pkey        type       description
/cloud/public/IPoIB-default                  0x7fff      ipoib      Infrastructure service network: cloud/public/IPoIB-default
/oracle/public/IPoIB-virt-admin              0x1402      ipoib      Infrastructure service network: oracle/public/IPoIB-virt-admin
/cloud/public/IPoIB-ldap-internal            0x1405      ipoib      IPoIB-ldap-internal
/cloud/public/IPoIB-service-manager          0x1404      ipoib      IPoIB-service
/cloud/public/IPoIB-management               0x1ffe      ipoib      Infrastructure service network: cloud/public/IPoIB-management
/cloud/public/IPoIB-instance-storage         0x1401      ipoib      Infrastructure service network: cloud/public/IPoIB-instance-storage
/cloud/public/IPoIB-load-balancer            0x140b      ipoib      IPoIB-load-balancer
/cloud/public/EoIB-vlan3072                  0x1416      eoib
/cloud/public/IPoIB-storage                  0x1400      ipoib      Infrastructure service network: cloud/public/IPoIB-storage
/cloud/public/EoIB-management                0x1403      eoib       Infrastructure service network: cloud/public/EoIB-management
/cloud/public/EoIB-OMS                       0x1406      eoib       EoIB-OMS

Managing vEthernet

A virtual Ethernet (vEthernet) is an IaaS object representing an OSI Layer 2 network, defined by a VLAN ID, switch pair name and e-port. vEthernets serve the purpose to isolate networks for instances run by different departments or business units (tenants).

Topics:

- add vethernet

- delete vethernet

- update vethernet

- Retrieve vEthernet Details

add vethernet

This command enables you to add a virtual Ethernet to the network.

Note:
You can only add IPoIB vEthernets. To add EoIB vEthernet, contact your Oracle Cloud Administrator.

Syntax

oracle-compute add vethernet name description type id [--switchports] [--svcnet]

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 for vEthernet. For example, /mytenant/public/EoIB.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

description

A description for a vEthernet.

type

Type of vEthernet (supported types: vlan, eoib, ipoib).

Note:
Tenant User can only add vEthernet type ipoib.

id

Unique identifier for this vEthernet (VLAN ID for eoib/vlan type). Set this parameter to 0 for vEthernet type ipoib.

--switchports

(Optional) Dictionary containing two switch names as keys each mapped to a list containing a single eport (HA pairs). For example, {"switchname1":["eport1"],"switchname2":["eport1"]}.
This field is only applicable for type eoib.

--svcnet

(Optional) Service network to use for this vEthernet

Example

$ oracle-compute -u /mytenant/user1 add vethernet /mytenant/public/testnet1 "My Tenant Private Net 1" ipoib 0
uri                                             name                     description              type  id  switchports svcnet
https://api/vethernet/mytenant/public/testnet1  /mytenant/public/testnet1 My Tenant Private Net 1  ipoib 0   None        None

delete vethernet

This command enables you to delete a virtual Ethernet.

Note:
You can only delete IPoIB vEthernets.

Syntax

oracle-compute delete vethernet 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 for the vEthernet. For example, /mytenant/public/myvethernet.

Example

$ oracle-compute delete vethernet /mytenant/public/myvethernet

update vethernet

This command enables you to update information for a specific virtual Ethernet.

Note:
You can only update IPoIB vEthernets.

Syntax

oracle-compute update vethernet name [--description]

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

Unique hierarchical name for the vEthernet. For example, /mytenant/public/myvethernet.

--description

(Optional)A description for a vEthernet

Example

$ oracle-compute update vethernet /mytenant/public/myvEthernet --description "Private Tenant Network"

Sample Output

$ oracle-compute update vethernet /mytenant/public/myvEthernet --description "Private Tenant Network" -Fname,description
name                                description
/demo/public/Private-Tenant-Network Private Tenant Network

Retrieve vEthernet Details

You can retrieve vEthernet details by using the CLI.

Topics:

- discover vethernet

- get vethernet

- list vethernet

discover vethernet

This command enables you to discover virtual Ethernets configured in a specific container.

Syntax

oracle-compute discover vethernet 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 vEthernets

Example

$ oracle-compute discover vethernet /oracle/public

Sample Output

$ oracle-compute discover vethernet /oracle/public
entry
/oracle/public/IPoIB-virt-admin-c2
/oracle/public/default

get vethernet

This command enables you to retrieve information for a specific virtual Ethernet.

Syntax

oracle-compute get vethernet 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

Name of the vEthernet

Example

$ oracle-compute get vethernet /mytenant/public/veth-ipoib

Sample Output

$ oracle-compute get vethernet /mytenant/public/veth-ipoib -Fname,description,type,svcnet
name                                description         type          svcnet
/mytenant/public/veth-ipoib         description         ipoib         None

list vethernet

This command enables you to retrieve information for the configured virtual Ethernet in a specific container or subcontainer.

Syntax

oracle-compute list vethernet container [--type]

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 the virtual Ethernet.

--type

(Optional) Type of vEthernet.

Note:
Output of this command is filtered based on the values provided for this parameter.

Example

$ oracle-compute list vethernet /oracle/public

Sample Output

$  oracle-compute list vethernet /oracle/public -F name,description,svcnet,type,id
name                                type   id  svcnet
/oracle/public/IPoIB-virt-admin-c2  ipoib  0   oracle/public/IPoIB-virt-admin-c2
/oracle/public/default              vlan   0   None

Managing vNET

A virtual network (vNET) is deployed in the scope of a service network or tenant network. vNET represents an IP subnet and defines an IP address range. You require a vEthernet to create a vNET.

Topics:

- add vnet

- delete vnet

- update vnet

- Retrieve vNET Details

add vnet

This command enables you to add a new virtual network for a tenant.

Note:
The tenant users can only add vNETs that are tied to IPoIB type vEthernets. However, if EoIB vNET is needed the Oracle Cloud Administrator must create it in the tenancy for the tenant user to use.

Syntax

oracle-compute add vnet name vethernet [--cidr] [--ipranges] [--description] [--global_ip_num]

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 for a vNET . For example, /mytenant/public/myvnet.
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

vethernet

vEthernet to be associated with this vNET. For tenant user, only IPoIB vEthernet is supported.

--cidr

(Optional) Specifies the subnet Classless Inter-Domain Routing (CIDR) for vNET. Optional for IPoIB network.
Format: ip_address/#. For example, 192.0.1.0/24

If cidr is not specified for IPoIB networks, then global_ip_num parameter must be specified.

--ipranges

(Optional) IP address range for the vNET. It's a comma-separated list that can have individual IP addresses or ranges using “-“ as a separator. For example, 192.0.1.10, 192.0.1.20-192.0.1.30
If no IP range is provided, then the entire CIDR (from .1 to .254) is used for IP addresses.

--description

(Optional) Description to correlate this vNET with an internal tenant schema

--global_ip_num

(Optional) Specifies the number of IP addresses to be used from the global IP pool. Not valid for EoIB network.
If the global IP pool is enabled in Oracle Compute Cloud Service, using this option will create a vNET by allocating a specified number of IP addresses from the global pool of IP addresses to guarantee uniqueness. This option is mutually exclusive of cidr and ipranges options.

Example

$ oracle-compute add vnet /mytenant/public/IPoIB /mytenant/public/IPoIB --cidr 192.0.2.1/21

delete vnet

This command enables you to delete a specific vNET for a tenant. You cannot delete a vNET if it is used by any instance, or if there is an existing vNET Reservation associated with the vNET.

Syntax

oracle-compute delete vnet 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 for a vNET . For example, /mytenant/public/myvnet

Example

$ oracle-compute delete vnet /mytenant/public/IPoIB-service-manager-c2

update vnet

This command enables you to update information for a specific tenant vNET.

Note:
The tenant users can only update vNETs that are tied to IPoIB vEthernets.

Syntax

oracle-compute update vnet name [--cidr] [--ipranges] [--gateway] [--description] [--global_ip_num]

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 for a vNET . For example, /mytenant/public/myvnet .

--cidr

(Optional) Specifies the subnet Classless Inter-Domain Routing (CIDR) for vNET. Optional for IPoIB network.
Format: ip_address/#. For example, 192.0.1.0/24

--ipranges

(Optional) IP address range for the vNET. It is a comma separated list that can have individual IP addresses or ranges using “-“ as a separator. For example, 192.0.1.10, 192.0.1.20-192.0.1.30
If no IP range is provided, then the entire CIDR (from .1 to .254) is used for IP addresses.

--description

(Optional) Description to correlate this vNET with the internal tenant schema

--global_ip_num

(Optional) Specifies the number of IP addresses to be used from the global IP pool. Not valid for EoIB network.
If the global IP pool is enabled in Oracle Compute, using this option will create a vNET by allocating a specified number of IP addresses from the global pool of IP addresses to guarantee uniqueness. This option is mutually exclusive of cidr and ipranges options.

Example

$ oracle-compute update vnet /mytenant/public/IPoIB --ipranges 192.0.10.1-192.0.10.10

Retrieve vNET Details

You can retrieve vNET details by using the CLI.

Note:
You can view the details of any vNET in your own tenancy, as well as vNETs you have been given access to by the Oracle Cloud Administrator.

Topics:

- discover vnet

- get vnet

- list vnet

discover vnet

This command enables you to discover a list of configured vNETs in a specific container or subcontainer.

Syntax

oracle-compute discover vnet 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 vNET. For example, /mytenant/public/.

Example

$ oracle-compute discover vnet /mytenant/public/

Sample Output

$ oracle-compute discover vnet /mytenant/public/
entry
/mytenant/public/IPoIB-private-c2
/mytenant/public/eth-admin
$

get vnet

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

Syntax

oracle-compute get vnet 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

An unique hierarchical name for a vNET . For example, /mytenant/public/IPoIB

Example

$ oracle-compute get vnet /mytenant/public/IPoIB

Example

$ oracle-compute get vnet /mytenant/public/IPoIB   -F name,vethernet,cidr
name                      vethernet               cidr
/mytenant/public/IPoIB   /mytenant/public/IPoIB   10.128.38.0/23
$

list vnet

This command enables you to retrieve information for all the vNETs in a specific container.

Syntax

oracle-compute list vnet 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 vNET. For example, /mytenant/public/myVNET

Example

$ oracle-compute list vnet /cloud/public/

Example

$ oracle-compute list vnet  /cloud/public/ -F name,vethernet,cidr,ipranges
name                                    vethernet                            cidr             ipranges
/cloud/public/EoIB-OMS               /cloud/public/EoIB-OMS               10.196.38.0/23   10.196.38.101-10.196.38.245
/cloud/public/EoIB-management        /cloud/public/EoIB-management        10.196.36.0/23   10.196.36.55, 10.196.36.56, 10.196.36.58
/cloud/public/IPoIB-instance-storage /cloud/public/IPoIB-instance-storage 10.196.0.0/16    10.196.0.2-172.38.255.254
/cloud/public/IPoIB-ldap-internal    /cloud/public/IPoIB-ldap-internal    192.168.120.0/24 192.168.120.1-192.168.120.254
/cloud/public/IPoIB-load-balancer    /cloud/public/IPoIB-load-balancer    192.168.127.0/24 192.168.127.1-192.168.127.254
/cloud/public/IPoIB-management       /cloud/public/IPoIB-management       192.168.90.0/24  192.168.90.43, 192.168.90.44, 192.168.90.45
/cloud/public/IPoIB-service-manager  /cloud/public/IPoIB-service-manager  192.168.126.0/24 192.168.126.1-192.168.126.254
/cloud/public/vnet-EoIB-vlan3072     /cloud/public/veth-EoIB-vlan3072     10.196.206.0/23  10.196.206.74-10.196.206.93

Viewing vNET Access

Virtual network access (vNET Access) allows sharing of vNETs between tenants. View the vNET Access objects in your own tenancy to determine what vNETs you have permission to use when configuring virtual machines. Tenant users and administrators can fetch the vNET Access information to determine the vNETs that they can use.

Topics:

- discover vnetaccess

- get vnetaccess

- list vnetaccess

discover vnetaccess

This command enables you to discover a list of vNET Access entities configured in a specific container.

Syntax

oracle-compute discover vnetaccess 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 vNET Access

Example

$ oracle-compute discover vnetaccess /mytenant/public

Sample Output

$ oracle-compute discover vnetaccess /mytenant/public
entry
/mytenant/public/EoIB-OMS-c2
/mytenant/public/EoIB-management-c2
/mytenant/public/IPoIB-instance-storage-c2
/mytenant/public/IPoIB-load-balancer-c2
/mytenant/public/IPoIB-management-c2
/mytenant/public/IPoIB-service-manager-c2
/mytenant/public/IPoIB-virt-admin-c2

get vnetaccess

This command enables you to retrieve information for a specific vNET access entity.

Syntax

oracle-compute get vnetaccess 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

Unique hierarchical name for the virtual network access. For example, /cloud/public/myvnetworkaccess

Example

$ oracle-compute get vnetaccess /mytenant/public/EoIB-OMS-c2

Sample Output

uri                                                name                         vnet                       provider
https://api/vnetaccess/mytenant/public/EoIB-OMS   /mytenant/public/EoIB-OMS-c2  /cloud/public/EoIB-OMS-c2  False

list vnetaccess

This command enables you list information for all the vNet Access entities in a container.

Syntax

oracle-compute list vnetaccess container [--vnet]

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 vNET Access

--vnet

(Optional) Name of the associated virtual network

Example

$ oracle-compute list vnetaccess /mytenant/public

Sample Output

$ oracle-compute list vnetaccess /mytenant/public -F name,vnet,provider
name                                        vnet                                      provider
/mytenant/public/EoIB-OMS-c2                /cloud/public/EoIB-OMS-c2                 False
/mytenant/public/EoIB-management-c2         /cloud/public/EoIB-management-c2          True
/mytenant/public/IPoIB-instance-storage-c2  /cloud/public/IPoIB-instance-storage-c2   False
/mytenant/public/IPoIB-load-balancer-c2     /cloud/public/IPoIB-load-balancer-c2      False
/mytenant/public/IPoIB-management-c2        /cloud/public/IPoIB-management-c2         False
/mytenant/public/IPoIB-service-manager-c2   /cloud/public/IPoIB-service-manager-c2    True
/mytenant/public/IPoIB-virt-admin-c2        /oracle/public/IPoIB-virt-admin-c2        True

Managing vNET Reservations

A vNET Reservation enables the user to reserve an IP address for an instance.

Topics:

- add vnetreservation

- delete vnetreservation

- Retrieve vNET Reservation Details

add vnetreservation

This command enables you to add a new vNET Reservation.

Syntax

oracle-compute add vnetreservation name vnet [--ip]

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 for vNET Reservation . For example, /mytenant/public/myvnetreservation
Object names can contain only alphanumeric characters, hyphens, and periods. Object names are case-sensitive.

vnet

vNET name from where the IP address will be reserved

--ip

(Optional) IP address allocated for this IP entry. By default, a random IP address will be taken from the vNET IP range. If an IP address is specified, then the API will attempt to allocate the specified address from the vNET pool.

Example

$ oracle-compute add vnetreservation /mytenant/public/res1 /mytenant/public/IPoIB --ip 192.0.10.4

delete vnetreservation

This command enables you to delete a specific vNET Reservation

Syntax

oracle-compute delete vnetreservation 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

Unique hierarchical name for the vNET Reservation. For example, /mytenant/public/myvnetreservation

Example

$ oracle-compute delete vnetreservation /mytenant/public/res1

Retrieve vNET Reservation Details

You can retrieve vNET Reservation details by using the CLI.

Topics:

- discover vnetreservation

- get vnetreservation

- list vnetreservation

discover vnetreservation

This command enables you to discover all the vNET Reservations listed in a specific container or subcontainer.

Syntax

oracle-compute discover vnetreservation 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 vNET Reservation.

Example

$ oracle-compute discover vnetreservation /mytenant/public/

Sample Output

$ oracle-compute discover vnetreservation /mytenant/public/

entry
/mytenant/public/myreserve
/mytenant/public/mysecondreserve

get vnetreservation

This command enables you to retrieve information for a specific vNET Reservation.

Syntax

oracle-compute get vnetreservation 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 for vNET Reservation. For example, /mytenant/public/myreservation

Example

$ oracle-compute get vnetreservation /mytenant/public/myreserve

Sample Output

$ oracle-compute get vnetreservation /mytenant/public/myreserve -Fname,vnet,ip,used
name                          vnet                       ip              used
/mytenant/public/myreserve  /mytenant/public/vnet_1  192.0.10.17  False

list vnetreservation

This command enables you to retrieve information for all the vNET Reservations in a specific container.

Syntax

oracle-compute list vnetreservation name [--ip] [--quota]

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 for vNET Reservation . For example, /mytenant/public/myvnetreservation

--ip

(Optional) IP address allocated for the reservation

--quota

(Optional) The quota against which this reservation is created

Example

$ oracle-compute list vnetreservation /mytenant/public

Sample Output

$ oracle-compute list  vnetreservation /mytenant/public -Fname,vnet,ip,used
name                               vnet                   ip           used
/mytenant/public/myreserve       /mytenant/public/vnet_ 192.0.12.17 False
/mytenant/public/mysecondreserve /mytenant/public/vnet_ 192.0.12.18 False$

Viewing vCables

A virtual cable (vCable) is an internal representation of the link between an instance's network interface and a specific network. A vCable is created automatically when an instance is launched and is deleted when the instance is deleted. When a vCable is deleted (on instance termination), entities that depend on them are also deleted.

Topics:

- discover vcable

- get vcable

- list vcable

discover vcable

This command enables you to discover a list of vCables configured in a specific container.

Syntax

oracle-compute discover vcable 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 vCables. For example, /mytenant/public/myvcable

Example

$ oracle-compute discover vcable /mytenant/public

Sample Output

$ oracle-compute discover vcable /mytenant/public
entry
/mytenant/public/01cb8de3-945f-41b3-8e76-206c0a17c770
/mytenant/public/030e87f3-b7aa-423b-83ee-c30bbfd2e8a0
/mytenant/public/06200aa6-3284-4320-a8dc-fbc001e8ace8
/mytenant/public/0973a377-1542-440b-bf9b-8c8e14b93586
/mytenant/public/1117e4b7-25b1-4796-b37d-119a623304b9
/mytenant/public/15e1b187-d739-4d95-9a71-0235774e6779
/mytenant/public/1d361020-f6a2-4deb-9e2b-d5fd0a5444aa
/mytenant/public/1e917354-2858-425c-b92f-8a77ef7b8532
/mytenant/public/2036c074-89f9-4880-a498-d23ba95c6d04
/mytenant/public/265d1044-ca53-441d-bcf9-afb9a2070bcf
/mytenant/public/2cbd35fb-05bc-45e7-b194-5b508d669258
/mytenant/public/2e63136b-7989-426d-93a3-8c63cf5d9e54
/mytenant/public/302b8248-0fd0-42c7-9776-6c248692854d
/mytenant/public/32b4c1b1-85c0-4aa7-9766-431ea2fa40a9
/mytenant/public/3f4647b2-d49d-458e-9a82-253fc22403d9

get vcable

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

Syntax

oracle-compute get vcable id

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

id

Unique Id of vCable

Example

$ oracle-compute get vcable /mytenant/public/f818e9bb-251f-476a-aa36-08e8fc6f7707

Sample Output

$ oracle-compute get vcable /mytenant/public/f818e9bb-251f-476a-aa36-08e8fc6f7707 -F id,vethernet
id                                                           vethernet
/mytenant/public/f818e9bb-251f-476a-aa36-08e8fc6f7707        /cloud/public/IPoIB-instance-storage
$

list vcable

This command enables you to retrieve information for vCables in a specific container.

Syntax

oracle-compute list vcable container [--vnet] [--vethernet_id] [--vethernet_type] [--id] [--instance] [--vethernet]

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 vCables. For example, /mytenant/public/myvcable

--vnet

(Optional) The path of the vNET used to create the vCable.
If specified, the vCable listing is scoped to only include vCables linked to the specified vNET.

--vethernet_id

(Optional) The vEthernet Id for the vCable. If specified, the vCable listing is scoped to only include vCables with the specified Id. The parameter is always set to -1 for infiniband networks.

--vethernet_type

(Optional) The type of vEthernet for the vCable. Possible values are ipoib or eoib.
If specified, the vCable listing will be scoped to only include vCables linked to vEthernets of the specified type.

--id

(Optional) Unique identifier of the particular vCable for which you want to retrieve info.

--instance

(Optional)  A specific instance you want to list vCables for.
If specified, the listing will be scoped to only include vCables linked to this specific instance.

--vethernet

(Optional) The path of the vEthernet used to create the vCable.
If specified, the listing will be scoped to only include vCables linked to this specific vEthernet.

Example

$ oracle-compute list vcable /mytenant/public/

Sample Output

oracle-compute list vcable /mytenant/public -Fname,id,address -ftab --instance /mytenant/public/e6a987d4-2ca6-4edb-926a-89858ecc82a9
id                                                     address
/mytenant/public/2d4ac3e8-4f5f-4081-a5eb-67a7a5b0c3f8  00:21:f6:b5:19:52, 00:21:f6:75:c6:7d, 10.247.64.56
/mytenant/public/b1658206-709a-4bcc-9adb-e173ec1d3634  None, 10.196.0.11
/mytenant/public/fe0598d2-be48-4f0a-a9d0-5286df80300a  None, 192.168.128.25

A Debugging Common Error Messages

When an oracle-compute command executes successfully, it either terminates silently or prints a table of values about the object on which the operation was performed.

If an error occurs, the command returns an exit status code and an exception. The exit status code is stored in the exit status environment variable, the name of which depends on the UNIX shell that you use.

The following table describes exit status codes.

Exit status

Exception and description

0

Success

1

General error, including operations that are not allowed.

2

Shell builtins have been misused as a result of a missing keyword or component, or an underlying permission problem not related to Oracle Compute Cloud Service permissions.

3

APIException

Indicates an error during the operation of the client or server.

4

ValidationError

The input data is not valid. For example, missing values, wrong types or references to non-existent objects. This exception always contains detailed information on the input data.

5

APIInternalError

Indicates that communications might have succeeded, but something went wrong inside the client. This is the base class for the APICodec error.

6

APICodecError

Indicates a problem with JSON format encoding an object or decoding the response. This is the base class for the APIDecoding and APIEncoding errors.

7

APIDecodingError

Indicates a problem with decoding a response to an object, usually because of an invalid JSON format.

8

APIEncodingError

Indicates a problem with encoding an object usually caused by data in an unrecognizable format.

9

APIClientError

A client side error, in line with 4xx errors in HTTP.

10

APIUnauthorizedError

The request requires user authentication or authorization.

11

APIForbiddenError

The request is formed properly, but the server cannot fulfill it. The issue is not related to authorization. Do not repeat the request.

12

APINotFoundError

The server has not found a match for the URI in the request. This state might be temporary so repeat the request.

13

APIMethodNotAllowedError

The method specified in the Request-Line is not allowed for the resource identified by the Request-URI. This exception occurs when the request includes a method that is not supported for the object.

14

APINotAcceptableError

The resource specified in the request generates response that has characteristics that are not allowed by the accept headers in the request.

15

APIConflictError

The request could not be completed because of a conflict with the state of the resource or the resource already exists. You can either delete the existing object to allow the request to create it or you can create a new object with a unique identifier.

16

APIGoneError

The requested resource does not exist. This error occurs when an instance exists but is not running, so a duplicate of this instance with the same identifier can not be created.

17

APIUnsupportedTypeError

The server cannot complete the request because the request contains a format that is not supported by the method for the resource. This error indicates an error in JSON formatting.

18

APIServerError

An internal error has occurred and the server cannot fulfill the request.

21

APIUncaughtExceptionError

The server encountered an unexpected condition that prevented it from fulfilling the request. The error includes a code. Use this code when you report the problem to My Oracle Support.

22

APINotImplementedError

The server does not support the functionality required to fulfill the request.

23

APIServiceUnavailable

The server is unable to handle the request due to temporary overloading or maintenance. This error is usually related to the load on the server and is temporary. Repeat the request.

30

IOError

A file to be uploaded to the server cannot be found or is unavailable.

24

APIGatewayError

The Oracle Compute service layer is not able to respond. This is usually related to a failover of the service and is temporary. Repeat the request.

31

APINetworkError

There was a network error while trying to communicate with the server. This can result from a DNS lookup failure or TCP connection failure.

33

APIRequestTooLarge

The request attempts to upload an image that exceeds the maximum upload size.

For debugging, use the -d option while running the oracle-compute command. The -d option prints out all the HTTP traffic, which facilitates the user in debugging error messages.

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2017, Oracle and/or its affiliates. All rights reserved.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Pre-General Availability Draft Documentation Notice

If this document is in public or private pre-General Availability status:

This documentation is in pre-General Availability status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.

Private Pre-General Availability Draft Documentation Notice

If this document is in private pre-General Availability status:

The information contained in this document is for informational sharing purposes only and should be considered in your capacity as a customer advisory board member or pursuant to your pre-General Availability trial agreement only. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described in this document remains at the sole discretion of Oracle.

This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this confidential material is subject to the terms and conditions of your Oracle Master Agreement, Oracle License and Services Agreement, Oracle PartnerNetwork Agreement, Oracle distribution agreement, or other license agreement which has been executed by you and Oracle and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.