Oracle 外部データベースの準備
この章では、Prime Network で使用する外部 Oracle データベースの設定方法について説明します。Oracle ソフトウェア マニュアルの最新版が手元にあることを確認してください( Oracle Corporation Web サイトを参照してください)。
外部データベースの使用:一般的ガイドライン
– 外部 Oracle サーバは、Prime Network ゲートウェイまたはその他のリモート ワークステーションにインストールすることができます。
– 事前にすべての必要なデータ ファイルをフル サイズで作成することにより、データベース ストレージを事前割り当てします。 pnuser と pnuser _admin を除いて、Prime Network テーブルスペース データ ファイルは、自動拡張が 256 MB とサイズ制限なしに設定された 1 GB のサイズで生成されます(データ ファイルは 32 GB まで拡張することができます)。
– Oracle サーバが Prime Network ゲートウェイにインストールされている場合は、Oracle サービスをポート 2100 にインストールすることができません。Oracle リスナーがポート 2100 にインストールされている場合は、それを無効にするか、ポート番号を変更する必要があります( 表 4-2 を参照してください)。デフォルトで、このポートは Oracle XML DB サービスによって使用されます。
– マウント ディレクトリは、アクティブ ノードとスタンバイ ノードの両方で使用できる必要があります。マウント フォルダ ディレクトリがスタンバイ ノードに存在しない場合は、インストールが失敗します。
– 導入に関する情報や推奨事項については、シスコの代理店にお問い合わせください。
– Prime Network は、外部データベース用の Oracle プロセスの開始と停止を管理しません。データベース管理者が、電源障害発生時に Oracle プロセスが自動的に再起動するように設定する必要があります。
– システムがゲートウェイ高可用性用に設定されている場合は、CLI コマンドを使用して Prime Network と Oracle を開始および停止します。通常のアプリケーション コマンド(クラスタ ソフトウェアを認識しない)を使用してアプリケーションを停止すると、フェールオーバーが発生する可能性があります。
– Oracle を再起動する場合は、ゲートウェイとユニットの両方で AVM 25 も再起動する必要があります。
– Oracle ユーザは、 oracle と命名し、 dba という名前のグループの一員にする必要があります。
– Prime Network アプリケーションに関連したデータベースのユーザ名とパスワードは、インストール中に自動的に作成されます。
- クロック:Prime Network では、ゲートウェイとユニットのクロックを同期させる必要があります。Oracle が別のワークステーションで動作している場合は、そのリモート データベース ワークステーションのクロックをゲートウェイとユニットのクロックと同期させる必要があります。
外部 Oracle データベースの作成
データベース インスタンスのインストールは、Oracle のインストールの一部として実行することも、Oracle Database Configuration Assistant(DBCA)ユーティリティを使用して個別に実行することもできます。このセクションでは、 DBCA ユーティリティ(ORACLEHOME/bin 内)を使用して Oracle データベース インスタンスを作成する方法について説明します。
http://metalink.oracle.com から Oracle パッチをダウンロードします。
(注) Oracle パッチをインストールしたら、すべての OS ユーザがワークステーションで Oracle を使用できるように、新しくインストールしたファイルの権限を変更する必要があります。これは、スクリプト ORACLEHOME\install\changePerm.sh を実行することによって行うことができます。
Prime Network データベースのサイズは、使用パターンと、展開内の予想負荷によって決定されます。データベース負荷プロファイルの決定と、データベース メモリとストレージ サイズの要件の計算の詳細については、シスコのアカウント担当者にお問い合わせください。
Prime Network は、次の使用プロファイルのサイジング見積もりを提供します。これは、展開でサポート可能な 1 秒あたりの実行可能イベント数の最大予想レートによって異なります。
- 250 以下:データベース操作のサポート レートが最大の大規模実稼働環境を表します。これには、1 秒あたり最大 250 件の実行可能イベント、最大量のサービス、および最高レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 200 以下:データベース操作のサポート レートが最大の大規模実稼働環境を表します。これには、1 秒あたり最大 200 件の実行可能イベント、最大量のサービス、および最高レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 100 以下:データベース操作のサポート レートが最大の大規模実稼働環境を表します。これには、1 秒あたり最大 100 件の実行可能イベント、最大量のサービス、および最高レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 50 以下:データベース操作のレートが中程度の中規模から大規模の実稼働環境を表します。これには、1 秒あたり最大 50 件の実行可能イベント、中程度の量のサービス、および中間レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 20 以下:データベース操作のレートが低い中規模から小規模の実稼働環境を表します。これには、1 秒あたり最大 20 件の実行可能イベント、少量のサービス、および低レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 5 以下:データベース操作のレートが低い小規模実稼働環境を表します。これには、1 秒あたり最大 5 件の実行可能イベント、少量のサービス、および低レートの設定アーカイブおよびプロビジョニング操作が含まれます。
- 1 以下:ゲートウェイ、ユニット、およびデータベースとして機能する 1 台のマシン(または、そのマシンともう 1 台の追加ユニット)で構成された非常に小規模なテストまたは概念実証環境を表します。これには、50 台以下の VNE と低レートのイベントが含まれます。
データベース インスタンスをインストールするときに、Oracle 初期化パラメータとして 表 4-1 内の値を使用します。値はバイト単位です。
表 4-1 データベース初期化パラメータ
|
|
|
|
|
1 秒あたり最大 200 ~ 250 件の実行可能イベント
|
sga_max_size |
4412407808 |
6509559808 |
6509559808 |
10301210624 |
10301210624 |
shared_pool_size |
1258291200 |
2147483648 |
2147483648 |
2147483648 |
2147483648 |
large_pool_size |
134217728 |
134217728 |
134217728 |
134217728 |
134217728 |
java_pool_size |
218103808 |
335544320 |
335544320 |
335544320 |
335544320 |
pga_aggregate_target |
1048576000 |
1887436800 |
1887436800 |
1887436800 |
1887436800 |
sga_target |
0 |
0 |
0 |
0 |
0 |
memory_target |
0 |
0 |
0 |
0 |
0 |
memory_max_target |
0 |
0 |
0 |
0 |
0 |
db_cache_size |
1048576000 |
2684354560 |
2684354560 |
2684354560 |
2684354560 |
db_keep_cache_size |
318767104 |
872415232 |
872415232 |
3690987520 |
3690987520 |
db_recycle_cache_size |
167772160 |
167772160 |
167772160 |
838860800 |
838860800 |
db_file_multiblock_read_count |
16 |
16 |
16 |
16 |
16 |
open_cursors |
2000 |
2000 |
2000 |
2000 |
2000 |
optimizer_index_cost_adj |
10 |
10 |
10 |
10 |
10 |
optimizer_index_caching |
50 |
50 |
50 |
50 |
50 |
パフォーマンスを向上させるために、必ずデータベース内のすべてのテーブルの統計情報を生成してください。Prime Network は、統計情報が生成されなかった場合または現在の統計情報が 2 週間以上古い場合にアラートを発行します。
(注) pnuser_admin ユーザは、他の Prime Network データベース スキーマでメンテナンス タスク(統計情報の収集など)を実行可能なデータベース管理者権限を持っているユーザです。pnuser_admin ユーザが作成されると、24 時間ごとに cron ジョブが起動して pnuser(障害データベース)関する統計情報を収集します。統計情報を手動で収集する必要はなくなりました。
最初の 24 時間で高スケールが予想される場合は、初日の混雑開始の 1 時間後および 5 時間後の 2 回、統計情報の収集を手動で実施しなければならない場合があります。統計情報の収集を手動で実施するには、 pnuser として、次のコマンドを入力します。
cd $NETWORKHOME/Main/scripts;./call_update_ana_stats.pl >& /dev/null
表 4-2 に、DBCA を使用した Oracle 12c データベースの作成に関する手順を示します。Oracle 12c データベースを使用している場合は、『Cisco Prime Network 4.3.2 インストレーション ガイド』を参照してください。
表 4-2 DBCA を使用した Oracle データベースの作成
|
|
|
手順 1 |
[Operations] ウィンドウで、実行する操作を選択します。 |
[Create a Database] を選択します。 |
手順 2 |
[Creation Mode] ウィンドウで、作成モードを選択します。 |
[Advanced Mode] を選択します。 |
手順 3 |
[Database Template] ウィンドウで、テンプレートを選択します。 |
[Custom Database] を選択します。 |
手順 4 |
[Database Identification] ウィンドウで、[Global Database Name and SID] フィールドに値を入力します。 |
「 mcdb 」と入力します。[Create As Container Database] チェックボックスをオンにせず、関連するどのデータも入力しないでください。 |
手順 5 |
[Management Options] ウィンドウで、必要に応じて、Enterprise Manager 内のフィールドを設定します。 |
Enterprise Manager と Automatic Maintenance タスク内のどのフィールドも設定せず、次の手順に進みます。 |
手順 6 |
Oracle 管理アカウント用のパスワードを入力します。 |
SYS ユーザと SYSTEM ユーザ用のパスワードを入力します。 |
手順 7 |
[Listener Selection] ウィンドウで、関連するリスナー チェックボックスをオンにします。 |
名前とポートを入力します。 |
手順 8 |
[Database File Locations] ウィンドウで、データベースのストレージ タイプと場所を指定します。データベース バックアップ ポリシーを設定する場合は、回復設定を構成します。 |
1. ファイル システムとして [Storage Type] を選択します。 2. [Storage Location] では、すべてのデータベース ファイルに共通の場所を参照します(例:/export/home/oracle/oradata/mcdb)。 3. [Recovery Related Files] で、ストレージ タイプとして [File System] を選択します。 4. [Enable Archiving ] チェックボックスをオンにします。 5. [Edit Archive Mode Parameters] をクリックして、アーカイブ ログの場所を設定します。 |
手順 9 |
[Database Options] ウィンドウで、デフォルト オプションを使用します。 |
[Oracle Label Security] チェックボックスと [Oracle Database Vault] チェックボックスがオンになっていないことを確認します。他のチェックボックスはオンにする必要があります。 |
手順 10 |
[Initialization Parameters] ウィンドウで、データベースのメモリ設定を構成します。 |
1. [Custom] を選択します。 2. [Memory Management] フィールドでは、ドロップ ダウンから [Manual Shared Memory Management] を選択します。 3. その他の初期化パラメータを設定します。プロファイルに基づくさまざまなデータベース初期化パラメータの値については、 表 4-1 を参照してください。 4. [Sizing] タブで、プロセスを 1000 に変更します。 5. [Character Sets] タブで、必要な文字セットを選択します(AL32UTF8 が推奨されています)。 6. [Connection Mode] タブで、[Dedicated Server Mode] を選択します。 |
手順 11 |
[Creation Options] ウィンドウで、データベース作成オプションを選択します。 |
[Create Database] を選択し、[Customize Storage Locations] をクリックしてやり直しログ設定を構成します。 データベース サイズの見積もりに関する詳細については、シスコのアカウント担当者にお問い合わせください。 高イベント レートをサポートするには、やり直しログ ファイルを未加工デバイス上または directio オプションでマウントした専用のディスク パーティション上の 6 個のオンライン 2 GB ファイルにする必要があります。やり直しログ ファイルは、Oracle データ ファイルとは別の物理ディスクに配置する必要があります。 |
外部データベースの設定
このセクションには、Oracle 初期化パラメータ、ポート、データベース サイズなどのデータベースの設定に関する詳細情報が含まれています。
cursor_sharing システム パラメータの設定
cursor_sharing システム パラメータは、FORCE に設定する必要があります。cursor_sharing システム パラメータを設定するには:
手順 1 SYS ユーザとして、次のコマンドを入力します。
ALTER SYSTEM SET cursor_sharing='FORCE' SCOPE=BOTH;
手順 2 次の SQL*PLUS コマンドを入力して、パラメータが正しく設定されていることを確認します。
SQL> show parameter cursor_sharing
コマンドの出力は、次のようになります。
cursor_sharing string FORCE
ストレージのパーティション分割動作の保持
ストレージのパーティション分割動作が保持されることを保証するには、64 KB の拡張サイズでパーティションが作成されることを確認します。64 KB の拡張サイズでパーティションを作成するには、非表示のパラメータ(_partition_large_extents)を false に設定します。
SYS ユーザとして、次のコマンドを入力します。
ALTER SYSTEM SET "_partition_large_extents" =FALSE SCOPE=BOTH;
(注) デフォルトの拡張サイズ(8 MB)でパーティションが作成された場合は、ストレージのパーティション分割動作が保持されません。
job_queue_processes システム パラメータの設定
job_queue_processes パラメータは、ジョブの実行用に作成可能なプロセスの最大数を指定します。このフィールドは 1000 に設定する必要があります。job_queue_processes パラメータを設定するには:
手順 1 SYS ユーザとして、次のコマンドを入力します。
alter system set job_queue_processes=1000 scope=both;
手順 2 次の SQL*PLUS コマンドを入力して、パラメータが正しく設定されていることを確認します。
SQL> show parameter job_queue_processes
コマンドの出力は、次のようになります。
job_queue_processes integer 1000
audit_trail システム パラメータの設定
audit_trail システム パラメータを NONE に設定することにより、Oracle 監査を無効にします。audit_trail システム パラメータを設定するには:
手順 1 SYS ユーザとして、次のコマンドを入力します。
ALTER SYSTEM SET audit_trail=NONE SCOPE=spfile;
手順 2 SYS ユーザとして、次のコマンドを入力し、データベースを開始します。
手順 3 SYS ユーザとして、次の SQL*PLUS コマンドを入力し、パラメータが正しく設定されていることを確認します。
SQL> show parameter audit_trail
コマンドの出力は、次のようになります。
ごみ箱オプションの無効化
有効にした場合は、Oracle のごみ箱機能によって、破棄されたオブジェクトごとのバージョンが保持されます。これにより、Prime Network DB Segments テーブルにジャンク情報が蓄積される可能性があります。ごみ箱オプションを無効にするには:
手順 1 SYS ユーザとして、次のコマンドを入力します。
ALTER SYSTEM SET recyclebin = OFF DEFERRED scope=both;
手順 2 次の SQL*PLUS コマンドを入力して、パラメータが無効になっていることを確認します。
SQL> show parameter recyclebin
コマンドの出力は、次のようになります。
recyclebin string OFF DEFERRED
手順 3 (オプション) pnuser として、次のコマンドを入力し、現在ごみ箱に保存されているオブジェクトを確認します。
手順 4 (オプション) pnuser として、次のコマンドを入力し、ごみ箱を空にします。
open_cursors パラメータの設定
オープン カーソルは、Oracle データベースと CiscoPrime Network 間でデータの読み書きを可能にします。open_cursors パラメータは、セッションごとに、同時に開くことが可能なカーソルの最大数を定義します。Cisco Prime Network で使用するために推奨されているオープン カーソルの最大数は 2000 です。セッション内のオープン カーソルの数が指定された数を超えた場合は、エラーが生成されます。
open_cursors パラメータを設定するには:
手順 1 open_cursors パラメータの値を確認するには、次のように入力します。
SQL> show parameter open_cursors
コマンドの出力は、次のようになります。
open_cursors integer 2000
手順 2 整数値が 2000 未満の場合は、次のように入力します。
SQL>
ALTER SYSTEM SET open_cursors = 2000 SCOPE=BOTH;
手順 3 値が変更されたことを確認するには、次のように入力します。
SQL>
show parameter open_cursors
(注) open_cursors 整数値がまだ 2000 未満の場合は、ローカル データベース管理者にお問い合わせください。
自動メンテナンス ジョブの無効化
高イベント レートを処理するために Prime Network を展開する場合は、Oracle の自動メンテナンス ジョブを無効にすることをお勧めします。自動メンテナンスは、Oracle のパフォーマンスに大きな影響を与えるため、イベント処理時間が長くなります。
注意
次のコマンドは、すべてのスケジューラ メンテナンス活動を無効にします。データベース統計情報を収集する別の手段を実装したら、次の手順を実行します。一部のコマンドは一部のバージョンの Oracle で失敗します。エラーはすべて無視することができます。
SYS ユーザとして Oracle データベースに接続し、次のコマンドを入力します。
execute DBMS_SCHEDULER.disable (name => 'GATHER_STATS_PROG',force => TRUE);
execute DBMS_SCHEDULER.disable (name => 'AUTO_SPACE_ADVISOR_PROG',force => TRUE);
execute dbms_scheduler.disable(name =>'GATHER_STATS_JOB',force => TRUE);
execute dbms_scheduler.disable(name =>'BSLN_MAINTAIN_STATS_JOB',force => TRUE);
execute DBMS_SCHEDULER.disable(name => 'SYS.MAINTENANCE_WINDOW_GROUP', force => TRUE);
execute DBMS_SCHEDULER.disable(name => 'SYS.ORA$AT_WGRP_SA', force => TRUE);
execute DBMS_SCHEDULER.disable(name => 'SYS.ORA$AT_WGRP_SQ', force => TRUE);
execute DBMS_SCHEDULER.disable(name => 'SYS.ORA$AT_WGRP_OS', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.MONDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.TUESDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.WEDNESDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.THURSDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.FRIDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.SATURDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.SUNDAY_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.WEEKNIGHT_WINDOW', force => TRUE);
EXECUTE DBMS_SCHEDULER.disable (name =>'SYS.WEEKEND_WINDOW', force => TRUE);
データベース ポートの変更
Oracle が Prime Network ゲートウェイにインストールされている場合は、Oracle サービスがポート 2100 にインストールされます。Oracle リスナーがポート 2100 にインストールされている場合は、それを無効にするか、ポート番号を変更する必要があります。デフォルトで、このポートは Oracle XML DB サービスによって使用されます。
(注) Oracle リスナーがデフォルトでポート 2100 にインストールされる場合は、FTP ポート番号を変更する必要があります。
必要に応じて、XML DB リスナーのポート番号を変更する場合に、この手順を使用します。この手順は、Oracle XML DB サービスがインストールされている場合にのみ適用されます。Oracle XML DB サービスを無効にした場合は、このセクションをスキップしてください。
手順 1 Oracle SQL にログインするには、次のように入力します。
手順 2 HTTP ポートを 8080 から 8083 に変更するには、次のように入力します。
sql> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(), '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()', 8083));
手順 3 FTP ポートを 2100 から 2111 に変更するには、次のように入力します。
sql> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(), '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()', 2111));
手順 4 更新をコミットするには、次のように入力します。
手順 5 設定を更新するには、次のように入力します。
sql> exec dbms_xdb.cfg_refresh
手順 6 SQL コマンド ラインを終了するには、次のように入力します。
データベース サイズとディスク構造の設定
保存されるデータのサイズは、主に、保存されるイベントの数によって決定されます。デフォルトで、Prime Network は、最大 14 日間のイベントをアーカイブするように設定されます。アーカイブ サイズ、サポートされるイベント レート、および平均イベント サイズによって、日単位の予想データベース成長が決定されます。長期間のイベント アーカイブは、データベースの大きな負担となり、追加のディスク スペースが必要になります。必要に応じて、管理 GUI を使用してデフォルトのアーカイブ期間を変更することができます(『 Cisco Prime Network 4.3.2 Administrator Guide 』を参照してください)。サイジングの計算に関する詳細については、シスコのアカウント担当者にお問い合わせください。
推奨されているディスク構造
サーバに含まれるディスク台数に基づく Oracle サーバの推奨ディスク構造を以下に示します。
- Oracle データ ファイル:最適な場所は外部ディスク アレイ(RAID 10 を推奨)です。
- オンラインやり直しログ ファイル:最適な場所は内部ディスク パーティションです。やり直しログ ファイルは、データ ファイルと同じディスクに配置しないでください。
- アーカイブ ファイル:データ ファイルと同じディスクに配置しないでください。
- バックアップ ファイル:データ ファイルと同じディスクに配置しないでください。
Prime Network の再起動時に自動的に開始する Oracle の設定
デフォルトで、Oracle アプリケーションは、Prime Network の再起動時に自動的に開始しません。これは、システム データベース管理者が制御環境でデータベースを手動で開始することがベスト プラクティスだからです。ただし、システムの再起動時に Oracle を開始する場合、このタスクを実現するための方法が複数あります。1 つの例を以下に示します。その他の実装については、 Oracle のマニュアル を参照してください。
Oracle UNIX ルート ユーザとして、/etc/rc2.d ディレクトリに次の内容の S99OracleDB という名前のファイルを作成します。
DBLOG=$INSTALL_DIR/log/dbop.log
if [ -f /var/opt/oracle/oratab ]; then
orahome=`grep -v "^#" /var/opt/oracle/oratab | grep. | sed -ne '1p' | awk -F: '{print $2}'`
echo "/var/opt/oracle/oratab file doesn't exist. Please check if Oracle is installed " >> $DBLOG
echo "dbora $1 aborted...." >> $DBLOG
TNS_ADMIN=$ORA_HOME/network/admin
if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
echo "Oracle startup cannot start"
if [ ! -d $INSTALL_DIR/log ]; then
chmod 777 $INSTALL_DIR/log
#start the Oracle databases
echo "Invoking dbstart at `date` " >> $DBLOG
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
echo "Invoking Listener start at `date`" >> $DBLOG
su - $ORA_OWNER -c "lsnrctl start"
echo "Listener started." >> $DBLOG
デフォルト プロファイル内のパスワードの期限切れの阻止
データベースを作成すると、デフォルト プロファイルに属しているユーザのパスワードが 180 日後に期限切れになります。Prime Network データベース ユーザがデフォルト プロファイルを受け取るため、ユーザのデータベース パスワードは 180 日後に期限切れになります。この発生を阻止するには、次の手順を実行します。
手順 1 sysdba として Oracle SQL にログインします。
手順 2 次のように入力します。
alter profile default limit PASSWORD_LIFE_TIME unlimited;
外部データベースのメンテナンス
インストール後のデータベースのメンテナンスには、以下のものがあります。
(注) Oracle データベースのバックアップ手順については、Oracle のマニュアルを参照してください。
アーカイブ ログ ファイル ディスク スペースのメンテナンス
データベースに対する Prime Network 更新が大量に発生すると、アーカイブ ログのサイズが急激に増加し、ディスク パーティション上のスペースが大量に消費されます。ディスク パーティション上のスペースを維持するために、Oracle データベース管理者は、定期的にアーカイブ ログ ファイルを削除する必要があります。
テーブルスペースへのデータ ファイルの追加
Prime Network とそのデータベースをインストールすると、1 秒あたりのイベント レートによっては、さらにデータ ファイルを追加しなければならない場合があります。既存のテーブルスペースにデータ ファイルを追加する方法の例を以下に示します。
alter tablespace tablespace-name add datafile 'new-data-file-full-path' size 32G autoextend off;
ここで、 tablespace-name は、 pnuser _TABLESPACE、dwe_TABLESPACE です。
サイズは、実際のニーズと可用性に応じて変更することができます。
(注) pnuser と pnuser_admin を除いて、Prime Network テーブルスペース データ ファイルは、自動拡張が 256 MB とサイズ制限なしに設定された 1 GB のサイズで生成されます(データ ファイルは 32 GB まで拡張することができます)。事前にすべての必要なデータ ファイルをフル サイズで作成することにより、データベース ストレージを事前割り当てすることをお勧めします。