oci_db_home - Create,update and delete a DB Home in OCI Database Cloud Service.¶
New in version 2.5.
Synopsis¶
- Create an OCI DB Home
- Update an OCI DB Home, if present
- Delete an OCI DB Home, if present.
- Since all operations of this module takes a long time, it is recommended to set the
wait
to False. Use oci_db_home_facts to check the status of the operation as a separate task.
Requirements¶
The below requirements are needed on the host that executes this module.
- python >= 2.6
- Python SDK for Oracle Cloud Infrastructure https://oracle-cloud-infrastructure-python-sdk.readthedocs.io
Parameters¶
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
api_user |
The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the value of the OCI_USER_OCID environment variable, if any, is used. This option is required if the user is not specified through a configuration file (See
config_file_location ). To get the user's OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm. |
||
api_user_fingerprint |
Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT environment variable, if any, is used. This option is required if the key fingerprint is not specified through a configuration file (See
config_file_location ). To get the key pair's fingerprint value please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm. |
||
api_user_key_file |
Full path and filename of the private key (in PEM format). If not set, then the value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required if the private key is not specified through a configuration file (See
config_file_location ). If the key is encrypted with a pass-phrase, the api_user_key_pass_phrase option must also be provided. |
||
api_user_key_pass_phrase |
Passphrase used by the key referenced in
api_user_key_file , if it is encrypted. If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is used. This option is required if the key passphrase is not specified through a configuration file (See config_file_location ). |
||
auth_type |
|
The type of authentication to use for making API requests. By default
auth_type="api_key" based authentication is performed and the API key (see api_user_key_file) in your config file will be used. If this 'auth_type' module option is not specified, the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use auth_type="instance_principal" to use instance principal based authentication when running ansible playbooks within an OCI compute instance. |
|
config_file_location |
Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment variable, if any, is used. Otherwise, defaults to ~/.oci/config.
|
||
config_profile_name |
Default: DEFAULT
|
The profile to load from the config file referenced by
config_file_location . If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any, is used. Otherwise, defaults to the "DEFAULT" profile in config_file_location . |
|
database |
The details of the databse to be created under the db home. Mandatory for create operation.
|
||
backup_id
required |
The backup OCID. This parameter only valid for source=DB_BACKUP.
|
||
ncharacter_set |
National character set for the database.The default is AL16UTF16. Allowed values are AL16UTF16 or UTF8. This parameter only valid for source=NONE.
|
||
backup_tde_password
required |
The password to open the TDE wallet. This parameter only valid for source=DB_BACKUP.
|
||
pdb_name |
pluggable database name.It must begin with an alphabetic character and can contain a maximum of eight alphanumeric characters. Special characters are not permitted. Pluggable database should not be same as database name. This parameter only valid for source=NONE.
|
||
db_workload |
Database workload type with allowed values OLTP and DSS. This parameter only valid for source=NONE.
|
||
db_name
required |
The name of the database name. It must begin with an alphabetic character and can contain a maximum of eight alphanumeric characters. Special characters are not permitted. This parameter only valid for source=NONE.
|
||
admin_password
required |
A strong password for SYS, SYSTEM, and PDB Admin. The password must be at least nine characters and contain at least two uppercase,two lowercase, two numbers, and two special characters. This parameter valid for source=NONE and source=DB_BACKUP.
|
||
db_backup_config |
Consists of the option 'auto_backup_enabled' to determine whether to configures automatic backups of the databse. This parameter only valid for source=NONE.
|
||
character_set |
The character set for the database. The default is AL32UTF8. This parameter only valid for source=NONE.
|
||
db_home_id |
The identifier of the db home. Mandatory for update and delete.
aliases: id |
||
db_system_id |
Identifier of the DB System under which the DB Home should exist. Mandatory for create.
|
||
db_version |
A valid Oracle database version. Mandatory for create.
|
||
display_name |
The user-provided name of the database home.
|
||
force_create
bool |
|
Whether to attempt non-idempotent creation of a resource. By default, create resource is an idempotent operation, and doesn't create the resource if it already exists. Setting this option to true, forcefully creates a copy of the resource, even if it already exists.This option is mutually exclusive with key_by.
|
|
key_by |
The list of comma-separated attributes of this resource which should be used to uniquely identify an instance of the resource. By default, all the attributes of a resource except freeform_tags are used to uniquely identify a resource.
|
||
patch_details |
The patch version and what actions to perform with that, on specified DB Home. This is required only for the update use case.
|
||
action
required |
|
The action to perform on the patch.
|
|
patch_id
required |
The OCID of the patch.
|
||
region |
The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set, then the value of the OCI_REGION variable, if any, is used. This option is required if the region is not specified through a configuration file (See
config_file_location ). Please refer to https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm for more information on OCI regions. |
||
source |
|
Source of database. source=NONE for creating a new database source=DB_BACKUP for creating a new database by restoring a backup.
|
|
state |
|
Create,update or delete DB Home. For state=present, if it does not exists, it gets created. If exists, it gets updated.
|
|
tenancy |
OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if any, is used. This option is required if the tenancy OCID is not specified through a configuration file (See
config_file_location ). To get the tenancy OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm |
||
wait
bool |
|
Whether to wait for create or delete operation to complete.
|
|
wait_timeout |
Default: 1200
|
Time, in seconds, to wait when wait=yes.
|
|
wait_until |
The lifecycle state to wait for the resource to transition into when wait=yes. By default, when wait=yes, we wait for the resource to get into ACTIVE/ATTACHED/AVAILABLE/PROVISIONED/ RUNNING applicable lifecycle state during create operation & to get into DELETED/DETACHED/ TERMINATED lifecycle state during delete operation.
|
Notes¶
Note
- For OCI python sdk configuration, please refer to https://oracle-cloud-infrastructure-python-sdk.readthedocs.io/en/latest/configuration.html
Examples¶
# Note: These examples do not set authentication details.
# Create DB Home from No Source
- name: Create DB Home From No Source
oci_db_home:
db_system_id: "ocid1.dbsystem.aaaa"
display_name: "db50"
source: "NONE"
database:
admin_password: 'BEstr0ng_#1'
character_set: 'AL32UTF8'
db_backup_config:
auto_backup_enabled: False
db_name: 'dbone{{random_suffix_1024}}'
db_workload: 'OLTP'
ncharacter_set: 'AL16UTF16'
db_version: "12.2.0.1"
wait: False
state: 'present'
# Create DB Home from DB Backup
- name: Create DB Home From DB Backup
oci_db_home:
db_system_id: "ocid1.dbsystem.aaaa"
display_name: "db50"
source: "DB_BACKUP"
database:
backup_id: 'ocid1.dbbackup.oc1.iad.xxxxxEXAMPLExxxxx'
backup_tde_password: 'BEstr0ng_#1'
admin_password: 'BEstr0ng_#1'
state: 'present'
# Precheck a patch on DB Home
- name: Precheck a patch on DB Home
oci_db_home:
db_home_id: "ocid1.dbhome.aaaa"
patch_details:
patch_id: "ocid1.dbbackup.oc1.iad.xxxxxEXAMPLExxxxx"
action: 'PRECHECK'
state: 'present'
# Apply a patch on DB Home
- name: Apply a patch on DB Home
oci_db_home:
db_home_id: "ocid1.dbhome.aaaa"
patch_details:
patch_id: "ocid1.dbbackup.oc1.iad.xxxxxEXAMPLExxxxx"
action: 'APPLY'
state: 'present'
# Delete DB Home
oci_db_home:
db_home_id: "ocid1.dbhome.aaaa"
state: 'absense'
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description | |
---|---|---|---|
db_home
complex
|
success |
Attributes of the created/updated DB Home. For delete, deleted DB Home description will be returned.
Sample:
{'db_version': '12.2.0.1.1', 'display_name': 'ansible-db', 'compartment_id': 'ocid1.compartment.aaaa', 'lifecycle_state': 'AVAILABLE', 'last_patch_history_entry_id': 'ocid1.dbpatchhistory.aaaa', 'time_created': '2018-02-16T08:44:32.779000+00:00', 'db_system_id': 'ocid1.dbsystem.aaaa', 'id': 'ocid1.dbhome.aaaa'}
|
|
db_version
string
|
always |
Oracle database version.
Sample:
12.2.0.1.1
|
|
display_name
string
|
always |
The user-friendly name for the DB Home.
Sample:
ansible-db-home
|
|
compartment_id
string
|
always |
The identifier of the compartment containing the DB Home
Sample:
ocid1.compartment.oc1.xzvf..oifds
|
|
lifecycle_state
string
|
always |
The current state of the DB System.
Sample:
AVAILABLE
|
|
time_created
datetime
|
always |
Date and time when the DB System was created, in the format defined by RFC3339
Sample:
2016-08-25 21:10:29.600000
|
|
last_patch_history_entry_id
string
|
always |
The OCID of the last patch history. This is updated as soon as a patch operation is started.
Sample:
ocid1.lastpatchhistory.aaaa
|
|
db_system_id
string
|
always |
Identifier of the DB System under which the DB Home should exists.
Sample:
ocid1.dbsystem.oc1.iad.xxxxxEXAMPLExxxxx
|
|
id
string
|
always |
Identifier of the DB Home.
Sample:
ocid1.dbhome.oc1.iad.xxxxxEXAMPLExxxxx
|
Status¶
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Author¶
- Debayan Gupta(@debayan_gupta)
Hint
If you notice any issues in this documentation you can edit this document to improve it.