インストールの構成パラメータ
Oracle NoSQL Databaseを構成する前に、データ・ストア内の各ストレージ・ノードについて次のパラメータを決定する必要があります。これらのパラメータはそれぞれ、makebootconfig
ユーティリティで使用するディレクティブです。
-
root
KVROOTディレクトリの場所。KVROOTディレクトリには、データ・ストアのデータとセキュリティ関連情報が格納されます。各ストレージ・ノードに、データ・ストアに格納されるデータを保持するのに十分なディスク領域が必要です。storagedirパラメータを使用してKVROOTディレクトリ以外の場所にデータを格納する場合、KVROOTディスク領域要件を少なくできます。KVROOTディレクトリを各ストレージ・ノードで同じローカル・ディレクトリ・パスにすることをお薦めします(ただし、共有ディレクトリやNFSマウントされたディレクトリは使用しないでください)。
-
port
ストレージ・ノードがOracle NoSQL Databaseに接続するために使用するTCP/IPポート。このポートは各ストレージ・ノードで空いている(未使用である)必要があります。すべての例で使用されるデフォルト・ポートは5000です。このポートは、レジストリ・ポートと呼ばれる場合もあります。
-
harange
レプリケーション・ノードと管理プロセスは、harange (高可用性範囲)ポートを使用して相互に通信します。データ・ストア内のストレージ・ノードごとに、連続するポート番号を指定します。ストレージ・ノード上のレプリケーション・ノードごとにポートを1つずつと、ストレージ・ノードが管理をホストする場合は追加ポートを指定します。ポート範囲は
startPort,endPort
のように指定します。 -
servicerange
ストレージ・ノードが他の管理サービスおよびその管理対象サービスとの通信に使用するポートの範囲。一部の管理対象サービスは、すべてのストレージ・ノードのレプリケーション・ノードです。このオプションのパラメータは、ストレージ・ノードのサービスがファイアウォールまたはその他のセキュリティ上の目的に特定のポートを使用する必要がある場合に役立ちます。デフォルトでは、サービスは匿名ポートを使用します。ポート範囲は
startPort,endPort
のように指定します。詳細は、ストレージ・ノード・パラメータを参照してください。 -
store-security
セキュリティを使用するかどうかを指定します。これはオプションのパラメータですが、セキュリティを有効にしてOracle NoSQL Databaseを構成することをお薦めします。
none
を指定すると、セキュリティは使用されません。
を指定すると、セキュア・データ・ストアを構成することを示します。その後、configure
makebootconfig
プロセスによって、securityconfig
ユーティリティがその操作の一部として起動されます。enable
を指定すると、セキュリティが使用されることを示します。ただし、セキュリティ構成ユーティリティ(securityconfig
)を使用してセキュリティを明示的に構成するか、前に作成したセキュリティ構成を別のシステムからコピーする必要があります。ノート:
-store-security
パラメータを指定しない場合、デフォルトでセキュリティが構成されます。セキュア・インストールを完了するには、ストレージ・ノード・エージェントを起動する前に、securityconfig
ユーティリティを使用してセキュリティ・フォルダを作成する必要があります。 -
capacity
ストレージ・ノードがサポートできるレプリケーション・ノードの総数。capacityはオプションですが、レプリケーション・ノードの数を表す非常に重要なパラメータです。構成しているストレージ・ノードに、複数のレプリケーション・ノードをサポートするリソースがある場合は、capacityの値を適切な数に設定します。レプリケーション・ノードを正常にホストして実行時間のピーク需要を処理するには、十分なディスク、CPU、メモリーおよびネットワーク帯域幅が必要です。
ストレージ・ノードでアービタ・ノードをホストするには、capacityを
0
に設定します。容量0のストレージ・ノードは、必要に応じてアービタ・ノードとして割り当てられます。詳細は、アービタ・ノードが有効なトポロジのデプロイを参照してください。capacityが1より大きいストレージ・ノードについては、次の構成設定を検討してください。
-
マシンで使用可能なディスクの数と等しいcapacityを指定して各ストレージ・ノードを構成することをお薦めします。このような構成では、各レプリケーション・ノードを独自のディスクに配置できるため、ストレージ・ノード上のレプリケーション・ノードがI/Oリソースを奪い合うことがなくなります。
–storagedir
パラメータを使用すると、各レプリケーション・ノード・ディスクのディレクトリの場所を指定できます。たとえば:
> java -Xmx64m -Xms64m \ -jar $KVHOME/lib/kvstore.jar makebootconfig \ -root /opt/ondb/var/kvroot \ -port 5000 \ -host node10 -harange 5010,5025 \ -capacity 3 \ -admindir /disk1/ondb/admin01 \ -admindirsize 5000_MB \ -storagedir /disk1/ondb/data \ -storagedir /disk2/ondb/data \ -storagedir /disk3/ondb/data \ -storagedirsize 1_tb \ -rnlogdir /disk1/ondb/rnlog01 \ -rnlogdir /disk2/ondb/rnlog02 \ -rnlogdir /disk3/ondb/rnlog03
ここで、
-capacity 3
は、ストレージ・ノード(node10
)のレプリケーション・ノードの数を表します。3つのレプリケーション・ノードが対応するディスク(disk1
、disk2
、disk3
)にあります。 -
レプリケーションおよび管理ノードで必要な追加ポートをサポートする場合は、
–harange
パラメータを増やします。 -
レプリケーション・ノードで必要な追加ポートを考慮する場合は、
–servicerange
パラメータを増やします。
容量の値を指定しない場合、デフォルトで
1
に設定されます。 -
-
storage-type
ストレージディレクトリが存在するディスクのタイプを指定します。ストレージ・タイプはストレージ・ノードにのみ指定でき、レプリケーション・ノードには指定できません。1つのストレージ・ノードに対してこのパラメータの値を1つ設定できます。有効な値は、HD、SSD、NVMEおよびUNKNOWNです。ノート:
パラメータstoragedir
およびstoragedirsize
はすべてのレプリケーション・ノードに固有ですが、storage-typeはストレージ・ノードに固有です。 -
admindir
ストレージ・ノードの管理プロセスに関連付けられた環境を格納するディレクトリ・パス。
管理ディレクトリ・パスが別個のディスクに解決されるようにすることをお薦めします。そのためには、
/etc/fstab
ディレクトリに適切なエントリを作成して、ディスク上のファイル・システムをディレクトリ階層全体の適切な場所にアタッチします。管理環境を別個のディスクに配置すると、管理がI/Oリソースを奪い合うことがなくなります。また、ディスク障害の影響が単一の環境にとどまります。-admindir
について明示的なディレクトリ・パスを指定しない場合、管理環境のファイルは次のディレクトリに配置されます。$KVROOT/KVSTORE/<SNID>/<AdminId>/
-
admindirsize
管理ストレージ・ディレクトリのサイズ。これはオプションですが、入力することをお薦めします。詳細は、管理ディレクトリ・サイズの管理を参照してください。
-
storagedir
レプリケーション・ノードに関連付けられた環境が含まれるディレクトリ・パス。
–capacity
パラメータが1より大きい場合、ストレージ・ノードがホストするレプリケーション・ノードごとに1つずつ、複数の–storagedir
パラメータ値セットを指定することをお薦めします。各ディレクトリ・パスが別個のディスクに解決される必要があります。そのためには、/etc/fstab
ディレクトリに適切なエントリを作成して、ディスク上のファイル・システムをディレクトリ階層全体の適切な場所にアタッチします。各環境を別個のディスクに配置すると、シャードがI/Oリソースを奪い合うことがなくなります。また、ディスク障害の影響が単一の場所にとどまります。 -
storagedirsize
それぞれのストレージ・ディレクトリのサイズ。各レプリケーション・ノードについてこのパラメータを指定することをお薦めします。Oracle NoSQL Databaseでは、ストレージ・ディレクトリ・サイズを使用して、ディスク使用量が強制的に制限されます。そのために、
–storagedirsize
パラメータ値を使用して、書込みアクティビティを一時停止するまでにディスク上に格納されるデータの量が計算されます。詳細は、ストレージ・ディレクトリ・サイズの管理を参照してください。 -
rnlogdir
レプリケーション・ノードに関連付けられたログ・ファイルを格納するディレクトリ・パス。capacity値が1より大きい場合、ストレージ・ノードがホストしているレプリケーション・ノードごとに1つずつ、複数の
rnlogdir
パラメータを指定します。各
rnlogdir
パスがレプリケーション・ノード上の別個のディスク・パーティションに解決されるようにすることをお薦めします。そのためには、/etc/fstab
ディレクトリに適切なエントリを作成して、ディスク上のファイル・システムをディレクトリ階層全体の適切な場所にアタッチします。rnlogdir
をレプリケーション・ノード上の異なるパーティションに配置すると、データ・ストア・ログ・ファイルを含むパーティションが満杯になった場合でも、メトリックやエラーをレポートおよび保持できます。また、異なるパーティションでrnlogdir
を分離すると、kvroot
のディスク障害によってレプリケーション・ノードのすべてのログ・ファイルが失われるという影響がなくなります。rnlogdir
の場所を指定しない場合、ログはデフォルトで$KVROOT/KVSTORE/log
ディレクトリに置かれます。 -
num_cpus
レプリケーション・ノードで使用できるマシン上のプロセッサの総数です。これはオプションのパラメータで、レプリケーション・ノード間でプロセッサの使用を調整するために使用されます。値が
0
の場合、システムはストレージ・ノードに問い合せて、マシン上のプロセッサ数を特定します。num_cpus
のデフォルト値は0
で、このドキュメントの例ではその値を使用します。 -
memory_mb
レプリケーション・ノードで使用可能なメモリーの合計MB数。システムでは、
memory_mb
値を使用して、レプリケーション・ノードのヒープ・サイズとキャッシュ・サイズが指定されます。ストレージ・ノードが複数のレプリケーション・ノードをホストし、これらのプロセス間でメモリーを割り当てる必要がある場合、この計算はより重要です。値が0
の場合、システムはレプリケーション・ノード上のメモリー容量を特定しようとします。memory_mb
のデフォルト値は0
で、このドキュメントの例ではその値を使用します。 -
force
システムに対する構成の検証によって、不正確なパラメータが検出された場合でも、コマンドがブート構成ファイルを生成することを指定します。つまり、前述のいずれかのパラメータの値(port、harangeなど)が不正確であっても、ブート構成ファイルを強制的に作成します。
詳細は、makebootconfigを参照してください。