この章では、PDBaaSフリート操作の実行に使用できるEMCLIコマンドについて説明します。内容は次のとおりです。
パッチ/パッチセットによるOracleホームのソフトウェア・イメージの作成
emcli db_software_maintenance -createSoftwareImage -input_file="data:"/scratch/input_rac"
input_rac
の内容は次のとおりです。
IMAGE_NAME=DbGoldImage
IMAGE_DESCRIPTION=Gold Image for 12c db
REF_TARGET_NAME=ORACLE_HOME
IMAGE_SWLIB_LOC=Oracle Home Provisioning Profiles/12.1.0.2.0/linux_x64
REF_HOST_CREDENTIALS=ZONE_CREDS:TESTSUPERADMIN
WORKING_DIRECTORY=/tmp
STORAGE_TYPE_FOR_SWLIB=OmsShared
STORAGE_NAME_FOR_SWLIB=swlib
VERSION_NAME=Version1
作成されたイメージの取得
新規に作成されたイメージのIDを取得するには、次のコマンドを実行します。
emcli db_software_maintenance –getImages
新規に作成されたイメージへのPDBaaSプールのサブスクライブ
emcli db_cloud_maintenance -subscribeTarget -pool_name=PDB_POOL -pool_type=pdbaas_pool -image_id=438AA95015F34E25E053FB7BB10A9E3B
このコマンドは、PDBaaSプール、CDBメンバー、およびCDBに関連付けられたPDBをサブスクライブします。これはdb_cloud_maintenance操作であり、db_software_maintenance操作ではありません。
PDBaaSターゲットとそのサブスクリプションの検証
PDBaaSターゲットを検証するには、次のコマンドを実行します。
emcli db_software_maintenance -getSubscriptionsForContainer -target_name="RAC Pool" -target_type=pdbaas_pool -image_id=FE55AD7AB28974EFE04313B2F00AD4A0
SSA管理者が実行できるPDBaaSプール操作は次のとおりです。
ターゲット上のサブスクライブされたイメージからのOracleホームのデプロイ
emcli db_cloud_maintenance -performOperation -purpose="DEPLOY_DB_SOFTWARE/DEPLOY_RAC_SOFTWARE" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Deploy Patch OH for Pool" -target_type=oracle_home -description="Deploys the Patched Oracle home on target nodes" -input_file="data:/scratch/data_backup/deployoh.properties"
deployoh.properties
の内容は次のとおりです。
NEW_ORACLE_HOME_LIST=/u01/app/oracle/product/patchedHome2
WORK_DIR_LOC=/tmp
DISPATCHER_LOC=/tmp
次のパラメータは、デプロイ操作中に前提条件チェックをスキップする必要がある場合に追加できます。
SKIP_PREREQUISITE_CHECKS=true
SKIP_CVU_CHECK=true
この手順は、プールのCDBメンバーに関連付けられているOracleホームのリストを取得し、提供されているソフトウェア・イメージを使用してそれぞれの新規Oracleホームを作成し、Oracleホーム系統を作成します。
リスナーの移行
次のコマンドを実行して、リスナーを移行します。
emcli db_cloud_maintenance -performOperation -purpose="MIGRATE_LISTENER" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Migrate Listeners" -description="Migrate the listeners to the new Oracle Home, if any"
CDBの作成/デプロイ
CDBを作成またはデプロイするには、次のコマンドを実行します。
emcli db_cloud_maintenance -performOperation -purpose="DEPLOY_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Deploy CDB" -target_type=rac_database -description="Deploy a new CDB on the new OH for every CDB on the Pool using the prefix " -db_prefix="racdb"
この手順では、メンバーCDB構造のみのテンプレートを使用して、プールのすべてのCDBメンバーの新規CDBを作成します。作成される新しいCDBでは、名前にdb_prefixを使用します。
emcli db_cloud_maintenance -performOperation -purpose="DEPLOY_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Deploy CDB for a given target" -target_type=rac_database -description=" Deploy a new CDB on the new OH for the selected CDB target " -db_name="slspc" -target_list="sales.us.oracle.com"
この手順では、構造体のみのテンプレートを使用して、target_listオプションで指定されたプールの選択したCDBメンバーの新規CDBを作成します。作成される新しいCDBでは、データベース名にdb_prefixを使用します。
このコマンドを使用して作成されるCDBは「パッシブ」としてマークされ、プールのメンバー・リストの一部になります。CDB間に系統も作成されます。
CDBのアクティブ化
emcli db_cloud_maintenance -performOperation -purpose="ACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type=oracle_database/rac_database -description="Activates the newly created CDBs"
この手順では、前の手順で作成されたプールのすべての新規CDBを「アクティブ」としてマークし、既存のCDBを「非アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
emcli db_cloud_maintenance -performOperation -purpose="ACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type=oracle_database/rac_database -description="Activates the newly created CDBs" -target_list=”sales.us.oracle.com”
この手順では、target_list内の特定のCDBを「アクティブ」としてマークし、先行CDBを「非アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
SSA管理者は次の操作を実行できます。
プールへの既存のCDBのアタッチ
emcli db_cloud_maintenance -performOperation -purpose="ATTACH_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Attach an existing CDB" -target_type=oracle_database/rac_database -description="Attach an existing CDB as the successor" -destinationCDB="subjects.us.oracle.com" –target_list=”crm.us.oracle.com”
この手順では、宛先CDBをtarget_listで指定されたメンバーCDBの後続としてアタッチします。これにより、OHのデプロイ、リスナーの移行、CDBのデプロイ手順がバイパスされ、OracleホームおよびCDBに必要な系統が作成されます。宛先CDBは、プールに関連付けられたのと同じゾーンおよび同じクラスタ上にある必要があります。新規にアタッチされたCDBは、アタッチ後に「パッシブ」としてマークされます。
CDBのアクティブ化
emcli db_cloud_maintenance -performOperation -purpose="ACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type=oracle_database/rac_database -description="Activates the newly created CDBs"
この手順では、前の手順で作成されたプールのすべての新規CDBを「アクティブ」としてマークし、既存のCDBを「非アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
emcli db_cloud_maintenance -performOperation -purpose="ACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type=oracle_database/rac_database -description="Activates the newly created CDBs" -target_list=”sales.us.oracle.com”
この手順では、target_list内の指定されたCDBを「アクティブ」としてマークし、先行CDBを「非アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
この項では、CDBの更新操作を示します。
PDBの更新 - SSA管理者
emcli db_cloud_maintenance -performOperation -purpose="UPDATE_PDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Update PDB to new CDB" -target_type=oracle_pdb -description="Relocates the PDB from its inactive CDB to newly active CDB" -target_list="crm.us.oracle.com_SDB1"
SSA管理者は、PDBを先行から新規にアクティブ化したCDBに更新できます。
PDBの更新 - SSAユーザー - UI
新規CDBがアクティブ化され、更新可能になると、SSAユーザーのPDBホーム・ページに「データベースの更新」ボタンが表示されます。SSAユーザーは、追加入力なしでPDBの更新をスケジュールできます。
PDBの更新 - SSAユーザー - RESTful API
SSAは、RESTful APIリクエストを使用してPDBの更新リクエストを送信できます。
https://<host>:<port>/em/cloud/dbaas/pluggabledbplatforminstance/byrequest/<requestid> Content-Type: application/oracle.com.cloud.common.PluggableDbPlatformInstance+json Accept: application/oracle.com.cloud.common.PluggableDbPlatformInstance+json Body: { "operation" : "UPDATE_DATABASE", "update_schedule" : "" } Method: POST
SSA管理者は次のプール・クリーンアップ操作を実行できます。
CDBの非アクティブ化
新規にアクティブ化したCDBに問題がある場合は、新しいCDBで問題が解決されるか、CDBがプールから除去されるまで(PDBにサービスを提供していない場合)、SSA管理者はそれらを非アクティブ化し、古いCDBを新規リクエストのアクティブなメンバーCDBとして使用できます
emcli db_cloud_maintenance -performOperation -purpose="DEACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Deactivate the CDBs" -target_type=oracle_database/rac_database -description="Deactivates the newly created CDBs"
この手順では、前の手順で作成されたプールのすべての新規CDBおよびその先行CDBを「アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
emcli db_cloud_maintenance -performOperation -purpose="DEACTIVATE_CDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Deativate the CDBs" -target_type=oracle_database/rac_database -description="Deactivates the newly created CDBs" -target_list=”sales.us.oracle.com”
この手順では、target_list内の特定のCDBを「パッシブ」としてマークし、先行CDBを「アクティブ」としてマークします。以降のSSAリクエストは、新規にアクティブ化されたCDBに転送されます。
PDBのロールバック
PDB更新で、更新されたCDBに問題がある場合、管理者(管理者のみ)は、現在アクティブなCDBの先行CDBであったCDBにPDBをロールバックできます。
emcli db_cloud_maintenance -performOperation -purpose=" ROLLBACK_PDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type= oracle_pdb -description="Rolls back the PDB to its parent CDB"
この手順では、プールに関連付けられているPDBをそれぞれの親CDBにロールバックします。
emcli db_cloud_maintenance -performOperation -purpose=" ROLLBACK_PDB" -pool_name="PDB_POOL" -pool_type="pdbaas_pool" -name="Activate the CDBs" -target_type= oracle_pdb -description="Rolls back the PDB to its parent CDB" -target_list=”sales.us.oracle.com_FIN”
この手順では、target_list内の特定のPDBを親CDBにロールバックします。