-
タグ
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR
長年にわたり、オンプレミス環境でのOracle Databaseの監視には、Oracle Enterprise ManagerやZabbixなどのサードパーティーツールが使用されてきました。Oracle Cloud Infrastructure(以下、OCI)の登場により、クラウド上でOracle Databaseを使用する機会が増えましたが、データベースの監視や管理にはこれらの使い慣れたツールをそのまま使用しているシステムも多いのではないかと思います。
一方で、クラウドを利用する際には、データベースの監視にもクラウドのサービスを利用したいと考えている方もいるのではないでしょうか。OCIはそんなニーズに応えるべく、OCI Database Management(以下、Database Management)サービスを提供しています。
本記事ではOCIのデータベース監視サービスであるDatabase Managementの特徴、機能、使用方法について解説します。クラウド時代の新たなデータベース管理のかたちを、一緒に探求してみませんか?
なお、本投稿は【設定編】、【活用編】と題した前後編でお届けします。今回の設定編ではDatabase Managementサービスの概要と設定方法を紹介します。
Database Managementとは
Database Managementは、クラウドおよびオンプレミス上のデータベース監視および管理、パフォーマンス管理、チューニングを行うサービスです。クラウドサービスとして提供され、運用管理に必要な作業をコンソール上から行えるため、監視基盤の維持業務に煩わされることなく監視やチューニングなどの本質的な業務に専念できます。
機能概要
Database Managementで具体的にどのようなことができるのかを紹介します。
2つの管理オプション
Database Managementには「基本管理」と「完全管理」の2つのオプションがあり、それぞれ使用できる機能や価格に違いがあります。各オプションで使用可能な機能概要は以下の通りです。
機能 | 機能 | 基本管理 | 完全管理 |
---|---|---|---|
フリート・サマリー (専用コンソール) |
- | 専用コンソールを使用可能 | |
モニタリングサービス における追加のメトリック |
一部のメトリックを使用可能 | すべての追加メトリックを使用可能 | |
パフォーマンス・ハブ | ASH分析、SQLモニタリング、AWRレポート | ADDM、ブロックしているセッションなどの拡張機能を含む全機能 | |
チューニング機能 | - | SQLチューニング・アドバイザ、オプティマイザ統計アドバイザ | |
DB管理機能 | - | アラート・ログの表示、ユーザの表示、表領域、DBパラメータの監視などの管理機能 | |
ダッシュボード | 一部のダッシュボード機能を使用可能 | すべての機能を使用可能 | |
ジョブ機能 | - | 管理対象のDBに対しSQLジョブの作成と実行が可能 |
また、各オプションで管理可能なデータベース種別は以下のようになっています。
データベース | 基本管理 | 完全管理 |
---|---|---|
BaseDB | ○ (CDBのみ) |
○ |
ExaDB-D | ○ (CDBのみ) |
○ |
Autonomous DB | ○ | ○ |
外部データベース (オンプレミス、 他社クラウドなど) |
× | ○ |
なお、使用できる機能はデータベース種別やエディションによって異なりますので、詳細については公式ドキュメント※1を参照ください。また、本記事ではOracle Databaseにフォーカスしていますが、Database ManagementではMySQL HeatWaveも管理対象にできます。こちらについても詳しくは公式ドキュメントをご確認ください。
※1 データベース管理|Oracle Cloud Infrastructureドキュメント
価格
Database Managementはクラウド・データベースを使用する場合、「基本管理」であれば無料で使用できます。その他の場合の使用料金は以下の通りです。
対象データベース | 単価 | 単位 |
---|---|---|
クラウド・データベース | ¥7.00 | OCPU/時間 |
外部データベース | ¥7.00 | CPU/時間 |
外部データベース(BYOL) | ¥3.50 | CPU/時間 |
Autonomous Database(ECPU) | ¥3.50 | ECPU/時間 |
上記価格は2024年2月現在の情報となります。最新の情報は公式ページ※2やCloud Cost Estimator※3をご確認ください。
※2 Database Management Cloud | オラクル | Oracle 日本
※3 Cloud Cost Estimator | Oracle 日本
Database Managementの有効化
実際にOCI上のBaseDBを対象にDatabase Managementを有効化します。
前提となるリソース
Database Managementを有効化するには、以下のリソースをあらかじめ作成する必要があります。
- データベースへの接続情報を保存するシークレットを格納するためのVault
- サービスがデータベースに接続する際に使用するデータベースユーザのパスワードを格納するシークレット
- サービスがデータベースに接続するためのプライベート・エンドポイント
なお、本検証ではすべてのリソースをDB_MGMT_TESTコンパートメントに作成しています。
Vaultおよびシークレット
まずシークレットを格納するためのVaultとマスター暗号化キーを作成します。
Vaultの項目 | 設定値 |
---|---|
名前 | myvault |
Vaultの項目 | 設定値 |
---|---|
名前 | myvault |
マスター暗号キーの項目 | 設定値 |
---|---|
保護モード | HSM |
名前 | mykey |
アルゴリズム | AES |
キーの長さ | 256ビット |
マスター暗号キー の項目 |
設定値 |
---|---|
保護モード | HSM |
名前 | mykey |
アルゴリズム | AES |
キーの長さ | 256ビット |
Database Managementでは、指定したデータベースユーザを使用して情報を収集します。データベースへの接続に使用するパスワードはシークレットに保存する必要があるため、シークレットを作成します。
接続用のユーザは自分で一から作成できますが、本検証ではデータベース監視のための最低限の権限がデフォルトで付与されているDBSNMPユーザを使用することとしました。
シークレットの項目 | 設定値 |
---|---|
名前 | mysecret |
暗号化キー | mykey |
シークレット・タイプ・テンプレート | プレーン・テキスト |
シークレット・コンテンツ | <DBSNMPユーザのパスワード> |
シークレットの項目 | 設定値 |
---|---|
名前 | mysecret |
暗号化キー | mykey |
シークレット・タイプ・テンプレート | プレーン・テキスト |
シークレット・コンテンツ | <DBSNMPユーザのパスワード> |
管理対象データベース
項目 | 設定値 |
---|---|
ストレージ構成 | Oracle Grid Infrastructure |
ノード数 | 1 |
ソフトウェア・エディション | Enterprise Edition High Performance |
データベース名 | ORCL |
データベース・バージョン | 19.21 |
PDB名 | PDB1、PDB2 |
プライベート・エンドポイント
Database ManagementとBaseDBの間で通信を行うには、BaseDBが所属するVCNにプライベート・エンドポイントを作成する必要があります。プライベート・エンドポイントは以下の手順で作成します。
OCIコンソールのナビゲーションメニューから「監視および管理」>「データベース管理」>「管理」を選択し、左側メニューの「プライベート・エンドポイント」をクリックします。「プライベート・エンドポイントの作成」をクリックし、必要事項を入力してプライベート・エンドポイントを作成します。
項目 | 設定値 |
---|---|
名前 | my_private_endpoint |
VCN | VCN1(BaseDBと同じVCNを選択) |
サブネット | SNT1 |
項目 | 設定値 |
---|---|
名前 | my_private_endpoint |
VCN | VCN1(BaseDBと同じVCNを選択) |
サブネット | SNT1 |
ポイントはBaseDBと同一VCNに作成することと、セキュリティ・リストまたはNSGに対してプライベート・エンドポイントからデータベース・リスナーへの接続(デフォルトではTCP、1521ポート)を許可するイングレス・ルールを追加することです。
以上が、Database Managementを使用するにあたり作成しておかなければならないリソースです。続いて、実際にDatabase Managementを有効化していきます。
Database Management有効化
DBSNMPユーザのアンロック
今回の検証で使用するDBSNMPユーザは、BaseDB作成時点ではロックされています。そのため、SQL*Plusなどを使用してデータベースに接続し、DBSNMPユーザをアンロックします。なお、DBSNMPユーザは共通ユーザのため、アンロックはCDB(ルートコンテナ)に接続して行います。
SQL> select username, account_status from dba_users where username ='DBSNMP'; USERNAME ACCOUNT_STATUS -------------------- -------------------------------- DBSNMP LOCKED SQL> alter user DBSNMP identified by "<DBSNMPパスワード>" account unlock; User altered. SQL> select username, account_status from dba_users where username ='DBSNMP'; USERNAME ACCOUNT_STATUS -------------------- -------------------------------- DBSNMP OPEN
IAMポリシーの付与
DB Managementを有効化し、データベースを管理するために必要なIAMポリシーを確認します。
詳細は公式ドキュメントに記載があるので、それを参考に必要な権限の付与もできますが、コンソールから必要なポリシーを自動で生成できます。自動生成する場合はOCIコンソールのナビゲーションメニューから「監視および管理」>「データベース管理」>「概要」を選択し、「ポリシーの追加」をクリックします。
ポリシーの追加画面が表示されるので、以下の項目を入力して「生成」をクリックすると、「推奨ポリシー」として生成されるポリシーをプレビューできます。その後「ポリシーの生成」をクリックすると、「DBMgmt_User_Policy」という名前のポリシーが指定したコンパートメントに作成されます。
ポリシー・コンパートメント | 自動生成されるポリシーを追加するコンパートメントを選択 |
---|---|
ユーザー・グループ | ポリシーを設定するグループを指定 |
アクセス | 目的に合わせて「管理」または「読取り」を選択 |
データベース・コンパートメント | 管理対象のデータベースが所属するコンパートメントを指定 |
「アクセス」の項目で「管理」を選択した場合、以下のステートメントがポリシーに含まれます。
本検証では、上記自動生成ポリシーが設定されたDBMgmt-Groupグループに所属するテストユーザを使用することとします。
また、DB Managementサービスに対して、Vault内のシークレットの使用を許可するポリシーを別途作成する必要があります。
Allow service dpd to read secret-family in compartment DB_MGMT_TEST
Database Managementの有効化
OCIコンソールのナビゲーションメニューから、「監視および管理」>「データベース管理」>「管理」を選択し、「データベース管理の有効化」をクリックします。
初めに、「データベースの選択」パネルで「データベース・タイプ」を選択します。今回はBaseDBを管理対象とするので、「ベア・メタル、VM」を選択します。
その後、対象のDBシステムを選択すると以降の項目は自動入力されるためそのままで問題ありませんが、必要な場合は値を修正します。
なお、PDBも管理対象にできますが、そのためにはCDBにおいて、完全管理オプションでDB Managementを有効化する必要があるので、ここでは「プラガブル・データベース」のチェックボックスは空欄のままにしておきます。
続いてデータベースへ接続するための資格証明、エンドポイント情報、管理オプションをそれぞれ指定します。データベース接続ユーザとしてDBSNMPを使用し、その他のリソースにはあらかじめ作成しておいたものを指定します。
管理オプションは「完全管理」とします。最後に「データベース管理の有効化」をクリックすると、Database Managementを有効化できます。
しばらくして有効化が完了すると、「管理対象データベース」にデータベース表示名がリストされます。
有効化が完了したにもかかわらず「管理対象データベース」にデータベースがリストされない場合は、画面左下の「デプロイメント・タイプ」で「VM」が選択されているかを確認してみてください。
さらにPDBに対しても、先ほどの手順でスキップした「プラガブル・データベース」にチェックを入れると、Database Managementを有効化できます。
ネットワークエラーで有効化に失敗した場合は、プライベート・エンドポイントからデータベース・リスナーへの接続が許可されているかどうかを確認してみてください。
以上で、OCI上のBaseDBに対してDatabase Managementを有効化できました。
フリート・サマリーの確認
最後に、専用のコンソールであるフリート・サマリーを確認します。フリート・サマリーページは、OCIコンソールのナビゲーションメニューから「監視および管理」>「データベース管理」>「Oracle Database」を選択すると表示できます。
フリート・サマリーでは、各データベースのリソース使用状況やオープンしているメトリック・アラーム、DB時間、CPUなどのパフォーマンス情報を確認できます。
さいごに
今回の記事では、OCI Database Managementサービスの概要と設定方法を紹介しました。実際に使用してみることでその真価をより深く理解できると思いますので、ぜひ試してみてください。
後編となる【活用編】では、Database Managementが提供する様々な機能を紹介します。こちらもぜひお楽しみに。
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- もっと見る +
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR