独自の倉庫を持ち込む
Bring Your Own Warehouseを使用して、選択したデータベースのAWRスナップショットを最大25か月間保持します。
Bring Your Own Warehouseはオプションであり、最近のスナップショットに対するAWRスナップショット・コレクションは置換されません。
ウェアハウスを設定するには:
- 必要なリソースを準備します。
Opsインサイトの外部にAutonomous AI Lakehouseを作成し、セキュリティ要件に従ってネットワーク・アクセスを構成します。Autonomous AI Lakehouseがプライベート・エンドポイント接続用に構成されている場合は、ウェアハウスに使用されるOpsインサイト・プライベート・エンドポイントで「DNSプロキシの有効化」を選択します。パブリックにアクセスできるAutonomous AI Lakehouseは、プライベート・エンドポイントを必要としません。詳細は、プライベート・エンドポイントの作成を参照してください。
AWRスナップショットを一時的にステージングするためのオブジェクト・ストレージ・バケットおよびコンパートメントを選択します。バケットがサービス・ゲートウェイを介して到達可能であることを確認し、使用する接頭辞を決定します。
- ウェアハウスを登録します。
Opsインサイトで、独自の倉庫の設定を開始します。Autonomous AI Lakehouseとそのコンパートメントを選択し、オブジェクト・ストレージのバケットとコンパートメントを選択して、接頭辞を入力します。
倉庫はレイクハウス・コンパートメントに作成されます。設定が未完了または中断の場合は、倉庫詳細ページから続行します。詳細は、倉庫へのアクセスおよび管理を参照してください。
- アクセス要件を構成します。
共有動的グループ
BYO_AWR_Warehouse_Groupを使用します。コンソール・ポリシーの自動化により、各ウェアハウスOCIDがグループの一致ルールに追加されます。BYO_AWR_Warehouse_Policiesの必要な文の詳細は、コンソールを使用したポリシーの作成を参照してください。 - ポリシーを検証して適用します。
BYO_AWR_Warehouse_Policiesの3つの文を確認します。これらの文は、選択したAutonomous AI Lakehouseへのウェアハウス・アクセス、選択したオブジェクト・ストレージ・バケットへのウェアハウス・アクセス、およびそのバケットへのレイクハウス・アクセスを提供します。BYO_AWR_Warehouse_Groupまたは必要なポリシーがない場合は、コンソールで「ポリシーの追加」をクリックします。コンソールでは、必要に応じて共有グループが作成され、ウェアハウスOCIDがその一致ルールに追加されます。 - Lakehouse設定スクリプトを実行します。
選択したAutonomous AI Lakehouseでコンソール生成の完全な設定スクリプトを実行します。このスクリプトを実行するには、管理者権限が必要です。このスクリプトにより、OCI IAM外部認証が有効になり、データベース・ユーザーが準備され、AWRおよびADDMアクセス権が付与されます。
l_iam_group_nameの<WAREHOUSE_OCID>をウェアハウスOCIDに置き換えます。スクリプトは、この値の前にIAM_PRINCIPAL_OCID=を付け、グローバル認証を使用するユーザーを作成します。デフォルトのデータベース・ユーザー名はopsi_awr_userです。DECLARE l_count INTEGER := 0; l_username_raw VARCHAR2(100) := 'opsi_awr_user'; l_username VARCHAR2(128); l_iam_group_name VARCHAR2(128) := '<WAREHOUSE_OCID>'; l_stop_at_first_error BOOLEAN := TRUE; l_tablespace_name VARCHAR2(128); PROCEDURE run_sql(p_sql IN VARCHAR2, p_ignore_error IN BOOLEAN := FALSE) IS BEGIN EXECUTE IMMEDIATE p_sql; DBMS_OUTPUT.PUT_LINE('SUCCESS: ' || p_sql); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('FAIL: ' || p_sql || CHR(10) || SQLERRM); IF NOT p_ignore_error AND l_stop_at_first_error THEN RAISE; END IF; END run_sql; BEGIN l_username := DBMS_ASSERT.SIMPLE_SQL_NAME(l_username_raw); SELECT COUNT(1) INTO l_count FROM all_users WHERE username = UPPER(l_username); DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( type => 'OCI_IAM', force => TRUE ); l_iam_group_name := 'IAM_PRINCIPAL_OCID=' || l_iam_group_name; IF l_count = 0 THEN EXECUTE IMMEDIATE 'create user ' || l_username || ' IDENTIFIED GLOBALLY AS ' || '''' || l_iam_group_name || ''''; END IF; run_sql('GRANT CONNECT TO ' || l_username ); run_sql('GRANT CREATE SESSION, ALTER SESSION TO ' || l_username ); run_sql('GRANT CREATE TABLE TO ' || l_username ); run_sql('GRANT CREATE VIEW TO ' || l_username ); run_sql('GRANT CREATE PROCEDURE TO ' || l_username ); run_sql('GRANT CREATE SEQUENCE TO ' || l_username ); run_sql('GRANT CREATE TYPE TO ' || l_username ); run_sql('GRANT CREATE JOB TO '|| l_username); run_sql('GRANT SELECT ANY DICTIONARY TO ' || l_username ); run_sql('GRANT SELECT_CATALOG_ROLE TO ' || l_username ); run_sql('GRANT SELECT ON SYS.AWR_PDB_SNAPSHOT TO ' || l_username ); run_sql('GRANT SELECT ON SYS.DBA_ADDM_TASKS TO ' || l_username ); run_sql('GRANT EXECUTE ON DBMS_CLOUD TO ' || l_username ); run_sql('GRANT EXECUTE ON DBMS_CLOUD_ADMIN TO ' || l_username ); run_sql('GRANT EXECUTE ON DBMS_WORKLOAD_REPOSITORY TO ' || l_username ); run_sql('GRANT READ,WRITE ON DIRECTORY DATA_PUMP_DIR TO ' || l_username ); run_sql('GRANT EXECUTE ON DBMS_ADDM TO ' || l_username ); run_sql('GRANT ADVISOR TO ' || l_username ); run_sql('GRANT EXECUTE ON dbms_advisor TO ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_LOCK to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_UTILITY to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_ASSERT to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_OUTPUT to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_SCHEDULER to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_STATS to ' || l_username ); run_sql('GRANT EXECUTE ON SYS.DBMS_APPLICATION_INFO to ' || l_username ); run_sql('GRANT EXECUTE ON utl_file TO ' || l_username ); -- Additional grants from Awr Explorer APIs run_sql('GRANT SELECT ON V$DATABASE to '|| l_username); -- grants needed for dbaas_api_dbperf to work. run_sql('GRANT EXECUTE ON DBMS_SQL TO ' || l_username); run_sql('grant select on v$parameter to ' || l_username); run_sql('grant select on v$instance to ' || l_username); run_sql('grant select on v$sqlcommand to ' || l_username); run_sql('grant select on awr_pdb_parameter to ' || l_username); run_sql('grant select on awr_pdb_snapshot to ' || l_username); run_sql('grant select on awr_pdb_service_name to ' || l_username); run_sql('grant select on awr_pdb_database_instance to ' || l_username); run_sql('grant select on awr_pdb_active_sess_history to ' || l_username); run_sql('grant select on awr_pdb_rsrc_consumer_group to ' || l_username); run_sql('grant select on awr_pdb_osstat to ' || l_username); DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(); DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => l_username); DBMS_OUTPUT.PUT_LINE('DBMS_CLOUD_ADMIN.ENABLE_FEATURE for AUTO_DST_UPGRADE'); DBMS_CLOUD_ADMIN.ENABLE_FEATURE(feature_name => 'AUTO_DST_UPGRADE'); select default_tablespace into l_tablespace_name from dba_users where username = upper(l_username); run_sql('ALTER USER ' || l_username || ' QUOTA UNLIMITED ON ' || l_tablespace_name); DBMS_OUTPUT.put_line ('User '|| l_username ||' created successfully'); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line (SQLERRM); RAISE; END; - Object Storageの設定を完了します。
選択したバケット、コンパートメント、接頭辞およびアクセス・ポリシーを確認してから、設定を完了します。Autonomous AI Lakehouseスケジューラは、ステージングされたスナップショットをバケットからインポートします。
要件に合せてオブジェクト・ストレージのライフサイクル・ルールおよびウェアハウス保持を構成します。
- データベースを関連付けます。
ウェアハウスに関連付ける適格なデータベース・インサイトを選択します。これにより、インポート用にステージングされるデータベース・スナップショットが決まります。選択したデータベースについて、最大25か月間の保存を構成します。
Opsインサイト・データ・ストアの最近のスナップショットについて、AWRスナップショット収集を個別に有効にします。