Caché のインストールの準備
Caché のインストール前に、以下の各章を参照してください。
Caché インストール計画の考慮事項
以下に示す Caché インストール計画の考慮事項のうち、目的とするインストールに当てはまる項目を参照してください。
Atelier 開発環境のインストール
Atelier は、Caché に対応した Eclipse ベースの開発環境です。
Atelier は、Caché または Ensemble とは別に個別のダウンロードとして入手できます。お客様は、スタンドアロンのリッチ・クライアント・プラットフォーム (RCP) アプリケーションをインストールするか、既存の Eclipse インストールに追加できるプラグインをインストールするか選択できます。RCP アプリケーションのユーザは、Eclipse プラグインを追加できます。Atelier では、Eclipse の自動更新メカニズムを使用して、最新の変更を入手できます。 Atelier のダウンロードおよび Atelier のドキュメントの詳細は、Atelier のホーム・ページ http://www.intersystems.com/atelierOpens in a new tab を参照してください。
Caché のインストール・ディレクトリ
この Cachéドキュメントでは、Caché インスタンスがインストールされるディレクトリを install-dir と呼びます。以下の表に示すように、このディレクトリは、プラットフォーム、インストール・タイプ、およびユーザの選択によって異なります。
プラットフォーム |
インストール・タイプ |
ディレクトリ |
---|---|---|
Windows |
手動 |
インストール・ユーザが他に指定しない限り、C:\InterSystems\Cache (複数インスタンスが存在する場合は、CacheN)。 |
自動 | INSTALLDIR プロパティで他に指定されない限り、C:\InterSystems\Cache (複数インスタンスが存在する場合は、CacheN)。 | |
UNIX®、Linux |
手動 |
インストール・ユーザが指定する必要があります。 |
自動 |
ISC_PACKAGE_INSTALLDIR パラメータが必要です。 |
|
Linux |
RPM |
単一インスタンスのインストール。常に /usr/cachesys。 |
インストレーション後に Caché インスタンスのインストール・ディレクトリを変更することはできません。
インストール・ディレクトリの制約
以下のような文字を含むディレクトリには、Caché をインストールできません。
-
UNC (ローカルでない) パスです。
-
ドライブのルート・レベルにあるもの (C:\ など)
-
\Program Files ディレクトリ下の任意の場所に該当するもの
-
パス名にキャレット (^) が含まれているもの
-
US ASCII 文字セットに含まれない文字が使用されているもの
Caché の文字幅
8 ビット・サポートまたは Unicode サポートのどちらかのインストールを選択する必要があります。
-
8 ビット — システムは、8 ビット形式で文字を処理します。
-
Unicode — システムは、Unicode (16 ビット) 形式で文字を処理します。ユーザのアプリケーションが、日本語など Unicode 形式でデータを保存する言語を使用している場合は、こちらを選択します。
インターシステムズは、日本語の OpenVMS には、Unicode 版を使用することを推奨します。Caché の 8 ビット・バージョンを使用する場合、ユーザのデータを、異なる文字セットを基にした 8 ビット・ロケールに移植することはできません。
Caché では、ユーザが 8 ビットから Unicode のインスタンスにアップグレードできます。ただし、これらのインストールでは自動的にデータ変換が実行されません。データベースのデータの変換の詳細は、"Caché システム管理ガイド" の データベースの互換性に関する考慮事項 の章を参照してください。
Unicode を選択してインストールを実行した場合、8 ビットに戻るとデータが失われます。これは、8 ビット・バージョンの Caché は、データベースから 16 ビットの文字データを取得できないためです。
Ensemble をインストールしている場合、[Unicode] を選択する必要があります。
必要なディスク容量
どのプラットフォームでも、インストール・キットは、ユーザのコンピュータまたはネットワーク上のいずれかで使用可能になっている必要があります。プラットフォームごとの具体的なディスク領域の要件は、以下のとおりです。
-
Windows :
-
Caché Server Pages (CSP) のサポートを含む Caché のインストールには、約 1,500 MB (メガバイト) のディスク容量が必要です (この値にはユーザ・データに必要なディスク領域は含まれていません)。
-
Windows を効率よくサポートするシステムであれば、Caché の稼動に十分な能力があります。Caché のパフォーマンスは、プロセッサおよびディスクを高速なものにすることで向上します。
-
-
UNIX®、Linux、macOS :
-
Caché Server Pages (CSP) のサポートを含む標準的な Caché インストールでは、選択するインストールの種類によって 1600 ~ 1,950 MB (メガバイト) のディスク容量が必要です。
-
さらに、Caché インストール・ディレクトリに 200 MB の容量が必要です。インストール前に、指定した位置のディスクの空き容量がインストール手順によって確認されます。
-
サポートされるプラットフォームとコンポーネント
このバージョンの Caché がサポートされるオペレーティング・システム・プラットフォームのリストについては、このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" を参照してください。
インターシステムズの CSP テクノロジがサポートされる Web サーバのリストについては、このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" の “サポート対象テクノロジ” の章にある “サポート対象の Web サーバ” を参照してください。
CSP を使用する場合、Caché をインストールする前に Web サーバをインストールして、Caché インストーラで Web サーバが自動的に構成されるようにします。詳細は、"Caché Server Pages の使用法" の “CSP アーキテクチャ” の章を参照してください。
Caché プライベート Web サーバ
管理ポータルと Caché オンライン・ドキュメントが確実に機能するようにするために、Caché では、インスタンスごとに CSP ページ用のプライベート CSP ゲートウェイとプライベート Web サーバがインストールされます。
プライベート Web サーバをインストールすると、以下のことが可能になります。
-
管理ポータルをすぐに使用できます。
-
開発環境用にすぐに使用可能なテスト機能が用意されています。
プライベート Web サーバでは、この他の用途はサポートされていません。
HTTP ベースのアプリケーション (CSP、Zen、HTTP または HTTPS 経由の SOAP など) を配置する際には、管理ポータル以外のアプリケーションにプライベート Web サーバを使用しないでください。代わりに、サポートされる Web サーバのいずれかをインストールおよび配置してください (このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" の “サポート対象 Web サーバ” を参照)。
-
Windows : この Windows サービス名は “Web Server for instname” です。instname は、Caché のインストール時に入力したインスタンス名です。Caché により、Web サーバは install-dir\httpd ディレクトリ内にインストールされます。install-dir は Caché のインストール・ディレクトリです。対応する Caché インスタンスをアンインストールすると、その Web サーバもアンインストールされます。
プライベート Web サーバの構成は、アップグレードしても維持されます。
Caché をアップグレードする場合
アップグレードを実行する場合は、最初に、このドキュメントの “Caché のアップグレード” の章を参照して、必要な手順をすべて実行してください。
アップグレードするときは、インストール前のアップグレード作業が完了した時点で現在の Caché をバックアップして、その後で Caché をインストールしてください。
サードパーティ・ソフトウェアの構成
インターシステムズ製品は、インターシステムズ製ではないツールと共に実行したり、そのようなツールとやり取りしたりすることが頻繁にあります。このようなやり取りでもたらされる可能性がある影響に関する重要な情報については、"Caché システム管理ガイド" の付録 “インターシステムズ製品と連係して動作するようにサードパーティ・ソフトウェアを構成する方法” を参照してください。
Caché メモリの管理
Caché インスタンスがメモリを使用する方法は、主に 2 通りの方法で構成できます。これについては、以下の各セクションで説明します。
最初のアクションでは、ルーチンおよびデータベース・キャッシュにメモリを割り当てて、コードとデータの保持に利用可能なメモリを決定します。2 番目のアクションでは、gmheap を構成して、その他すべての目的に利用可能なメモリを決定します。これらの個別および同時に実施するアクションは、インスタンスのパフォーマンスと機能性における重要な要素になります。
その他の 2 つのメモリ設定は、以下のセクションで説明しています。
インターシステムズのシニア・テクノロジ・アーキテクトによる Caché のメモリ計画の詳細は、InterSystems Developer Community の "InterSystems Data Platforms and Performance Part 4 - Looking at MemoryOpens in a new tab" を参照してください。
その他のメモリ割り当てに関する情報は、このドキュメントに記載されたプラットフォーム固有のセクションを参照してください。
このセクションで説明した設定を変更する場合は、[保存] をクリックして変更内容を保存し、Caché を再起動して設定を有効化します。
ルーチンおよびデータベースのキャッシュ用メモリの割り当て
ルーチンおよびデータベースのキャッシュ用にメモリを割り当てるには、以下の操作を実行します。
-
管理ポータルで、[メモリと開始設定] ページ ([システム管理]→[構成]→[システム構成]→[メモリと開始設定]) に移動します。
-
[手動] を選択します。
Caché の最初のインストール時に、ルーチンおよびデータベースのキャッシュ用のメモリは、既定で [自動] 割り当てに設定されます。この既定の設定では、Caché は利用可能な物理メモリを少なめにデータベース・キャッシュに割り当てます (1 GB を超えない)。この設定は、実稼働環境での使用には適していません。実稼働環境での使用のためにシステムを配置する前や、実稼働環境での使用をシミュレーションするためにテストまたはベンチマーキングを実施する前には、このセクションで説明したように、この設定を [手動] に変更して、ルーチンとデータベースのキャッシュに十分なメモリを割り当ててください。
ルーチン・キャッシュ用メモリの割り当て
ルーチンキャッシュ用メモリ (MB) — ルーチン・キャッシュでは、サーバ・コードのキャッシュ用に割り当てるシステム・メモリを指定します。
Caché は、ルーチン・キャッシュ用に割り当てられたメモリの合計容量を取得して、異なるサイズのバッファを作成します。これらのバッファは、合計容量の 1/2 を 64 KB バッファに、3/8 を 16 KB バッファに、1/8 を 4 KB バッファに割り当てるという方式で作成されます。こうした特定のサイズのバッファのグループは、プールとも呼ばれます。
Caché は、どのプールにも最大で 65,529 個のバッファを割り当てます。また、Caché には割り当ての最小数も設定されています。Caché は、どのプールに対しても 205 個未満のバッファを割り当てることはありません。そのため、ルーチン・バッファに使用される実際のメモリ (各バッファ・サイズの 205 倍) は、構成ファイルで指定した量より大きくなる場合があります。Caché ルーチンのフォーマットでは、最大ルーチン・サイズの設定にかかわらず、リテラル文字列に 32,768 文字を超える文字数を使用することはできません。
Caché パラメータ・ファイル (cache.cpf) を使用したルーチン・バッファ用メモリの割り当てに関する詳細は、"Caché パラメータ・ファイル・リファレンス" の “[Config]” のセクションにある "ルーチン" を参照してください。
大規模な ECP システムを構成する場合、ECP 経由で 8 KB ブロックを提供する 8 KB バッファに加え、この構造に最低でも 50 MB の 8 KB バッファを割り当ててください。詳細は、"Caché 分散データ管理ガイド" の “分散アプリケーションの開発” の章の "大規模な ECP システムにおけるメモリの使用量" セクションを参照してください。
データベース・キャッシュ用メモリの割り当て
blocksize データベースキャッシュ用メモリ (MB) — データベース・キャッシュでは、データのバッファ用に割り当てるシステム・メモリを指定します。これは、グローバル・バッファの作成とも呼ばれます。データベース・キャッシュおよびそこに割り当てられたメモリは、グローバル・バッファ・プールと呼ばれることもあります。
リストされている有効なデータベース・ブロック・サイズごとに、個別の割り当てを入力します。8K ブロック・サイズは必須です (既定でリストされています)。その他のデータベース・ブロック・サイズ (16K、32K、64K) を有効にするには、[開始設定] ページ ([システム管理]→[追加設定]→[開始]) にある、[DBSizesAllowed] 設定を使用します。詳細は、"Caché 追加構成設定リファレンス" の "DBSizesAllowed" を参照してください。
ブロック・サイズと利用可能なバッファの最大数は、どちらもパフォーマンスとの密接な関係があります。Caché が特定のブロック・サイズでデータベース用に作成するグローバル・バッファの数を判断するには、ブロック・サイズの割り当てをそのブロック・サイズで除算します。ブロック・サイズが小さくなるほど、そのブロック・サイズでデータベース用に作成されるグローバル・バッファの数が多くなります。目的とするアプリケーションに適したブロック・サイズを選択する際の指針は、"Caché システム管理ガイド" の “Caché の構成” の章にある “ラージ・ブロック・サイズに関する考慮事項” を参照してください。
一般メモリ・ヒープ (gmheap) の構成
gmheap の構成は、[詳細メモリ] ページ ([システム管理]→[構成]→[追加設定]→[詳細メモリ]) ページで実行できます。
gmheap — 一般メモリ・ヒープ (共有メモリ・ヒープとも呼びます) により、ルーチンおよびデータベースのキャッシュ以外の用途に Caché が利用できるメモリが決まります。
gmheap に使用されているメモリと利用可能なメモリの詳細を確認するには、[共有メモリヒープ使用状況] ページ ([システム処理]→[システム使用] ページで、[共有メモリヒープ使用状況] リンクをクリック) を使用します。
詳細は、"Caché 追加構成設定リファレンス" の “詳細メモリ設定” にある "gmheap" を参照してください。また、"Caché 監視ガイド" の “管理ポータルを使用した Caché の監視” の章にある "一般 (共有) メモリ・ヒープ使用状況" も参照してください。
その他の Caché メモリ設定
[メモリと開始設定] ページでは、以下に示すその他のメモリ設定を変更できます。
-
[プロセス当たりの最大メモリ(KB)] — この Caché インスタンスの 1 つのプロセスに割り当てる最大メモリ。既定値は 262,144 KB です。有効値の範囲は、128 KB から 2,147,483,647 KB です。
Note:この値は、既定値 (262,144 KB) 未満に設定していない限り、設定し直す必要はありません。<STORE> エラーが報告された場合は、サイズを増やす必要があります。
シンボル・テーブル割り当ておよびその他メモリ要件 (I/O デバイス・アクセス構造体やバッファなど) で使用するプロセス・プライベート・メモリの量は、アプリケーションにおける必要性に応じて最大値に達するまで増加します。初期の割り当て容量は 128 KB です。一度メモリがプロセスに割り当てられると、プロセスが終了するまで、その割り当ては解除されません。
-
[長い文字列を有効にする] チェック・ボックスにチェックを付けると、各処理において長い文字列が処理できるように長い文字列スタックが割り当てられます。
ファイル・システムおよびストレージの構成における推奨事項
このセクションでは以下の領域における一般的な推奨事項を示します。
また、データベース構成における推奨事項の概要は、"Caché システム管理ガイド" の “Caché の構成” の章にある "データベースの構成" のセクションを参照してください。
ファイル・システムの推奨事項
パフォーマンスと復元可能性を高めるために、Caché 用に少なくとも 4 つの独立したファイル・システムを備えて以下をホストすることをお勧めします。
-
インストール・ファイル、実行可能ファイル、およびシステム・データベース (既定では、ライト・イメージ・ジャーナル (WIJ) ファイルを含む)
-
データベース・ファイル (およびオプションで WIJ)
-
プライマリ・ジャーナル・ディレクトリ
-
代替ジャーナル・ディレクトリ
さらに、それとは別に WIJ ファイル専用のファイル・システムを構成に追加することもできます。このファイルは、既定で install—dir\mgr\ ディレクトリに作成されます。このファイル・システムには、WIJ が最大サイズにまで拡大できる十分な領域を確保してください。この最大サイズは、[メモリと開始設定] ページ ([システム管理]→[構成]→[システム構成]→[メモリと開始設定]) で割り当てたデータベース・キャッシュのサイズと同じです ("Caché システム管理ガイド" の “Caché の構成” の章にある "メモリと開始設定" を参照)。WIJ の詳細は、"Caché データ整合性ガイド" の “ライト・イメージ・ジャーナリング” の章を参照してください。
UNIX®、Linux、および macOS プラットフォームでは、/usr/local/etc/cachesys は Caché レジストリ・ディレクトリであるため、ローカル・ファイル・システム上に配置する必要があります。
重大なディスク障害が発生してデータベース・ファイルを破損した場合、バックアップからのリカバリにおいてジャーナル・ファイルが重要な要素になります。 したがって、データベース・ファイルおよび WIJ が使用するデバイスから独立したストレージ・デバイスにプライマリ・ジャーナル・ディレクトリおよび代替ジャーナル・ディレクトリを配置する必要があります (WIJ の損傷によってデータベースの整合性が損なわれる可能性があるため、ジャーナルは WIJ から独立させる必要があります)。 代替ジャーナル・デバイスを使用すると、プライマリ・ジャーナル・デバイスでのエラーの後でもジャーナリングを続行できるため、プライマリ・ジャーナル・ディレクトリおよび代替ジャーナル・ディレクトリも相互に独立したデバイスに配置する必要があります。運用上の理由から、これらの異なるデバイスを同じストレージ・アレイ上の異なる論理ユニット (LUN) にすることもできますが、一般的には独立性が高いほど好ましいです (別々の物理ドライブを強く推奨)。別々のジャーナル・ストレージについての詳細は、"Caché データ整合性ガイド" の “ジャーナリング” の章にある"ジャーナリングの最善の使用方法" を参照してください。
ジャーナル・ディレクトリと WIJ ディレクトリは、インストール時には構成されません。これらのディレクトリを Caché のインストール後に変更する方法の詳細は、"Caché データ整合性ガイド" の "ジャーナル設定の構成" を参照してください。
現在のストレージ・アレイ (特に、SSD/フラッシュ・ベースのアレイ) では、前に推奨した種類の独立性は必ずしも可能ではありません。 このような技術を使用する場合、パフォーマンスと復元可能性を高めるために、ストレージ・ベンダの推奨事項を参照して、これに従ってください。
また、このセクションでは、以下の項目に関する情報も示しています。
ストレージの構成の推奨事項
現在、従来の磁気回転方式の HDD デバイスから SSD および PCIe フラッシュ・ベース・デバイスに至るまで多くのストレージ技術が利用されています。 さらに、複数のストレージ・アクセス技術には、NAS、SAN、FCoE、直接接続、PCIe、ハイパー・コンバージド・インフラストラクチャを備えた仮想ストレージなどがあります。
ご使用のアプリケーションに最適なストレージ技術は、アプリケーション・アクセス・パターンで決まります。 例えば、ランダム読み取りが大部分であるアプリケーションの場合、SSD またはフラッシュ・ベース・ストレージが理想的なソリューションです。また、書き込みが非常に多いアプリケーションの場合、従来の HDD デバイスが最適です。
以下の各セクションでは、一般的な提案としてのガイドラインについて説明します。 特定のストレージ製品のプロバイダは、個別のベスト・プラクティスや場合によっては相反するベスト・プラクティスを指定するかもしれません。それらを参照し、適切に従ってください。
ストレージの接続
ストレージの接続には以下の考慮事項が適用されます。
SAN (Storage Area Network) ファイバー・チャネル
各ホストから SAN スイッチまたはストレージ・コントローラに複数のパスを使用します。 1 つのカードの障害から保護するために複数の HBA を使用すると保護のレベルが上がりますが、最小の推奨事項は、少なくとも 1 つのデュアルポート HBA を使用することです。
ストレージ・アレイ・レイヤに復元可能性をもたらすには、ストレージ・コントローラの障害から保護し、ファームウェアの更新などのアクティビティのためのメンテナンス期間でさえも継続してアクセスを提供するために、アクティブ/アクティブ構成またはアクティブ/パッシブ構成のいずれかのデュアル・コントローラを備えたアレイをお勧めします。
冗長性を実現するために複数の SAN スイッチを使用する場合、推奨される一般的な方法は、各スイッチを個別の SAN ファブリックにし、不具合のある構成の変更を 1 つのスイッチにとどめ、両方のスイッチに影響してすべてのストレージ・アクセスが妨げられることがないようにすることです。
ネットワーク接続ストレージ (NAS)
これは、一般的に 10GB のイーサネットが使用可能であり、最高のパフォーマンスを実現するためには、10GB のスイッチおよびホスト・ネットワーク・インタフェース・カード (NIC) をお勧めします。
専用のインフラストラクチャを用意して、LAN の通常のネットワーク・トラフィックからトラフィックを分離することもお勧めします。 こうすることによって、ホストとストレージの間の NAS のパフォーマンスを予測できます。-
ジャンボ・フレームのサポートを含めて、ホストとストレージの間の十分な通信を提供することも必要です。
多くのネットワーク・インタフェース・カード (NIC) は TCP オフロード・エンジン (TOE) をサポートします。TOE のサポートは、普遍的に利点があるとみなされているわけではありません。使用可能なサイクル (またはその欠如) に対するオーバーヘッドおよびゲインは、サーバの CPU によって大きく変化します。 また、TOE のサポートは役に立つ期間が制限されます。これは、指定された NIC の TOE パフォーマンス・レベルにすぐにシステム処理能力が追いつくまたは多くの場合追い越すためです。
ストレージの構成
ストレージ・アレイを取り巻く状況は、技術的特徴、機能、およびパフォーマンスのオプションにおいて絶えず変化していて、複数のオプションが最適なパフォーマンスおよび復元可能性を Caché にもたらすようになります。 以下のガイドラインは、Caché の最適なパフォーマンスおよびデータの復元可能性を実現するための一般的なベスト・プラクティスを提供します。
過去において、最大の保護およびパフォーマンスを実現するために RAID10 が推奨されていました。 しかし、ストレージ・コントローラの機能、RAID の種類とアルゴリズムの効率、およびインラインの圧縮や複製などのコントローラ機能によって、かつてないほど多くのオプションが提供されています。 また、アプリケーションの入出力パターンによって、最高のソリューションをもたらすストレージ RAID レベルおよび構成をストレージ・ベンダと共に決定できます。
可能な場合には、ファイル・タイプのブロック・サイズと同等のブロック・サイズを使用することが最良です。ほとんどのストレージ・アレイは指定されたボリューム用に使用できるブロック・サイズが低く制限されていますが、ファイル・タイプのブロック・サイズをできる限り近くできます。例えば、ストレージ・アレイ上の 32KB または 64KB のブロック・サイズは、通常、8KB ブロック形式の CACHE.DAT ファイルを効果的にサポートする実用的なオプションです。 ここでの目標は、アプリケーションのニーズに基づいてストレージ・アレイの入出力が過剰または無駄にならないようにすることです。
以下の表は、Caché のインストール環境内でのストレージの入出力の一般的な概要を示しています。
入出力の種類 |
タイミング |
方法 |
留意事項 |
---|---|---|---|
データベースの読み取り (ほぼランダム) |
ユーザの処理によって連続 |
ユーザの処理によってディスク入出力が開始され、データを読み取り |
データベースの読み取りは、デーモンが処理する Web ページ、SQL クエリ、または直接ユーザ処理によって実行されます。 |
データベースの書き込み (順序付けされるが非連続で実行) |
約 80 秒ごとまたは保留中の更新がデータベース・キャッシュのしきい値のパーセントに達したとき (先に基準を満たした方) |
データベース・ライト・デーモン
(8 個のプロセス) |
データベースの書き込みは、ライト・デーモンと呼ばれる一連のデータベース・システム・プロセスによって実行されます。 ユーザ処理によってデータベース・キャッシュが更新され、トリガ (時間またはデータベース・キャッシュのパーセントが一杯になったとき) によってライト・デーモンを使用してディスクの更新が実行されます。通常、更新レートに応じて、書き込みサイクル中に数 MB から数 GB 書き込む必要があることを想定しています。 |
WIJ 書き込み (連続) |
約 80 秒ごとまたは保留中の更新がデータベース・キャッシュのしきい値のパーセントに達したとき (先に基準を満たした方) |
データベース・マスタ・ライト・デーモン (1 個のプロセス) | WIJ は、データベースの書き込みサイクル中のシステム障害から物理データベース・ファイルの整合性を保護するために使用されます。 書き込みは、約 256KB のサイズごとに行われます。 |
ジャーナル書き込み (連続) |
ジャーナル・データの 64KB ごとまたは 2 秒ごと、または ECP、Ensemble、またはアプリケーションの同期要求 |
データベース・ジャーナル・デーモン (1 個のプロセス) |
ジャーナル書き込みは連続で、4KB から 4MB までサイズが変化します。 1 秒あたり数十回の書き込みから、ECP および個別のアプリケーション・サーバを使用した非常に大きい配置の場合には 1 秒あたり数千回の書き込みまでになる場合があります。 |
ストレージのボトルネックは、データベースのシステム・パフォーマンスに影響する最も一般的な問題の 1 つです。一般的な誤りは、十分な数の個別ディスクを確保して 1 秒あたりに予期される入出力操作 (IOPS) をサポートするのではなく、データ容量のみに対してストレージをサイズ調整することです。
入出力の種類 |
平均応答時間 |
最大応答時間 |
留意事項 |
---|---|---|---|
データベース・ブロック・サイズのランダム読み取り (キャッシュ処理なし) |
<=6 ms |
<=15 ms |
データベース・ブロックは固定 8KB、16KB、32KB、または 64KB (ホストでのデータベース・キャッシュは大きいため、ディスクへのほとんどの読み取りはキャッシュされません)。 |
データベース・ブロック・サイズのランダム書き込み (キャッシュ処理あり) |
<=1 ms |
<2 ms |
すべてのデータベース・ファイルの書き込みは、ストレージ・コントローラのキャッシュ・メモリによってキャッシュされることが想定されます。 |
4KB から 4MB のジャーナル書き込み (ECP 未使用) |
<=2 ms |
<=5 ms |
ジャーナル書き込みは連続で、4KB から 4MB までサイズが変化します。 書き込みボリュームは ECP アプリケーション・サーバを使用しない場合には比較的小さいです。 |
4KB から 4MB のジャーナル書き込み (ECP 使用) |
<=1 ms |
<=2 ms |
ECP から生成されるジャーナル同期要求によって、厳格な応答時間の要件が課され、スケーラビリティが維持されます。 同期要求の発行によって、ジャーナルの最後のブロックへの書き込みをトリガして、データの持続性を確保できます。 |
これらの数値はガイドラインとして提供しており、任意のアプリケーションで理想的なパフォーマンスを実現するためには、許容範囲およびしきい値がこれらの数値よりも高いまたは低い場合があります。これらの数値および入出力の水準は、ご使用のストレージ・ベンダとの議論の開始点として使用してください。
Caché セキュリティの準備
このセクションの内容は、Caché のセキュリティ機能を使用するユーザを対象としています。これらの機能 (特に認証オプションおよび承認オプション) の概要については、"Caché セキュリティ管理ガイド" の “はじめに” を参照してください。この資料は、サイトに適したセキュリティ・レベルを選択するために役立ちます。このセキュリティ・レベルによって、Caché のインストール前にセキュリティ環境を準備するために必要なタスクが決まります。
このセクションでは、以下のトピックについて説明します。
-
Kerberos を使用したセキュリティ環境の準備 — 現在の環境で Kerberos 認証方式を使用していない場合は、このセクションを省略できます。
-
初期の Caché セキュリティ設定 — このセクションでは、各種既定のセキュリティ設定の特徴について説明します。特に、通常またはロック・ダウンの Caché セキュリティを使用する場合に役立ちます。
このドキュメントで説明する環境よりさらに複雑なセキュリティ環境を使用する場合、具体的な設定方法については、インターシステムズのサポート窓口Opens in a new tabまでお問い合わせください。
Kerberos を使用したセキュリティ環境の準備
以下の各セクションでは、3 種類の環境についてインストールの準備方法を説明します。
-
Windows のみで構成された環境
この構成では、Caché サーバとクライアントを Windows マシン上で実行し、Windows ドメイン・コントローラを使用して KDC 機能を実現します。ドメイン管理者は、Caché サーバ上で Caché サービスを実行するためのドメイン・アカウントを作成します。
Windows Caché サーバを使用する際の要件については、"Windows ドメイン・コントローラを使用するための Windows Caché サーバのサービス・アカウントの作成" のセクションを参照してください。システムで使用するアプリケーションによっては、"Windows Kerberos クライアントの構成" セクションに記載されている手順も実行する必要があります。
-
Windows ドメイン・コントローラを使用する混合環境
この構成では、Windows マシンおよび非 Windows マシンの混在する環境で Caché サーバとクライアントを実行し、Windows ドメイン・コントローラで管理します。Windows および非 Windows の Cache サーバを使用する場合の要件については、以下のセクションを参照してください。
-
システムで使用するアプリケーションによっては、"Windows Kerberos クライアントの構成" セクションに記載されている手順も実行する必要があります。
-
非 Windows 環境
この構成では、Caché サーバとクライアントのすべてを非 Windows マシン上で実行し、UNIX® または Kerberos の KDC を実現します。UNIX® または macOS KDC と Caché サーバを使用するための要件については、以下の 2 つのセクションを参照してください。
Caché 対応のすべてのプラットフォームには、ベンダが提供およびサポートしているいずれかのバージョンの Kerberos が備わっています。詳細は、各オペレーティング・システムのドキュメントを参照してください。Kerberos を使用する場合は、Kerberos KDC (Key Distribution Center) または Windows ドメイン・コントローラがネットワークに接続されている必要があります。KDC と、ドメイン・コントローラ上で動作するその他のセキュリティ・サービスを統合することによって、Kerberos 認証プロトコルを実装します。
このドキュメントでは、以下の関連する個別のエンティティについて言及します。
-
サービス・アカウント — オペレーティング・システム (Window など) 内のエンティティ。ソフトウェア・アプリケーションまたはサービスを表します。
-
サービス・プリンシパル — Kerberos のエンティティ。ソフトウェア・アプリケーションまたはサービスを表します。
Windows ドメイン・コントローラでの Windows Caché サーバのサービス・アカウントの作成
Caché を Windows ドメインにインストールする前に、Windows ドメイン管理者は、Windows ドメイン・コントローラを使用する Windows マシン上の各 Caché サーバ・インスタンスに対してサービス・アカウントを作成する必要があります。
アカウントの特性
Windows ドメイン・コントローラにこのアカウントを作成する場合は、次のように設定します。
-
アカウントの [パスワードを無期限にする] プロパティを設定します。
-
作成したアカウントを、Caché サーバ・マシン上の Administrators グループのメンバにします。
-
このアカウントを [サービスとしてログオン] ポリシーに追加します。
ドメイン全体のポリシーが有効な場合、正常に Caché を機能させるには、このサービス・アカウントをポリシーに追加する必要があります。
名前および名前付け規約
クライアントとサーバが排他的に Windows 上に存在する環境でサービス・プリンシパルに名前を付ける方法には次の 2 種類があります。
-
標準の Kerberos 名前付け規約に従います。これにより、Windows 以外のシステムとの将来的な互換性が保証されます。
-
任意の一意の文字列を使用します。
以下の各セクションで説明するように、名前の作成方法の選択によって、サーバへの接続を設定するための手順は多少異なります。
Kerberos 規約に従った名前では、以下の手順に従います。
-
Windows の setspn コマンドを実行し、service_principal/fully_qualified_domain_name の形式でサービス・プリンシパルの名前を指定します。service_principal には、通常 cache を指定し、fully_qualified_domain_name には、マシン名をドメイン付きで指定します。例えば、cache/cacheserver.example.com のようにサービス・プリンシパル名を指定します。setspn ツールの詳細は、Microsoft TechNet Web サイトの "Setspn SyntaxOpens in a new tab" のページを参照してください。
-
[Caché サーバ・マネージャ] ダイアログで、新しい優先サーバを追加するために [Kerberos] を選択します。[サービスプリンシパル名] フィールドに指定する名前は setspn で指定したプリンシパル名と一致する必要があります。
リモート・サーバ接続の設定の詳細は、"Caché システム管理ガイド" の “リモート・サーバへの接続” の章を参照してください。
任意の一意の文字列を使った名前では、以下の手順に従います。
-
サービス・プリンシパルの名前を選択します。
-
[Caché サーバ・マネージャ] ダイアログで、新しい優先サーバを追加するために [Kerberos] を選択します。[サービスプリンシパル名] フィールドに、サービス・プリンシパルに対して選択した名前を指定します。
Kerberos 規約に従わないと決めた場合、Caché サーバ・インスタンスを表す各アカウントについて推奨される名前付け規約は “cacheHOST” の形式で、リテラル cache に続けてホスト・コンピュータ名を大文字で指定します。例えば、WINSRVR という Windows マシン上で Caché サーバを実行する場合、ドメイン・アカウント名は cacheWINSRVR となります。
リモート・サーバ接続の設定の詳細は、"Caché システム管理ガイド" の “リモート・サーバへの接続” の章を参照してください。
Windows ドメイン・コントローラでの非 Windows Caché サーバのサービス・アカウントの作成
Caché を Windows ドメインにインストールする前に、Windows ドメイン・コントローラを使用するためのサービス・アカウントを非 Windows マシン上の各 Caché サーバに対して作成する必要があります。そのマシン上に存在する Caché サーバ・インスタンスの数にかかわらず、マシンごとにサービス・アカウントを 1 つ作成してください。
通常、これらのアカウントには “cacheHOST” という名前を付けます。cache という文字列の後に、ホスト・コンピュータ名を大文字で指定してください。例えば、UNIXSRVR という非 Windows マシン上で Caché サーバを実行する場合、ドメイン・アカウント名は cacheUNIXSRVR となります。非 Windows プラットフォーム上の Caché サーバの場合、このアカウントが Kerberos サービス・プリンシパルにマップされます。
Windows ドメイン・コントローラでこのアカウントを作成する際、Caché では、そのアカウントに [パスワードを無期限にする] のプロパティを設定する必要があります。
Windows ドメインで非 Windows Caché サーバを設定するには、Windows ドメインから keytab ファイルを取得する必要があります。keytab ファイルは、Caché サーバのサーバ名とそのキーが格納されているファイルです。
そのためには、Windows サービス・アカウント (この例では cacheUNIXSRVR) をCaché サーバ上のサービス・プリンシパルにマップし、ドメイン・コントローラで ktpass コマンドライン・ツールを使用して、アカウントからキーを取得します。これは、Windows サポート・ツールの 1 つとして Microsoft が提供しています。
このコマンドを実行すると、設定したアカウントが UNIX®/Linux マシン上のアカウントにマップされます。さらに、そのアカウントのキーも生成されます。このコマンドでは以下のパラメータを指定する必要があります。
Parameter (パラメータ) | 概要 |
---|---|
-princ | cache/<fully qualified hostname>@<kerberos realm> の形式で表されたプリンシパル名。 |
-mapuser | 作成されたアカウントの名前 (cache<HOST> の形式)。 |
-pass | アカウントの作成時に指定されたパスワード。 |
-crypto | 使用する暗号化の種類。指定しない場合は、既定値の DES-CBC-CRC が使用されます。 |
-out | 生成する keytab ファイル。Caché サーバ・マシンに渡し、既存の keytab ファイルと交換またはマージします。 |
UNIX®/Linux プラットフォームのプリンシパル名はこのテーブルに示す形式 (リテラル cache を先頭部分に置きます) で指定する必要があります。
キー・ファイルを生成した後、Caché サーバ上のファイルにそのキー・ファイルを移動します。キー・ファイルの特徴は次のセクションで説明されています。
KDC での非 Windows Caché サーバのサービス・プリンシパルの作成
非 Windows 環境では、UNIX®/Linux または macOS の KDC を使用する UNIX®/Linux または macOS の各 Caché サーバにサービス・プリンシパルを作成する必要があります。サービス・プリンシパル名は、cache/<fully qualified hostname>@<kerberos realm> の形式で表されます。
キー・ファイルの特徴
このプリンシパルを作成したら、Caché サーバ上のキー・ファイルにそのキーを抽出します。キー・ファイルの特徴を以下に示します。
-
ほとんどの UNIX®バージョンでのパス名は install-dir/mgr/cache.keytab です。macOS および SUSE Linux でのパス名は /etc/krb5.keytab です。
-
このファイルは、Caché インストールおよびグループ cacheusr を所有するユーザが所有します。
-
このファイルのアクセス許可は、640 です。
Windows Kerberos クライアントの構成
Windows クライアントで Kerberos を使用している場合、ユーザに資格情報の入力を求めないよう、クライアントの構成が必要になることもあります。これは、資格情報を要求できないプログラムを使用している場合に必要となります。そうでないと、プログラムは接続不可能となります。
資格情報の入力を求めないように Windows を構成するには、以下の手順を実行します。
-
Windows クライアント・マシンで、レジストリ・エディタ regedit.exe を起動します。
-
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters キーに進みます。
-
このキーで、AllowTgtSessionKey の値を 1 に設定します。
Kerberos KDC 機能のテスト
非 Windows のサーバとクライアントのみで構成したシステムで Kerberos を使用する場合は、Windows のドメイン・コントローラを使用するより、UNIX®/Linux のネイティブな KDC を使用した方が簡単です。KDC のインストール方法と構成方法については、各ベンダのドキュメントを参照してください。通常、KDC のインストールと構成はシステム管理者が行います。
Kerberos をインストールするときは、以下の 2 つのソフトウェア・セットをインストールします。
-
KDC。Kerberos サーバ・マシンにインストールします。
-
クライアント・ソフトウェア。Kerberos クライアントをホストするすべてのマシンにインストールします。このソフトウェア・セットは、オペレーティング・システムによって大きく異なる場合があります。クライアント・ソフトウェアの種類とそのインストール方法については、オペレーティング・システム・ベンダのドキュメントを参照してください。
必要な Kerberos ソフトウェアをインストールしたら、kadmin、kinit、および klist コマンドを使用した簡単なテストを実行できます。これらのコマンドは、ユーザのプリンシパルを Kerberos データベースに追加し、ユーザの TGT (Ticket-Granting Ticket) を取得した上で、その TGT を列記します。
テストが完了し、登録されたプリンシパルのチケットを Kerberos が提供できることを確認したら、Caché をインストールする準備は完了です。
初期の Caché セキュリティ設定
インストール中、3 つの初期セキュリティ設定 (最小、通常、ロック・ダウン) のうち、いずれか 1 つを選択するよう求められます。この選択は、以下の各セクションで示すように、Caché のサービスとセキュリティに関する初期の承認構成設定を決定します。
初期のセキュリティ設定として通常またはロック・ダウンを選択した場合は、インストール手順でその他のアカウント情報を指定する必要があります。Kerberos 認証を使用する場合は、通常モードまたはロック・ダウン・モードを選択してください。詳細は、"ユーザ・アカウントの構成" のセクションを参照してください。
メモリ・イメージ内のデータの可視性 (多くの場合コア・ダンプと呼ばれる) について懸念がある場合は、"Caché セキュリティ管理ガイド" の “システム管理およびセキュリティ” の章にある “メモリ・イメージに存在する機密データの保護” のセクションを参照してください。
初期のユーザ・セキュリティ設定
以下のテーブルは、事前定義されたユーザのユーザ・パスワード要件と設定を選択したセキュリティ・レベルごとに示しています。
セキュリティ設定 | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
パスワード・パターン | 3.32ANP | 3.32ANP | 8.32ANP |
不活動上限 | 0 | 90 日間 | 90 日間 |
_SYSTEM ユーザの有効化 | あり | あり | なし |
UnknownUser に割り当てられるロール | %All | なし | なし |
パスワード・パターンと不活動上限値の両方とも、システム管理ポータルの システム, システム管理, システムセキュリティ設定, システムワイドセキュリティパラメータ ページから管理できます。詳細は、"Caché セキュリティ管理ガイド" の “システム管理およびセキュリティ” の章にある "システム規模のセキュリティ・パラメータ" のセクションを参照してください。
インストール後、ユーザ設定は、システム管理ポータルの システム, セキュリティ管理, ユーザ ページで表示および管理できます。
パスワード・パターン
Caché をインストールすると、既定のパスワード要件セットが設定されます。ロック・ダウン・インストールの場合、初期要件としてのパスワードの長さは 8 ~ 32 文字になっていて、英数字または句読記号で構成できます。この略称は 8.32ANP です。それ以外の場合、3 ~ 32 文字の英数字または句読記号で構成されたパスワードが初期要件となります (3.32ANP)。
不活動上限
アカウントがアクティブではなかった期間が、この値で指定された日数を超えると、このアカウントは無効になります。最小のインストールでは、この上限は 0 に設定されます。これは、アカウントがアクティブではない期間がどれだけ続いても、アカウントは無効化されないことを表します。通常のインストールやロック・ダウン・インストールに対する上限の既定値は 90 日間です。
_SYSTEM ユーザの有効化
Caché 5.1 より前のバージョンでは、ユーザ名が _SYSTEM であり、パスワードが SYS である SQL システム・マネージャ・ユーザが含まれていました。この Caché バージョンでは、_SYSTEM に加え、インストール時に指定したパスワードを使用する次の事前定義のユーザが作成されます : _SYSTEM、Admin、SuperUser、CSPSystem、およびインスタンスの所有者 (Windows にインストールしたユーザおよびその他のプラットフォームのインストーラによって指定されたユーザ名)。
事前定義されたこれらのユーザの詳細は、"Caché セキュリティ管理ガイド" の “ユーザ” の章にある "事前定義のユーザ・アカウント" のセクションを参照してください。
UnknownUser に割り当てられるロール
認証されていないユーザが接続した場合、Caché では、UnknownUser という特殊な名前が $USERNAME に割り当てられ、そのユーザに対して定義されているロールが $ROLES に割り当てられます。最小セキュリティ・インストールでは、UnknownUser には %All ロールが割り当てられます。最小以外のセキュリティ・レベルを選択した場合、UnknownUser にはロールは割り当てられません。
$USERNAME および $ROLES の使用法の詳細は、"Caché セキュリティ管理ガイド" の “ユーザ” および “ロール” の章を参照してください。
初期のサービス・プロパティ
サービスは、ユーザとコンピュータが Caché に接続するための主要な手段です。Caché サービスの詳細は、"Caché セキュリティ管理ガイド" の “サービス” の章を参照してください。
サービス・プロパティ | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
Use 許可が Public | はい | はい | いいえ |
認証が必要 | いいえ | はい | はい |
有効化されるサービス | 最も多い | 一部 | 最も少ない |
サービス・リソースに対する Use 許可が Public である場合、あらゆるユーザがそのサービスを利用できます。それ以外の場合は、権限を与えられているユーザのみがそのサービスを利用できます。
初期設定がロック・ダウンまたは通常の場合、すべてのサービスで何らかの認証が必要になります (Caché ログイン、オペレーティング・システム・ベース、または Kerberos)。それ以外の場合は、非認証の接続が許可されます。
初期のセキュリティ設定によって、Caché を最初に起動したとき、どのサービスが有効になり、どのサービスが無効になるかが決定します。以下のテーブルは、これらの初期設定を示しています。
サービス | 最小 | 通常 | ロック・ダウン |
---|---|---|---|
%Service_Bindings | 有効 | 有効 | 無効 |
%Service_CSP | 有効 | 有効 | 有効 |
%Service_CacheDirect | 有効 | 無効 | 無効 |
%Service_CallIn | 有効 | 無効 | 無効 |
%Service_ComPort | 無効 | 無効 | 無効 |
%Service_Console* | 有効 | 有効 | 有効 |
%Service_ECP | 無効 | 無効 | 無効 |
%Service_MSMActivate | 無効 | 無効 | 無効 |
%Service_Monitor | 無効 | 無効 | 無効 |
%Service_Shadow | 無効 | 無効 | 無効 |
%Service_Telnet* | 無効 | 無効 | 無効 |
%Service_Terminal† | 有効 | 有効 | 有効 |
%Service_WebLink | 無効 | 無効 | 無効 |
* Windows サーバのみで使用できるサービス
† 非 Windows サーバのみで使用できるサービス
インストール後、これらのサービスは、システム管理ポータルの システム, セキュリティ管理, サービス ページで表示および管理できます。
ユーザ・アカウントの構成
初期のセキュリティ設定として通常またはロック・ダウンを選択した場合は、インストール手順で追加の情報を指定する必要があります。
-
[資格情報] (Windows サーバ環境にインストールする場合のみ) — Caché サービスを実行する既存の Windows ユーザ・アカウントを選択します。既定のシステム・アカウント (Windows ローカル・システム・アカウントとして Caché を実行) を選択するか、または定義された Windows ユーザ・アカウントを入力できます。
Important:Kerberos を使用する場合は、Caché サービスを実行するために設定した定義済みのアカウントを入力する必要があります。"Windows Caché サーバのサービス・プリンシパルの作成" のセクションで説明したように、この目的のために特別に設定したアカウントを使用することをお勧めします。
定義済みのユーザ・アカウントを入力すると、インストールによって以下の事項が検証されます。
-
そのアカウントがドメインに存在するかどうか。
-
入力したパスワードが正しいかどうか。
-
そのアカウントに、サーバ・マシンに対するローカル管理者特権が与えられているかどうか。
-
-
[Caché ユーザ設定] (Windows 環境にインストールする場合) — Caché をインストールしているユーザ向けに、%All ロールを持つ Caché アカウントが作成され、Caché の管理に必要なサービスへのアクセス権がそのユーザに付与されます。
[インスタンスの所有者] (非 Windows 環境にインストールする場合) — Caché を実行するユーザの名前を入力します。Caché は、そのユーザに対して、%All ロールを持つアカウントを作成します。
そのアカウントのパスワードを入力し、確認のために同じパスワードを再度入力します。パスワードは、"初期のユーザ・セキュリティ設定" の一覧に示した条件を満たしている必要があります。
Caché アカウントとして、指定したパスワードを使用して、_SYSTEM、Admin、SuperUser、CSPSystem、およびインスタンスの所有者 (Windows にインストールしたユーザまたはその他のプラットフォームの指定されたユーザ) が作成されます。
Windows インストール時の初期セキュリティ設定として最小を選択する一方で、Caché に共有ドライブや共有プリンタへのネットワーク・アクセスが必要な場合は、Caché サービスを実行する Windows ユーザ・アカウントを手動で変更する必要があります。具体的には、既存のアカウントを選択するか新しいアカウントを作成して、サーバ・マシンに対するローカル管理者特権を持つアカウントにする必要があります。
Caché のインストールについては、このドキュメントの該当するプラットフォームの章を参照してください。"Caché セキュリティ管理ガイド" の説明を参照し、このセクションの手順を実行した上で、インストール手順に必要なセキュリティ情報を指定してください。
Caché の UNIX®、Linux、および macOS へのインストールの準備
対象のプラットフォームに該当する情報について、以下の各セクションを参照してください。
UNIX®、Linux、および macOS プラットフォームでサポートされるファイル・システム
UNIX®/Linux プラットフォームでサポートされるファイル・システムの完全なリストは、このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" の “サポート対象テクノロジ” の章の “サポートされているファイル・システム” を参照してください。
UNIX®、Linux、および macOS プラットフォームのファイル・システムのマウント・オプション
このセクションでは、以下のマウント・オプションについて説明します。
バッファ型入出力と直接入出力
一般に、サポートされる UNIX®、Linux、および macOS のファイル・システムとオペレーティング・システムのほとんどは、プログラム制御、マウント・オプション、または両方を使用して、以下の 2 つの異なる入出力オプションを提供します。
-
オペレーティング・システムが読み取りおよび書き込みをキャッシュするバッファ型入出力が既定です。
-
直接入出力は、読み取りおよび書き込みがオペレーティング・システムのキャッシュ処理をバイパスするオプションです。一部のプラットフォームは、直接入出力の最適化された形式をさらに区別します。これは、同時入出力と呼ばれ、提供されている場合には優先されます。
Caché でのバッファ型入出力および直接入出力の使用は、プラットフォーム、ファイル・システム、およびファイル・システムに保存されているファイルの特性によって以下のように決まります。
-
ジャーナル・ファイル
一部のプラットフォームには、このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" の “サポートされているファイル・システム” に記載のとおり、最適なパフォーマンスを実現するための直接入出力または同時入出力のマウント・オプションの使用に関して特別な推奨事項があります。その他のプラットフォームでは、Caché はジャーナル・ファイルには適切に、自動的に直接入出力を使用します。特別な考慮事項は必要ありません。
-
インストール・ファイル、実行可能ファイル、およびシステム・データベース
このファイル・システムは、バッファ型入出力 (既定のオプションで、一部のプラットフォームでは唯一のオプション) を使用するようにマウントする必要があります
-
データベース (CACHE.DAT ファイル)
直接入出力 (または同時入出力) の使用は、各プラットフォームのデータベース・ファイルの入出力特性を最適化するために、以下に説明するように決まります。あらゆる場合において、Caché は独自のデータベース・キャッシュを使用するため、データベース・ファイルに対してオペレーティング・システム・レベルのバッファ処理を行うことに優位性はありません。十分なデータベース・キャッシュが構成されていることを確認する必要があります。これは、オペレーティング・システムのバッファ処理では不十分なデータベース・キャッシュを補うことができないため、Caché が直接入出力を使用するプラットフォームで特に当てはまります。
-
IBM AIX
Caché は、cio ファイル・システムのマウント・オプションが使用されているかどうかにかかわらず、データベース・ファイルに同時入出力を使用します。
Note:AIX では、Caché の実行中に、データベース・ファイルを読み取るために外部コマンドが使用されるという特殊な構成では、その外部コマンドが失敗する可能性があります。これは、同時入出力のために、データベース・ファイルが Caché によって開かれているためです。一例を挙げると、高度なバックアップまたはスナップショット・ユーティリティがあるにもかかわらず、cp コマンドを使用して外部バックアップを実行する場合です。cio オプションを使用してファイル・システムをマウントすると、すべてのプログラムが同時入出力でファイルを開くように強制されるため、この問題が解決します。
-
HP HP-UX
Caché はデータベース・ファイルにバッファ型入出力を使用します。これは、HP-UX が同時入出力のプログラム・レベルの制御を提供しないためです。同時入出力は、cio マウント・オプションを使用して、OnlineJFS または VxFS ファイルシステムをマウントすることで、有効化できます。これをお勧めします。
-
Oracle Solaris
Caché は、UFS ファイルシステムに配置されたデータベース・ファイルに対して、直接入出力を自動的に使用します。これは、NFS にも適用されます。ただし、NFS は、Solaris の推奨ファイルシステムではありません。直接入出力は、ZFS ファイルシステムには関係しません。
-
Linux
Caché は、データベース・ファイルにバッファ型入出力を使用します。これは、VxFS ファイル・システムを使用している場合、cio マウント・オプションを使用して同時入出力のファイルシステムをマウントすることによってオーバーライドできます。
-
macOS
Caché は、データベース・ファイルにバッファ型入出力を使用します。
-
-
外部アプリケーション・ファイルおよびストリーム
通常、外部ファイルを使用するアプリケーションは、バッファされたファイル・システムに配置されたファイルを利用します。
noatime マウント・オプション
通常、このオプションを使用できる場合、ファイル・アクセス時間の更新を無効にすることをお勧めします。これは通常、さまざまなファイル・システムで noatime マウント・オプションを使用して実行できます。
UNIX®、Linux、および macOS 用のシステム・パラメータの計算
ここでは、システムに最適なパラメータの計算方法について、以下の各セクションで説明します。
-
メモリとディスク要件の決定 — メモリ要件、スワップ領域、ディスク要件、最大バッファ数、最大ユーザ数、最大データベース・サイズを計算します。
-
UNIX® カーネル・パラメータの構成 — UNIX® の調整可能パラメータの値の設定、および他のプラットフォーム固有のメモリ管理に関する問題について説明します。
-
プラットフォーム構成の問題 — 個々の UNIX®/Linux プラットフォーム固有の問題に対する構成上の問題について説明します。
Caché の最適なパフォーマンスを得るには、特定の Caché システム・パラメータに適切な値を計算する必要があります。これらの値から、ユーザは一定のシステム・レベル・パラメータを調整する必要があるかどうかを決定できます。ディスク・アクセスが必要なスワッピングやページングを最小限に抑える値を選択することにより、システムのパフォーマンスが向上します。
このセクションの内容をよく読んで、ご使用のオペレーティング・システムと Caché の両方に最適な値を計算してください。ここに記載されているテーブルを使用して、現在のシステムから計算された値をシステム・レベル・パラメータとして記録してください。Caché のインストール時にこのテーブルを参照できます。最適のパフォーマンスを得るためには、システムの稼動後、必要に応じて値を修正します。
ご使用のオペレーティング・システム・レベルのメモリ組織に精通していない場合は、適切なシステム・ドキュメントを参照してください。
メモリとディスク要件の決定
このセクションでは、ほとんどのシステムに対応する基本的なメモリ要件とディスク要件の概要について説明します。これらの要件はプラットフォームによって異なるため、詳細は使用しているプラットフォームのマニュアルを参照してください。固有の要件には以下のものがあります。
Caché のメモリ管理を可能にする主な 2 つの方法については、"Caché のメモリ管理" のセクションを参照してください。
メモリ要件の計算
以下のテーブルに記載されているメモリ使用状況の内訳から、Caché に必要なメモリ量を計算します。
コンポーネント | メモリ要件 |
---|---|
オペレーティング・システム | 1800 KB (オペレーティング・システムに依存) |
Caché | 842 KB |
グローバル・データベース・キャッシュ | バッファあたり 8 KB |
ルーチン・キャッシュ | ルーチン・バッファあたり 32 KB |
ユーザ・オーバーヘッド | プロセスあたり 1024 KB |
ネットワーク (存在する場合) | 各ネットワーク・システム・プロセス (DMNNET および RECEIVE) のポートごとに 300 KB。Caché ポートには、1 ポートにつき 2 つの DMNNET システム・プロセスがあります。さらに、ネットワークが共有するメモリ要件があります。この値は、ポート数および構成されているリモート・ホスト数によって異なります。標準のシステムにおけるメモリ要件は約 304 KB です。 |
既定では、ルーチン・バッファとグローバル・バッファを含め、共有メモリが自動的に割り当てられ、合計でそのシステムで使用可能な共有メモリ領域の 1/8 です。大容量のアプリケーションや大規模なユーザをサポートする計画がある場合、以下の公式に従ってシステムを調整します。
(number of routine buffers)*32 KB + (number of global buffers)*(block size) + 4 MB ___________________________________ = Shared memory needed
同時に実行できるダイレクト Caché セッションの数が負荷の増大によって変化するアプリケーションの場合、プロセスの処理に必要なメモリ量は処理能力が向上するに従って増大します。例えば、コアを 4 つから 8 つにアップグレードしたシステムでは、アップグレード前よりもはるかに多くのセッション (プロセス) をサポートできます。これらの各プロセスでメモリを消費するので、物理メモリの増設が必要になることがあります。
実行するプロセスの数が限られているサーバ (Ensemble のECP データ・サーバなど) 専用の構成の場合、負荷の増大はプロセス数の増加によるものとは限りません。したがって、処理能力がより高いシステムで大きな負荷が発生しても、プロセスで必要とするメモリ量が必ずしも増加しているわけではありません。
Linux システムの既定のメモリ・ページ・サイズは 4 KB です。最新の Linux ディストリビューションには、ヒュージ・ページ (システム構成に応じて、2 MB または 1 GB のメモリ・ページ・サイズ) のオプションが含まれています。ヒュージ・ページを使用してページ・テーブルの領域を節約することで、メモリを節約できます。ヒュージ・ページが構成されていると、システムはメモリの割り当て時に自動的にヒュージ・ページを使用します。Caché をホストするシステムでは、ほとんどの状況でヒュージ・ページを使用することをお勧めします。
2.6.38 カーネルを使用する一部の Linux ディストリビューションには、透過的ヒュージ・ページ (THP) が導入されていて、ヒュージ・ページの作成、管理、および使用が自動化されます。ただし、THP は Caché に割り当てられたメモリの大半を構成する共有メモリ・セグメントを処理しません。また、実行時にメモリ割り当ての遅延を引き起こすことがあり、パフォーマンスに影響する可能性があります。この影響は、ジョブまたはプロセスの作成頻度が高いアプリケーションでは顕著に表れます。このような理由から、Caché をホストするすべてのシステムで THP を無効化するようにお勧めします。このトピックの詳細は、InterSystems Developer Community の "Linux Transparent Huge Pages and the impact to CachéOpens in a new tab" を参照してください。
Linux でヒュージ・ページを構成するには、以下の操作を実行します。
-
ステータスを確認します。
/proc/meminfo にはヒュージ・ページに関する情報が記録されています。既定では、ヒュージ・ページは割り当てられていません。既定のヒュージ・ページ・サイズは 2 MB です。以下はその例です。
HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 Hugepagesize: 2048 KB
-
ヒュージ・ページ数を変更します。
ページ数のシステム・パラメータを直接変更できます。例えば、2,056 ページのヒュージ・ページを割り当てるには以下のように指定します。
# echo 2056 > /proc/sys/vm/nr_hugepages
Note:また、以下のように sysctl(8) を使用することもできます。
# sysctl -w vm.nr_hugepages=2056
ヒュージ・ページは連続したページとして割り当てる必要があります。また、割り当て後には再起動が必要になることがあります。したがって、割り当てを確実なものとして恒久的な変更とするには、以下の手順に従います。
-
/etc/sysctl.conf ファイルに以下の行を入力します。
echo "vm.nr_hugepages=2056" >> /etc/sysctl.conf
-
システムを再起動します。
-
再起動後に、meminfo を検証します。例えば、以下のようになります。
[root woodcrest grub]# tail -4 /proc/meminfo HugePages_Total: 2056 HugePages_Free: 2056 HugePages_Rsvd: 0 Hugepagesize: 2048 KB
-
-
Caché でのヒュージ・ページの使用を検証します。
Caché を起動すると、割り当てられた共有メモリの量が、例えば以下のようなメッセージで表示されます (これは cconsole.log ファイルに記録されています)。
Allocated 3580MB shared memory: 3000MB global buffers, 226MB routine buffers
ヒュージ・ページで使用可能なメモリ量は、割り当てられる共有メモリの合計量より多いことが必要です。このメモリ量が不足していると、ヒュージ・ページは使用できません。
Note:ヒュージ・ページが構成されていても割り当てができない場合に Caché の起動を防止するには、memlock パラメータを 7 に設定します ("Caché パラメータ・ファイル・リファレンス" の "memlock" を参照)。
ヒュージ・ページは、物理メモリから割り当てられます。このメモリには、ヒュージ・ページを使用するアプリケーションとプロセスのみがアクセスできます。
その他すべてのアプリケーションとプロセスは、ヒュージ・ページに割り当てられていない物理メモリのみを使用できます。
共有メモリの量に比べて過剰に大きい値を HugePages_Total に指定することはお勧めできません。ここで使用していないメモリを他のコンポーネントで使用することはできないからです。
Caché が起動時にヒュージ・ページの割り当てに失敗して、標準ページに切り替えた場合、Caché は、その他すべてのジョブと同じメモリ・プールから共有メモリを割り当てるようになります。
メモリ内で共有メモリ・セグメントをロックしてページングを防止するように Caché を構成している場合、ヒュージ・ページでは、メモリにロック可能な最大サイズを、必要とする量まで増やすことができます。これについては、この章の "Red Hat Linux プラットフォームの問題" の "ロックインされたメモリ" で説明しています。
AIX® は複数のページ・サイズ (4 KB、64 KB、16 MB、および 16 GB) をサポートしています。4 KB ページと 64 KB ページの使用は、Caché にとって透過的です。Caché が 16 MB のラージ・ページを使用するようにするには、そのラージ・ページを AIX® で構成する必要があります。AIX® は、構成済みのラージ・ページまたはヒュージ・ページの数を需要に基づいて自動的に変更することはありません。現時点では、Caché は 16 GB のヒュージ・ページを使用しません。
ラージ・ページは高性能な環境でのみ構成します。ラージ・ページに割り当てられたメモリは、ラージ・ページのみが使用できるようになるためです。
ラージ・ページを割り当てるには、memlock=64 でない限り、ユーザに CAP_BYPASS_RAC_VMM および CAP_PROPAGATE の権限、または root 権限が必要です。
既定では、ラージ・ページが構成されていると、システムはメモリ割り当てで自動的にラージ・ページを使用します。ラージ・ページに共有メモリを割り当てることができない場合、共有メモリは標準 (スモール) ページに割り当てられます。ラージ・ページの詳細な制御については、"Caché パラメータ・ファイル・リファレンス" の "memlock" を参照してください。
ラージ・ページは、以下のように vmo コマンドを使用して構成します。
vmo -r -o lgpg_regions=<LargePages> -o lgpg_size=<LargePageSize>
<LargePages> は予約するラージ・ページの数を指定し、<LargePageSize> は、ハードウェアでサポートされるラージ・ページのサイズをバイト単位で指定します。
動的 LPAR (Logical PARtitioning : 論理区画) をサポートするシステムでは、-r のオプションを省略して、システムを再起動することなく動的にラージ・ページを構成できます。
例えば、以下のコマンドは、1 GB のラージ・ページを構成します。
# vmo -r -o lgpg_regions=64 -o lgpg_size=16777216
ラージ・ページを構成したら、 bosboot コマンドを実行してこの構成をブート・イメージに保存します。システムの起動後、以下の vmo コマンドを使用して固定されたメモリ用にこのラージ・ページを有効にします。
vmo -o v_pinshm=1
ただし、memlock=64 の場合、vmo -o v_pinshm=1 は必要ありません。memlock の詳細は、"Caché パラメータ・ファイル・リファレンス" の "memlock" を参照してください。
スワップ領域の計算
ユーザのシステムで利用できるスワップ領域の容量は、実際のメモリに 256 KB を加算した値を下回らないようにしてください。
この最小値を考慮した上で、Caché に最低限必要なスワップ領域として以下の値をお勧めします。
((# of processes + 4)† * (1024 KB))‡ + total global buffer space + total routine buffer space _____________________________________ = Minimum swap space
† Caché コントロール・プロセス、ライト・デーモン、ガーベッジ・コレクタ、およびジャーナル・デーモンのために、プロセス数に 4 を追加します。また、各スレーブのライト・デーモンのために 1 を加算します。また、各スレーブのライト・デーモンのために 1 を加算します。プロセス数は、同時に実行する可能性があるすべてのユーザ・プロセスおよびジョブ・プロセスを含んでいる必要があります。ネットワーク接続の場合、RECEIVE システム・プロセスのために 1 を加算し、ユーザが実行している DMNNET デーモン数 (ポートごとに 2 つ) を加算します。
‡ 1024 KB という数字は概算です。これは、Caché の実行プログラムの現在のサイズに基づいて算出されるため、各 Caché プロセスに割り当てるパーティション・サイズによって変化します。ほとんどのシステムでは、最低限必要なスワップ領域を割り当てれば十分ですが、システムによっては、最悪のケースに備えてスワップ領域を割り当てる必要があります。このような場合、ユーザが指定するパーティション・サイズによっては、この数字を 1.5 MB まで上げる必要があります。
使用している UNIX® システムで、必要なスワップ領域が使用可能かどうかを必ず確認してください。システムのスワップ領域に関する詳細情報については、使用している UNIX® オペレーティング・システムのマニュアルを参照してください。
Solaris プラットフォームのスワップ領域を計算する方法は以下のとおりです。
swap –l
以下はその例です。
>swap –l
swapfile dev swaplo blocks free
/dev/dsk/c0t2d0s0 136,0 16 526304 526304
/dev/dsk/c0t2d0s1 136,1 16 2101184 2101184
AIX® のスワップ領域を表示する方法は以下のとおりです。
lsps –a
Page Space Physical Volume Volume Group Size %Used
Active Auto Type
hd6 hdisk2 rootvg 512 MB 72
yes yes lv
HP-UX のスワップ領域を表示する方法は以下のとおりです。
swapinfo (3M)
# /usr/sbin/swapinfo
KB KB KB PCT START/ KB
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 524288 138260 386028 26% 0 - 1 /dev/vg00/lvol2
reserve - 78472 -78472
memory 195132 191668 3464 98%
ディスク要件の計算
計算したスワップ領域以外に、以下の項目にもディスク容量が必要です。
-
Caché 用に 67 MB
-
CSP (Caché Server Pages) 用に 3 MB
-
Caché ODBC サポート用に 3.5 MB
-
Caché 管理者ソース用に 2.5 MB
-
Caché エンジン・リンク・ライブラリ用に 6.6 MB
-
Caché アプリケーション・データベース用の領域
-
ライト・イメージ・ジャーナル・ファイルの初期サイズ用に、バッファ・プール・サイズの約 12.5%。ユーザのディスクにライト・イメージ・ジャーナル・ファイル用に十分な容量がない場合、Caché を起動したときに、システムが起動しなかったことを示すメッセージが表示されます。
-
ジャーナル・ファイルに必要な容量
インストール手順の完了後、インストール・ファイルを削除する必要はありませんが、ディスク容量が不足しているときには削除できます。インストール・ファイルを削除した場合に節約できるディスク容量が示され、削除するかどうかを尋ねるプロンプトが表示されます。
グローバル・バッファ数の決定
Caché は、以下の最大グローバル・バッファ数をサポートします。
-
32 ビットのプラットフォーム : 以下の条件を満たす 2 KB バッファと 8 KB バッファの組み合わせ
-
HP-UX では 1GB 以下
-
32 ビットのプラットフォームでは 2GB 以下
2 GB という値は、オペレーティング・システムがプロセス・データに割り当てる合計のアドレス領域で、共有メモリ、および Caché とオペレーティング・システムのデータが含まれます。したがって、実際には達成できない上限値を示しています。
-
-
64 ビットのプラットフォーム :
グローバル・バッファ数はオペレーティング・システムと有効なメモリによってのみ制限されます。
最大バッファ数より小さい値を設定してください。
詳細は、"Caché パラメータ・ファイル・リファレンス" の “config” のセクションにある "グローバル" と、"Caché システム管理ガイド" の “Caché の構成” の章にある "メモリと開始設定" を参照してください。
ルーチン・バッファ数の決定
Caché は、以下の最大ルーチン・バッファ数をサポートします。
65,535
最大バッファ数より小さい値を設定してください。
詳細は、"Caché パラメータ・ファイル・リファレンス" の “config” のセクションにある "ルーチン" と、"Caché システム管理ガイド" の “Caché の構成” の章にある "メモリと開始設定" を参照してください。
最大ユーザ数の決定
Caché が許可する最大ユーザ数は、以下のうちで最も小さい値です。
-
ライセンス制限
-
セマフォ数 - 4
詳細は、"Caché システム管理ガイド" の “Caché ライセンスの管理” の章にある "ライセンスの機能範囲と使用の決定" を参照してください。
最大データベース・サイズの決定
UNIX® の ulimit パラメータにより、プロセスで利用できる最大ファイル・サイズが決まります。Caché 管理者グループでは、ulimit の値を無制限、あるいはユーザが持つ最大のデータベースと同じ大きさに指定する必要があります。
詳細は、"Caché システム管理ガイド" の “Caché の構成” の章にある "データベースの構成" を参照してください。
UNIX® カーネル・パラメータの構成
以下のセクションでは、さまざまな UNIX® プラットフォームでの調整やパフォーマンスについて説明します。
調整可能な UNIX® パラメータ値の設定
Caché は、ユーザがサイズを定義したセットで、構成可能なセマフォ数を使用します。パラメータ SEMMNI、SEMMNS、SEMMSL は、セットごとのセマフォ数と Caché が使用するセマフォ総数を示します。共有メモリの割り当てを制御する UNIX®/Linux パラメータは、SHMMAX、SHMMNI、SHMSEG、および SHMALL です。Caché は共有メモリを使用し、共有メモリのセグメントを 1 つ割り当てます。このセグメントのサイズは、グローバル・バッファとルーチン・バッファに設定された領域によって異なります。以下の数式を使用して、セグメントの最小サイズを求めます。
space required for routine buffers + space required for global buffers + 4 MB _____________________________________ = Shared memory segment size
データを複数のコンピュータに分散する場合、Caché は 2 つ目のセグメントを割り当てます。既定では、2 つ目のセグメントにはメモリを割り当てません (分散型データを使用する予定がある場合、構成のガイドラインについては、ベンダもしくはインターシステムズのサポート窓口までお問い合わせください)。その他のシステム要件に従って、NBUF と NHBUF を変更できます。Caché は独自のディスク・バッファリングを行うため、NBUF と NHBUF を小さく設定しておく必要があります。以下のテーブルは、値の変更が必要となる可能性がある一般的な UNIX® パラメータの名前、インターシステムズが推奨する各パラメータの最小値、およびそれらの概要の一覧です。ユーザのパラメータ値が、少なくともこの最小値以上に設定されていることを確認してください。プラットフォームによっては、実装されないパラメータや異なる形で参照されるパラメータもあるため、詳細は、プラットフォーム固有の調整の注意を参照してください。
カーネル・パラメータ | 推奨の最小値 | 定義 |
---|---|---|
CDLIMIT | 最大仮想ボリュームでのバイト数 | 最大ファイル・サイズ |
MSGMAX | 2 KB | 最大メッセージ・サイズ (単位はバイト) |
MSGMNI | Caché インスタンスの数 x 3 (各 Caché インスタンスは 3 つのメッセージ・キューを使用) | 同時に存在する可能性がある、一意に識別できる最小メッセージ・キュー数 |
NOFILES | 35 | プロセスごとに開くことができるファイル数 |
SEMMNI | SEMMNI と SEMMSL との積は、ユーザ・プロセス数に 4 加算した数よりも大きくなければなりません。 | カーネル内のセマフォ識別子の数 (同時に有効にできる一意のセマフォ・セットの数) |
SEMMNS | 128 または ... | システム内の総セマフォ数。ユーザ・プロセスには、ジョブ起動プロセスおよび他のソフトウェアに必要な、他のすべてのセマフォが含まれています。 |
実行される予定のプロセス数。プロセス・テーブルが拡大する可能性がある場合、大きめの数値を使用します。 | ||
SEMMSL | SEMMNI 参照 | 識別子リストごとの最大セマフォ数 |
SHMALL | 60 KB または ... | システム全体の共有メモリの最大総数値(単位は KB)。1000 は MCOMMON 共有域を示します。 |
1000 + 全グローバル・バッファ領域 + 全ルーチン・バッファ領域 * | ||
SHMMNI | 3 | システム全体の最大共有メモリ識別子数 |
SHMSEG | 3 | プロセスごとに付随する共有メモリ・セグメント数 |
SHMMAX | 60 KB または ... | 共有メモリ・セグメントの最大サイズ (KB) |
1000 + 全グローバル・バッファ領域 + 全ルーチン・バッファ領域 |
* これは、Caché UNIX® で必要とされる SHMALL の最小値です。システムの共有メモリを使用する他のすべてのアプリケーションについても考慮する必要があります。共有メモリの使用量が不確かな場合、SHMSEG と SHMMAX の積から SHMALL を計算します。単位はページです。どのような場合でも、この大きい方の値を適用すれば十分です。
オペレーティング・システム・ドキュメントで明示されていない限り、割り当てられたメモリをサポートするために十分なスワップ領域が必要です。特定のオペレーティング・システム (Solaris など) では、Caché は ロックされた共有メモリ・セグメント を作成しますが、それらはページング不可能ですがスワップ領域は必要となる場合があります。
最大ファイル・サイズの調整
Caché を実行するシステムでは、最大ファイル・サイズのハード制限 (RLIMIT_FSIZE) を unlimited にする必要があります。インストール前に、オペレーティング・システムでこの値を unlimited に設定します。root ユーザおよび Caché を実行するユーザの両方に対して、この制限が unlimited に設定されたことを確認します。 Caché は、I/O エラーを防止するために、そのデーモン内でプロセスのソフト制限も RLIMIT_FSIZE に設定します。
RLIMIT_FSIZE が無制限 (unlimited) に設定されていない場合、Caché はインストールまたは起動されなくなります。
最大ファイル・サイズのシステム・ハード制限 (RLIMIT_FSIZE) を設定する手順は、オペレーティング・システムのドキュメントを参照してください。
プラットフォーム構成の問題
以下のセクションでは、個々の UNIX®/Linux プラットフォームにおける構成の問題を取り上げます。詳細は、使用しているプラットフォームのシステム・マニュアルを参照してください。
HP-UX プラットフォームの問題
このトピックには、以下の調整に関する情報が含まれます。
HP システム V IPC 共有メモリ・サブシステムを使用してパラメータを更新します。詳細は、HP のオンライン・ドキュメント・ページ "System V Inter-Process Communication MechanismsOpens in a new tab" を参照してください。値を変更するには、以下の手順を実行してください。
-
システム管理マネージャ (SAM) プログラムを起動するために、/usr/sbin/sam コマンドを入力します。
-
[Kernel Configuration] アイコンをダブルクリックします。
-
[Configurable Parameters] アイコンをダブルクリックします。
-
変更したいパラメータをダブルクリックし、[Formula/Value] フィールドに新規の値を入力します。
-
[OK] をクリックします。
-
上記の手順を、変更したいすべてのカーネル構成パラメータに対して繰り返します。
-
すべてのカーネル構成パラメータの設定が完了したら、[Action] メニューから [Process New Kernel] を選択します。
カーネル構成パラメータの値の変更後、HP-UX オペレーティング・システムは自動的に再起動します。
HP-UX リリース 11i のパラメータ
HP-UX リリース 11i には、CDLIMIT パラメータと NOFILES パラメータが実装されていません。代わりに、ulimit パラメータと maxfiles パラメータの値を調整できます。
maxfiles および maxfiles_lim を調整する場合は、Caché システムの実際的な要件を反映するように、この値を設定する必要があります。Job コマンドによる新規プロセスの開始時に、Caché は開いている可能性のあるすべてのファイル記述子を閉じるため、これらのパラメータに高い値を設定すると不必要なクローズ操作が発生し、ジョブの開始パフォーマンスに悪影響を与える場合があります。
HP-UX 主要カーネルの調整可能パラメータ
HP は、OS 既定値と異なるパラメータのみを /stand/system ファイルに格納することを推奨しています。さらに、HP は、/stand/system ファイルの変更には kctune コマンドのみを使用すること、およびここでは明確に言及されないパラメータを以下のように明示的に既定値に設定することを推奨しています。
-
次のパラメータを既定値に戻します。
kctune [parameter]=
-
次のパラメータを式に設定します。
kctune [parameter]="[expression]"
パラメータを適用するリリースのバージョンが明確に示されていない場合、推奨事項は、HP-UX 11i v2 および 11i v3 のすべてのバージョンに対して有効です。
パラメータ | 値 | メモ |
---|---|---|
dbc_max_pct 1 | 1–2GB | 物理メモリの割合 |
dbc_min_pct 1 | <dbc_max_pct> | dbc_max_pct と同じ |
fcache_fb_policy 2 | 1 | フラッシュ・ビハインド・ポリシー |
hires_timeout_enable | 1 | 高速応答のタイマ・パッチを要求 |
lcpu_attr | 0 | ハイパースレッディングを無効化 |
nkthread | 30100 | スレッドの同時実行を許可 (nproc+100) |
nproc | 30000 |
11i v2 では 30000 が最大 11i v3 では 60000 が最大 |
maxuprc | 28000 | 最大 procs/user |
nclist | 8292 | pty および tty の cblock 数 – 最小 8292 |
nfile 3 | 5600066 | システム規模のオープン・ファイル |
nstrpty | 600 | ストリーム・ベースの pty 最大数 |
nstrtel | 600 | Telnet デバイス・ファイル最大数 |
o_sync_is_o_dsync 3 | 1 | O_SYNC - O_DSYNC 変換の有効 |
process_id_max 2 | 31000 | PID 番号の最大値 |
scsi_max_qdepth 3 | ||
次のように、ストレージ・サブシステムに適切な値を設定します。
|
||
semmsl | 128 | セマフォ/ID |
semmni | 512 | システム規模のセマフォ ID : 50 個の非 Cache セマフォ ID に設定します。 |
semmns (semmsl * semmni) | 65536 | システム規模セマフォ > Caché のプロセス数 |
shmmax | ½ 物理メモリ | 共有メモリ |
swchunk | 16384 | スワップ・チャンク・サイズ |
vps_ceiling | 512 | システム選択可能な最大ページ・サイズ |
次の注意事項は、“HP-UX 主要カーネルの調整可能パラメータ” の表に適用されます。
1 このパラメータは 11i v2 専用です。
2 このパラメータは 11i v3 専用です。
3 このパラメータは 11i v3 では廃止されました。
HP-UX ネットワーク・パラメータ
ギガビット・イーサネットをサポートするためには、次のパラメータを /etc/rc.config.d/nddconf に挿入する必要があります。
TRANSPORT_NAME[0]=tcp
NDD_NAME[0]=tcp_recv_hiwater_def
NDD_VALUE[0]=262144
TRANSPORT_NAME[1]=tcp
NDD_NAME[1]=tcp_xmit_hiwater_def
NDD_VALUE[1]=262144
TRANSPORT_NAME[2]=tcp
NDD_NAME[2]=tcp_recv_hiwater_lfp
NDD_VALUE[2]=262144
TRANSPORT_NAME[3]=tcp
NDD_NAME[3]=tcp_xmit_hiwater_lfp
NDD_VALUE[3]=262144
TRANSPORT_NAME[4]=sockets
NDD_NAME[4]=socket_udp_rcvbuf_default
NDD_VALUE[4]=262144
TRANSPORT_NAME[5]=sockets
NDD_NAME[5]=socket_udp_sndbuf_default
NDD_VALUE[5]=65535
ハイパースレッディング (HT) テクノロジ
すべての Poulson (Itanium 9500 シリーズ) ベースまたは Intel Xeon ベースのプロセッサで、ハイパースレッディングを有効化することをお勧めします。古い Itanium プロセッサでは、ハイパースレッディングを無効化することをお勧めします。特定のサーバおよびプラットフォームについての質問は、"インターシステムズのサポート窓口Opens in a new tab" までお問い合わせください。
AIX® プラットフォームの問題
一部の AIX® パラメータの既定の設定は、パフォーマンスに悪影響を及ぼす可能性があります。設定および推奨事項については以下を参照してください。
I/O ペーシング・パラメータ
AIX® は、Caché ライト・デーモンの動作を阻害する可能性のある I/O ペーシング・アルゴリズムを実装しています。AIX® 5.2 および AIX® 5.3 では、HACMP クラスタを使用すると I/O ペーシングが自動的に有効になります。一方、AIX® 6.1 以降では、すべてのシステムで I/O ペーシングが有効となり、既定の最高水準点は以前のバージョンよりも大きくなっています。
ライト・デーモンの速度が遅い場合やライト・デーモンが停止する場合は、この最高水準点の調整が必要になる場合があります。詳細は、IBM の Web ページ http://www.ibm.com/support/knowledgecenter/ssw_aix_61/com.ibm.aix.performance/disk_io_pacing.htmOpens in a new tab で “Disk I/O pacing” を参照してください。
IBM AIX® 6.1 以降では、最高水準点の調整は不要です。
システムへの影響について疑問点がある場合は、設定を変更する前にインターシステムズのサポート窓口Opens in a new tabまたは AIX® サプライヤまでお問い合わせください。これらの推奨事項は Caché のバージョンに依存しません。また、JFS と Enhanced JFS (JFS2) 両方のファイル・システムに適用されます。
ファイル・システムのマウント・オプション
負荷によってはさまざまなマウント・オプションを使用することでパフォーマンスを向上できる可能性がありますが、CACHE.DAT ファイルのみを扱うファイル・システムでは同時入出力のマウント・オプション (cio) をお勧めします。
ファイル・システムによるキャッシュが効果を発揮する、Caché ではない負荷 (例えば、オペレーティング・システムレベルのバックアップやファイル・コピー) は、cio マウント・オプションにより速度が低下します。
ジャーナル・ファイルのみを扱う JFS2 ファイル・システムには cio の使用を強くお勧めします。詳細は、"Caché データ整合性ガイド" の “ジャーナリング” の章にある "UNIX® ファイル・システムの推奨事項" を参照してください。
ハード・シャットダウンやシステム・クラッシュの後の CACHE.WIJ ファイルを使用してリカバリ速度を向上するには、CACHE.WIJ ファイルを扱うファイル・システムで、ファイル・システム・バッファリングを伴うマウント・オプション (例えば、rw) を使用することをお勧めします。
mount オプションに関する詳細は、IBM の Web ページ http://www.ibm.com/support/knowledgecenter/ssw_aix_61/com.ibm.aix.cmds3/mount.htmOpens in a new tab の "mount Command" を参照してください。
メモリ管理パラメータ
ファイル・システムの数およびファイル・システムに対するアクティビティの量によって、JFS または JFS2 のメモリ構造が制限され、それらのメモリ構造を使用する I/O 処理に遅延が生じる可能性があります。
こうした状況を監視するには、vmstat -vs コマンドを実行し、2 分経過してから、もう一度 vmstat -vs コマンドを実行します。次のような結果が出力されます。
# vmstat -vs
1310720 memory pages
1217707 lruable pages
144217 free pages
1 memory pools
106158 pinned pages
80.0 maxpin percentage
20.0 minperm percentage
80.0 maxperm percentage
62.8 numperm percentage
764830 file pages
0.0 compressed percentage
0 compressed pages
32.1 numclient percentage
80.0 maxclient percentage
392036 client pages
0 remote pageouts scheduled
0 pending disk I/Os blocked with no pbuf
5060 paging space I/Os blocked with no psbuf
5512714 filesystem I/Os blocked with no fsbuf
194775 client filesystem I/Os blocked with no fsbuf
0 external pager filesystem I/Os blocked with no fsbuf
以下のパラメータが増加している場合は、Caché のパフォーマンスを向上するため、それらの値を大きくしてください。
-
pending disk I/Os blocked with no pbuf
-
paging space I/Os blocked with no psbuf
-
filesystem I/Os blocked with no fsbuf
-
client filesystem I/Os blocked with no fsbuf
-
external pager filesystem I/Os blocked with no fsbuf
これらのパラメータを既定値より大きくする場合は、以下の手順に従ってください。
-
現在の値を 50% 大きくします。
-
vmstat 出力を確認します。
-
2 分間隔で、vmstat を 2 回実行します。
-
フィールドがまだ増大している場合は、もう一度、パラメータ値を同じ割合だけ大きくして、上記の手順に従います。vmstat を 2 回実行したとき、フィールドが増大しなくなるまで繰り返してください。
I/O パターンは時間の経過と共に変化する可能性があるので、現在値と再起動値の両方を変更し、vmstat 出力を定期的 (時間単位、日単位、または週単位) に確認します。
詳細は、IBM の以下の Web ページを参照してください。
-
vmstat によって出力される各フィールドの詳細は、以下の URL で "IBM AIX® コマンド・リファレンス 第 6 巻 (v から z)" の "vmstat コマンド" のページを参照してください。
-
これらのパラメータ値を大きくする方法については、以下の URL で "IBM AIX® パフォーマンス・マネージメント・ガイド" の "VMM ページ置換のチューニング" を参照してください。
-
I/O 調整可能パラメータの管理の詳しい説明は、以下の URL で "IBM AIX® コマンド・リファレンス 第 3 巻 (i から m)" の "ioo コマンド" のページを参照してください。
AIX® の調整可能パラメータ
以下に一覧表示されているパラメータは調整の必要がありません。これらのパラメータは、必要に応じて、カーネルによって動的に調整されます。詳細は、AIX® オペレーティング・システムのマニュアルOpens in a new tabを参照してください。
以下のテーブルは、IBM pSeries AIX® 5.2 オペレーティング・システムの調整可能なパラメータの一覧です。
Parameter (パラメータ) | 目的 | 動的値 |
---|---|---|
msgmax | 最大メッセージ・サイズを指定します | 最大値 4 MB |
msgmnb | キューでの最大バイト数を指定します | 最大値 4 MB |
msgmni | メッセージ・キュー ID の最大数を指定します | 最大値 4096 |
msgmnm | キューごとの最大メッセージ数を指定します | 最大値 524288 |
semaem | 終了の調整最大値を指定します | 最大値 16384 |
semmni | セマフォ ID の最大数を指定します | 最大値 4096 |
semmsl | ID ごとの最大セマフォ数を指定します | 最大値 65535 |
semopm | semop() 呼び出しごとの最大操作数を指定します | 最大値 1024 |
semume | プロセスごとの最大 undo エントリ数を指定します | 最大値 1024 |
semvmx | セマフォの最大値を指定します | 最大値 32767 |
shmmax | 共有メモリ・セグメントの最大サイズを指定します | 32 ビット・プロセスでは最大値 256 MB、64 ビットでは最大値 0x80000000u |
shmmin | 共有メモリ・セグメントの最小サイズを指定します | 最小値 1 |
shmmni | 共有メモリ ID の最大数を指定します | 最大値 4096 |
maxuproc は、root 以外の単独ユーザが開始可能なプロセスの最大数を指定する調整可能パラメータで、このサブセクションの説明に従って調整できます。
このパラメータの設定が低すぎると、プロセスの開始を試みるユーザがさらに増えた場合に、CSP ページの消失、バックグラウンド・タスクの失敗など、オペレーティング・システムのさまざまなコンポーネントで障害が起こる可能性があります。したがって、maxuproc パラメータは、root ユーザ以外 (インタラクティブ・ユーザ、Web サーバ・プロセスなど、プロセスを開始可能なものすべて) による開始が見込まれるプロセスの最大数よりも大きく設定する必要があります。
この値を過度に高く設定しないでください。この値には不必要に新規プロセスを作成し続ける暴走アプリケーションからサーバを保護する目的があります。しかし、設定が低すぎると不明な問題の原因になります。
maxuproc は予想される最大プロセス数の倍にして、エラーを起こさないだけの余裕をとりつつ、暴走プロセスから保護することをお勧めします。例えば、システムに 1000 人のインタラクティブ・ユーザがいて、頻繁に 500 個のバックグラウンド・プロセスを実行する場合、この値は最低でも 3000 を選択するとよいでしょう。
maxuproc 値は、コマンド行もしくは smit/smitty 管理者用ユーティリティのいずれかより、以下のように双方共に root ユーザとして検証および変更ができます。
-
コマンド行より、現在の設定を表示します。
# lsattr -E -l sys0 -a maxuproc
次に、以下のように値を変更します。
# chdev -l sys0 -a maxuproc=NNNNNN
ここで、NNNNNN は新規の値です。
-
管理者用ユーティリティ smit (または smitty) で、[システム環境]→[オペレーティングシステム特性の変更/表示]→[ユーザあたりの許容プロセス最大数] を選択します。
maxuproc の値を増やすと、変更は瞬時に有効となります。maxuproc の値を減らすと、変更は次回のシステムの再起動まで有効になりません。どちらの場合も、変更はシステムを再起動しても存続します。
Red Hat Linux プラットフォームの問題
このトピックには、以下の調整に関する情報が含まれます。
ロックインされたメモリ
Linux プラットフォームでは、ページングを防止するためにメモリ内で共有メモリ・セグメントをロックするように Caché を構成できます。詳細は、"Caché パラメータ・ファイル・リファレンス" の "memlock" の項を参照してください。共有メモリがヒュージ・ページに割り当てられている場合、それらはメモリ内で自動的にロックされます (それ以上の操作は必要ありません)。それ以外の場合は、メモリ内にロックされる可能性のある最大サイズを増やす必要があります。既定値は 32 KB です。現在の値を表示するには、ulimit コマンドを使用します。
例えば、現在の制限値をすべて表示するには、以下のようにします。
bash$ ulimit -a
core file size (blocks, -c) unlimited
data seg size ( KBytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) 1024
max locked memory (KBytes, -l) 32 <---------- THIS ONE
max memory size (KBytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
stack size ( KBytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 49000
virtual memory ( KBytes, -v) unlimited
file locks (-x) unlimited
max-locked memory のみ表示するには、-l オプションを使用します。
bash$ ulimit -l
32
権限を持っていれば、ulimit コマンドを使用して直接値を変更できますが、/etc/security/limits.conf ファイルで memlock パラメータを更新することをお勧めします。memlock の制限値が小さすぎる場合、Linux から ENOMEM (メモリ不足) エラーが表示されますが、これでは原因が明らかになりません。実際にメモリは割り当てられています。エラーを起こしているのはロックなのです。
詳細は、"Caché パラメータ・ファイル・リファレンス" の "memlock" を参照してください。
Caché の共有メモリに対して Linux ヒュージ・ページを使用することにより、同じ効果が得られます。詳細は、この章の "メモリ要件の計算" のセクションにある "“Linux での大規模なメモリ・ページのサポート”" のセクションを参照してください。
多数の同時プロセスの調整
多数のプロセスまたは Telnet ログインを必要とするシステムを実行する場合は、以下の調整を行う必要があります。
-
/etc/xinetd.d/telnet ファイルに、以下の行を追加します。
instances = unlimited
-
/etc/xinetd.conf ファイルで、インスタンスの設定を以下のように追加または変更します。
instances = unlimited
-
これらの変更が完了したら、以下のコマンドを使用して xinetd を再起動します。
# service xinetd restart
-
既定の pty (擬似ターミナル接続) 制限は 4096 です。これでも足りない場合は、/etc/sysctl.conf ファイルに最大 pty 行を追加するか変更します。以下はその例です。
kernel.pty.max=10000
ダーティ・ページのクリーンアップ
(例えば 8 GB 以上の) 大規模なメモリ・システムでは、フラット・ファイルを何度も書き込む場合 (例えば Caché のバックアップやファイル・コピーなど)、proc/sys/vm/ に格納されている以下のパラメータを調整することにより、パフォーマンスを向上させることができます。
-
dirty_background_ratio — pdflush が書き込みを開始するまでに、ダーティ・ページで満たすことのできるアクティブの最大割合。このパラメータは 5 に設定することをお勧めします。
-
dirty_ratio — より多くの書き込みが許可される代わりに、タイム・スライス間のダーティ・バッファを書き込むプロセスが強制されるまでに、ダーティ・ページで満たすことのできる合計メモリの最大割合。このパラメータは 10 に設定することをお勧めします。
これらの変数は、/etc/sysctl.conf ファイルに以下を加えることで設定できます。
vm.dirty_background_ratio=5 vm.dirty_ratio=10
これらの変更は、Linux pdflush デーモンに対して、大量の更新バーストでストレージが溢れる可能性のある大量の更新をキューに入れるより頻繁に、ダーティ・ページへの書き出しを強制するものです。
Oracle Solaris プラットフォームの問題
稼動環境に必要なデータベース・キャッシュのサイズによっては、共有メモリ・カーネル・パラメータの増分が必要となる場合があります。Solaris の調整可能パラメータの固有の情報については、"Solaris Tunable Parameters Reference ManualOpens in a new tab" を参照してください。
Solaris リリース 10 では、IPC 共有メモリ・パラメータの調整に /etc/system メカニズムを使用しなくなりました。現在、これらは自動的に割り当てられます。または、リソース制御メカニズムを使用して構成します。
Solaris 10 で /etc/system を使用すると、以下のようなメッセージが表示されます。
* IPC Shared Memory * * The IPC Shared Memory module no longer has system-wide limits. * Please see the "Solaris Tunable Parameters Reference Manual" for * information on how the old limits map to resource controls and * the prctl(1) and getrctl(2) manual pages for information on * observing the new limits.
rctladm、prctl、および projects コマンドを使用して Solaris 10 のパラメータを設定する方法については、Oracle の Web サイトで、"システム管理ガイド-Oracle Solaris コンテナ : 資源管理と Oracle Solaris ゾーンOpens in a new tab" の “第 6 章 資源制御 (概要)” を参照してください。
以下のサブセクションは、Solaris ZFS ファイルシステムで信頼性の高い Caché の配置を行うための、重要な構成上および調整上のガイドラインをまとめたものです。
推奨する最小の Solaris バージョンは Solaris 10 10/08 です。これには、ZFS に関連するいくつかの主要なパッチが含まれています。
一般的な ZFS 設定
/etc/system ファイルに記述されている一般的な ZFS パラメータは以下のように調整できます。
-
zfs_arc_max
ZFS Adaptive Replacement Cache (ARC) は、システムで使用可能なメモリのほとんどを使用してファイル・システム・データをキャッシュしようとします。既定では、1GB を除くすべての物理メモリを使用します。メモリが不足してくると、ARC はメモリを放棄します。Caché のパフォーマンスを最適化できるように、この ARC が使用するメモリ量を少なくする必要があります。
一般的に、この量は使用可能な RAM の約 10 ~ 20 % に制限する必要があります。したがって、システムに 32GB の RAM を搭載している場合は、/etc/system ファイルに以下の行を追加して、このメモリ量を 3.2GB (10 %) または 6.4GB (20 %) に設定します。
-
3.2GB :
set zfs:zfs_arc_max=3435973837
-
6.4GB :
set zfs:zfs_arc_max=6871947674
-
-
zfs_immediate_write_sz
ZFS Intent Log (ZIL) は、書き込み操作を記録するログ・ファイルで、データ整合性の観点から ZFS インフラストラクチャに統合されています。ZIL は書き込みサイズによって異なる動作をします。サイズが小さい場合は、データそのものがログ・レコードとして保存されます。データが大きい場合、ZIL は書き込みのコピーを保存せず、書き込みをディスクに同期させて、同期させたデータへのポインタのみをログ・レコードに保存します。大規模な書き込みとして扱うサイズの値は zfs_immediate_write_sz 構成項目で定義し、既定値は 32KB です。
Oracle では、大規模な書き込みがあると、クラッシュから回復する際にデータ整合性の問題が生じる場合があることを表明しています。特に、ログ・レコードに保存した同期データへのポインタが破壊され、リカバリが不可能になる場合があります。
このリカバリ問題による影響を抑えるため、Oracle では暫定的な対応策を公表しています。この対応策は、/etc/system ファイルに以下の行を追加することで構成できます。
set zfs:zfs_immediate_write_sz=0x20000
この行では、大規模な書き込みを既定の 32KB ではなく 128KB と定義し、128KB までのすべての書き込みが強制的にログ・レコードに書き込まれるようにします。
/etc/system ファイルの更新を有効にするには再起動が必要です。
ZFS プールの構成および設定
プールおよびファイル・システムの作成および管理で使用する関連コマンドの詳細は、"Solaris ZFS Administration GuideOpens in a new tab" を参照してください。さらに、以下の操作を実行する必要があります。
-
全般的なオプション
構成済みのすべての ZFS プールおよび ZFS ファイル・システムで、アクセス時間の更新 (atime) をオフにします (atime=off)。
以下のようにレコード・サイズを構成します。
-
データベース・プール/ファイル・システム : 8K (recordsize=8K)
Note:ラージ (つまり、8 KB よりも大きい) ブロック・サイズのデータベースを使用する場合には、データベース・プールまたはファイル・システムを更新してブロック・サイズを一致させます。ラージ・ブロック・サイズに関する詳細は、"Caché システム管理ガイド" の “Caché の構成” の章にある "データベースの構成" セクションの “ラージ・ブロック・サイズに関する注意事項” を参照してください。
-
ジャーナル・プール/ファイル・システム : 64K (recordsize=64K)
-
ライト・イメージ・ジャーナル・プール/ファイル・システム : 128K (recordsize=128K)
-
-
ZIL の分離
ZIL は、ZIL 以外のプールとは別のデバイス (LUN) に配置できます。ZFS の既定の構成では、ZIL は他のプールと同じデバイス (LUN) に配置されます。ZIL を専用のデバイス上に分離することにより、特に Caché ジャーナリングで大幅なパフォーマンスの向上を図ることができます。
ZIL は、いつでも別のデバイスに配置できますが、プールの作成時に以下の行を追加することをお勧めします。
# zpool create <pool> <pool_devices> log <log_devices>
その他の ZIL 固有コマンドの詳細は、Web サイト "http://blogs.sun.com/perrin/entry/slog_blog_or_blogging_onOpens in a new tab" を参照してください。
その他の Solaris 設定
ドライバは、物理 I/O 要求の最大サイズ (maxphys) より大きな要求を検出すると、この要求をサイズが maxphys の複数のチャンクに分割します。Solaris SPARC の実装ではこの値を指定する必要はありませんが、Solaris x64 システムでは明示的に構成する必要があります。
物理 I/O 要求の最大サイズを構成するには、/etc/system ファイルに以下の行を追加します。
set maxphys=1048576
SUSE Linux プラットフォームの問題
このトピックには、以下の調整に関する情報が含まれます。
ロックインされたメモリ
Linux プラットフォームでは、メモリ内で共有メモリ・セグメントをロックしてページングを防止するように Caché を構成できます。詳細は、"Caché パラメータ・ファイル・リファレンス" の "memlock" の項を参照してください。共有メモリがヒュージ・ページに割り当てられている場合、それらはメモリ内で自動的にロックされます (それ以上の操作は必要ありません)。それ以外の場合は、この付録の "Red Hat Linux プラットフォームの問題" にある "ロックインされたメモリ" のセクションを参照してください。
特別な考慮事項
このセクションでは、プラットフォーム固有の問題、インストールの種類に関する特定の問題やタスクについて説明します。
ユーザ・プロセスの最大数に関する推奨事項
指定のユーザのすべての Caché プロセスおよびその他の既定のプロセスを実行する上で十分な最大プロセス数を maximum user processes に設定します。
ジャーナル・ファイル・システムの推奨事項
最適なジャーナル・パフォーマンスを実現し、システムがクラッシュしたときにジャーナル・データの整合性を確保するために、インターシステムズはジャーナル・ファイルに適用するさまざまなファイル・システムとマウント・オプションを推奨しています。プラットフォームごとの詳細は、"Caché データ整合性ガイド" の “ジャーナリング” の章にある "UNIX® ファイル・システムの推奨事項" のセクションを参照してください。
HP-UX 特別な考慮事項
構成の詳細は、“Caché のインストールの準備” の章にある "HP-UX プラットフォームの問題" のセクションを参照してください。
プロセッサ
推奨のプロセッサ要件は以下のとおりです。
-
最大インターリービングでメモリを構成してください。
大半のシステムでは、すべての DIMM スロットに同サイズの DIMM を取り付ける必要があります。ルールの詳細については、個々のプラットフォームのドキュメントを参照してください。
-
マルチセル・システムでは、セル・ローカル・メモリなしで構成してください。
-
最低 1.5* 物理メモリ相当のスワップ領域を構成してください。
-
最新のファームウェアが必要になります。
ソフトウェアおよびパッチ
最低限のソフトウェア要件は以下のとおりです。
-
HP-UX 11.23 または 11.31
-
11i v2 の MCOE
-
最新補足パッチすべて (SWA使用にてチェックすること)
-
SecurePath、PowerPath、またはネイティブ 11i v3 ファイバー・チャネル・マルチパス
-
HP-UX Software Assistant (SWA)
-
Glance
-
kcmond を無効にします (kcalarm -m off)。
すべてのサービス・パックおよびパッチは、IT Resource Center (ITRC) の次の URL からダウンロードできます。http://h20566.www2.hp.com/portal/site/hpsc/public/Opens in a new tab
ストレージ
LUN を以下のように構成してください。
-
ジャーナル LUN — 小型 (1 - 4 KB までのブロック・サイズ) の単一ストリーム連続順次書き込みの高速処理に対して最適化 (高 IOPS)
(RAID1+0、パリティなしの RAID)
-
WIJ LUN — 大型 (256 KB ブロック・サイズ) の単一ストリーム順次書き込みバーストの高速処理に対して最適化
(RAID1+0、パリティなしの RAID)
-
データベース LUN(s) — ランダム 8 KB 読み取り/書き込みに対して最適化
(RAID1+0 最優先)
-
インストールおよび必要な SecurePath/PowerPath 等の他の LUN は、負荷を分散するように構成する必要があります。その際、可能であれば SST (最短サービス時間) アルゴリズムを使用し、不可能の場合は優先パスを使用します。
パフォーマンスと復元可能性を高めるために、プライマリおよび代替ジャーナル・ディレクトリは、それぞれ異なるストレージ・デバイスに配置し、データベースやライト・イメージ・ジャーナル (WIJ) が使用しているストレージ・デバイスとも異なるストレージ・デバイスに配置することをお勧めします。運用上の理由から、同じ SAN (Storage Area Network) 上の論理ユニット番号 (LUN) が異なるデバイスに配置することもできますが、一般的にはなるべく独立したデバイスに配置するようにします。物理ドライブの個別のセットを使用することを強くお勧めします。リカバリのためにジャーナルの可用性を確保することに関する重要な情報については、このドキュメントの “ジャーナリング” の章の "ジャーナリングの最善の使用方法" を必ず参照してください。
LVM/VxVM
LVM/VxVM の削除は使用しないでください。ファイルシステムで複数の LUN を使用する必要がある場合、連結を使用します。また、削除が必要な場合、エクステント・ベースの削除のみを使用します。可能であれば、LVM/VxVM ミラーリングは回避してください。
ファイル・システム (VxFS)
以下より、個々のファイルシステムが最低 3 つ必要です。
-
ライト・イメージ・ジャーナル (CACHE.WIJ) およびデータベース
-
プライマリおよび代替ジャーナル・ディレクトリ
-
必須インストールなど
ソフトウェア・インストール・ディレクトリは、WIJ ファイルシステムに含まれる場合があります。すべてのファイルシステムは、mkfs -F vxfs -o bsize=8192,largefiles [special] で作成する必要があります。
以下の行を含む /etc/vx/tunefstab を作成します。
[block-device for wij] discovered_direct_iosz=512K,\
write_pref_io=256K,max_diskq=1M,max_buf_data_size=64K
[block-device for DBfs1] max_diskq=16M
[block-device for DBfs2] max_diskq=16M
.
.
.
ファイルには、ファイルシステムのマウントに使用する /dev/... 特殊デバイス・ファイルが格納されている必要があります。これはファイルシステム自体へのパスではありません。
マウント・オプション "delaylog,largefiles" を使用して、すべてのファイルシステムをマウントします。VxFSV5 の場合は、マウント・オプション "noqio" も含めます。
WIJ には DirectIO (マウント・オプション "mincache=direct,convosync=direct") を使用しないでください。DirectIO (または VxFSV5 の Concurrent IO) は、データベース・ファイル・システムで使用する場合がありますが、書き込み性能に影響して負荷が重くなり (バッチ更新時など)、問題が発生することがあります。詳細は、このドキュメントの “一般的なファイル・システムおよびディスク/ストレージ・サブシステムの構成における推奨事項” の章の "UNIX®/Linux プラットフォームのファイル・システムのマウント・オプション" を参照してください。
HP-UX pwgrd デーモン
HP-UX ディストリビューションは、ネットワーク・クエリからパスワードおよびグループ情報をキャッシュに保存するデーモン (pwgrd) を実行します。インターシステムズでは pwgrd を明示的に有効にも無効にもしませんが、9/2008 リリースの HP-UX 11iV3 より前のバージョンでは、pwgrd が既定で有効にされていました。このバージョン以降では既定で無効化されています。pwgrd が無効な場合に、ネットワーク・ユーザをインスタンス所有者として Caché をインストールすると、chown: unknown user id integ というエラーが発生する可能性があります。このエラーが発生しないようにするには、pwgrd を有効にする必要があります。
HP-UX Kerberos クライアントの要件
HP-UX 11i プラットフォームで Kerberos を正常に動作させるには、Kerberos クライアント (KRB5CLIENT) バージョン 1.3.5 が必要になります。このバージョンが含まれている HP-UX 11i v2 への最新のアップグレードを実施していることを確認してください。HP-UX 11i v3 には、適切なクライアント・バージョンが組み込まれています。
HP-UX 乱数ジェネレータ
Caché の暗号乱数ジェネレータで真のエントロピーを実現するには、 HP-UX Strong Random Number Generator コンポーネントが必要です。HP-UX 11i v2 には、このコンポーネントは既定で含まれています。
HP-UX fastbind の要件
Caché のインストール後、HP-UX で cache バイナリを再リンクする場合や HP-UX をアップグレードする場合は、install-dir\bin ディレクトリの cache バイナリで以下のコマンドを実行します。
$ /usr/css/bin/fastbind ./cache
HP-UX chown の要件
HP-UX のファイルとディレクトリのアクセス権限を制限することをお勧めします。以下はその方法です。
-
以下の行を /etc/privgroup ファイルに追加します。
-n CHOWN
-
これを実行したら、次の 2 つのいずれかのアクションを実行します。
-
setprivgrp -f /etc/privgroup を実行します。
-
システムを再起動します。
-
IBM AIX® 特別な考慮事項
一部の AIX® パラメータの既定の設定は、パフォーマンスに悪影響を及ぼす可能性があります。設定および推奨事項の詳細は、“Caché のインストールの準備” の章にある "AIX® プラットフォームの問題" のセクションを参照してください。
システム要件
現在のシステム要件については、このリリース用のオンライン・ドキュメント "インターシステムズでサポートされるプラットフォームOpens in a new tab" の “サポート対象テクノロジ” の章を参照してください。
必須の C/C++ ランタイム・ライブラリ
Caché をインストールする前に、必須の C/C++ ランタイム・ライブラリが IBM AIX® システムにインストールされていることを確認する必要があります。
Caché for AIX は、IBM XL C/C++ for AIX 13.1 コンパイラを使用してコンパイルされます。Caché のインストール先のシステムに、既にインストールされているランタイムに対応するバージョンがない場合、ランタイム・パッケージ IBM_XL_CPP_RUNTIME_V13.1.0.0_AIX.tar.Z から次の 3 つのランタイム・ファイル・セットをインストールする必要があります。
-
xlC.aix61.rte 13.1
-
xlC.rte 13.1
-
xlC.msg.en_US.rte 13.1
これらのファイルが存在しない場合、Caché インストールは完了しません。
このパッケージのダウンロードについての詳細は、"IBM XL C/C++ Runtime for AIX 13.1Opens in a new tab" から入手できます。
Caché エンジン・リンク・ライブラリに対する共有ライブラリ環境変数
Caché エンジン・リンク・ライブラリには、インストールされたすべての C リンカーを参照するバッチ・ファイルが含まれています。
標準 UNIX® C ライブラリまたは独自の C ライブラリを LIBPATH 環境変数で定義した環境が必要です。
このような定義がない環境では、標準 UNIX® C ライブラリのパスである /usr/lib と /lib を LIBPATH に追加します。
Raw Ethernet の使用法
Raw Ethernet を使用するには、IBM AIX® マシンに DLPI (データ・リンク・プロバイダ・インタフェース) パッケージがインストールされている必要があります。マシンに DLPI パッケージがない場合、IBM プロバイダから取得し、以下の手順に従って DLPI デバイスを作成してください。
-
root としてログインします。
-
/etc/pse.conf ファイルの PSE ドライバ・セクションで、DLPI ドライバを参照している 4 行をアンコメントします。
-
ファイルを保存します。
-
コンピュータを再起動します。
DLPI デバイスがインストールされていない場合、%SYSTEM.INetInfoOpens in a new tab クラスの EthernetAddress() メソッドは、イーサネット・デバイスの情報ではなく、NULL 文字列を返します。
Red Hat Linux 特別な考慮事項
以下の考慮事項がご使用の環境に該当する場合があります。
-
Linux プラットフォームでの、既定の共有メモリ制限 (shmmax) は、32 MB です。これは、Caché をインストールまたは実行するためには少なすぎます。インストールに失敗した場合は、proc ファイル・システムでインタラクティブに値を変更して (詳細は、"UNIX®、Linux、および macOS 用のシステム・パラメータの計算" の "Red Hat Linux プラットフォームの問題" を参照)、Caché を再インストールします。新しいメモリ制限は、Red Hat Linux システムを再起動するまで維持されます。
また、/etc/sysctl.conf ファイルを編集することで値を永続的に変更できます。この場合は、新しい値を有効にするために、Red Hat Linux システムを再起動する必要があります。
-
十分なヒュージ・ページが使用できる Linux プラットフォームでは、Caché の共有メモリ・セグメントがヒュージ・ページ・プールから割り当てられます。ヒュージ・ページを使用した結果として得られるメリットは、Caché の共有メモリ・セグメントがメモリ内にロックされ、そのページがページ・アウトされなくなることです。ヒュージ・ページの割り当てに関する詳細は、この章の "メモリ要件の計算" のセクションにある "“Linux での大規模なメモリ・ページのサポート”" のセクションを参照してください。
-
Red Hat Linux プラットフォームで Kerberos を使用するには、krb5-libs パッケージに加えて krb5-devel パッケージもインストールする必要があります。krb5-devel をインストールすると、Kerberos を使用するために必要なシンボリック・リンクが設定されます。このパッケージは、開発環境だけでなく、実稼働環境にも必要です。これらのコンポーネントの詳細は、Red Hat NetworkOpens in a new tab Web サイトを参照してください。
-
Red Hat Enterprise Linux V4 で MQ インタフェースを使用するには、Websphere MQ バージョン 7.0 が必要です。
Oracle Solaris 特別な考慮事項
Solaris SPARC リリース 10 で Kerberos を使用するには、2 つのパッチ ID (120469-03 と 121239-01) が必要です。これらのパッチは Oracle のサポート Web サイトからダウンロードできます。
イーサネット・アダプタが root ユーザ以外のユーザによるアクセスに対して保護されている場合、root ユーザ以外のユーザが %SYSTEM.INetInfoOpens in a new tab クラスの EthernetAddress() メソッドを呼び出すと、イーサネット・デバイスに関する情報ではなく、NULL 文字列が返されます。
非グローバル・ゾーンで Caché をインストールする場合は、以下の構成手順を別途実行する必要があります。
この手順は、グローバル・ゾーンで実行する必要があります。
-
以下の手順で、非グローバル・ゾーンの /usr/bin サブディレクトリと /usr/local サブディレクトリに書き込み許可を付与します。
-
以下の例のように、書き込み許可を持つサブディレクトリをグローバル・ゾーンに作成します。
bash-3.00# mkdir -p /export/zones/test-zone/local bash-3.00# mkdir -p /export/zones/test-zone/bin bash-3.00# chmod 700 /export/zones/test-zone/local bash-3.00# chmod 700 /export/zones/test-zone/bin
-
以下の例のように、上記でグローバル・ゾーンに作成したサブディレクトリを使用できるように、読み取りと書き込みの許可を持つ /usr/bin サブディレクトリと /usr/local サブディレクトリを非グローバル・ゾーンで構成します。
bash-3.00# zonecfg -z test-zone zonecfg:test-zone> add fs zonecfg:test-zone:fs> set dir=/usr/local zonecfg:test-zone:fs> set special=/export/zones/test-zone/local zonecfg:test-zone:fs> set type=lofs zonecfg:test-zone:fs> set options=[rw,nodevices] zonecfg:test-zone:fs> end zonecfg:test-zone> verify zonecfg:test-zone> commit zonecfg:test-zone> exit bash-3.00# zonecfg -z test-zone zonecfg:test-zone> add fs zonecfg:test-zone:fs> set dir=/usr/bin zonecfg:test-zone:fs> set special=/export/zones/test-zone/bin zonecfg:test-zone:fs> set type=lofs zonecfg:test-zone:fs> set options=[rw,nodevices] zonecfg:test-zone:fs> end zonecfg:test-zone> verify zonecfg:test-zone> commit zonecfg:test-zone> exit
-
以下の例のように、非グローバル・ゾーンで新しく作成した /usr/bin サブディレクトリにすべてのバイナリをコピーして、非グローバル・ゾーンが正常に起動することを確認します。
bash-3.00# cp -rp /usr/bin/* /export/zones/test-zone/bin
-
-
ECP 接続が非グローバル・ゾーンで正常に機能するためには、以下の例のように、proc_priocntrl 特権をこのゾーンで指定しておく必要があります。
bash-3.00# zonecfg -z test-zone zonecfg:test-zone> set limitpriv=”default,proc_priocntl” zonecfg:test-zone> verify zonecfg:test-zone> commit zonecfg:test-zone> exit
詳細は、“Caché のインストールの準備” の章にある "Oracle Solaris プラットフォームの問題" のセクションを参照してください。
SUSE Linux 特別な考慮事項
以下の考慮事項がご使用の環境に該当する場合があります。
-
SUSE Linux プラットフォームでの、既定の共有メモリ制限 (shhmax と shmall) は Caché にとって小さすぎます。この制限は、再起動しなくても proc ファイル システム内で変更できます。
-
十分なヒュージ・ページが使用できる Linux プラットフォームでは、Caché の共有メモリ・セグメントがヒュージ・ページ・プールから割り当てられます。ヒュージ・ページを使用した結果として得られるメリットは、Caché の共有メモリ・セグメントがメモリ内にロックされ、そのページがページ・アウトされなくなることです。 ヒュージ・ページの割り当てに関する詳細は、この章の "メモリ要件の計算" のセクションにある "“Linux での大規模なメモリ・ページのサポート”" のセクションを参照してください。
-
SUSE Linux プラットフォームで Kerberos を使用するには、krb5-libs パッケージに加えて krb5-devel パッケージもインストールする必要があります。krb5-devel をインストールすると、Kerberos を使用するために必要なシンボリック・リンクが設定されます。このパッケージは、開発環境だけでなく、実稼働環境にも必要です。これらのコンポーネントの詳細は、SUSE documentationOpens in a new tab の Web サイトを参照してください。
構成の詳細は、“Caché のインストールの準備” の章にある "SUSE Linux プラットフォームの問題" のセクションを参照してください。
macOS に関する考慮事項
cinstall スクリプト・プロシージャについては、このドキュメントの "UNIX®、Linux、および macOS への Caché のインストール" の章にある “Caché の UNIX® インストール” のセクションを参照してください。