Skip to main content
Enterprise applications
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

Linux の場合

共同作成者 kaminis85

ASA r2 ONTAPを搭載した Linux OS に固有の設定トピック。

メモ

Linux (Oracle Linux、RHEL、SUSE) は、Oracle データベース用のASA r2 でサポートされています。SAN プロトコルを使用し、マルチパスを正しく構成し、ASM および I/O チューニングに関する Oracle のベスト プラクティスを適用します。

I/Oスケジューラ

Linuxカーネルでは、ブロックデバイスへのI/Oのスケジュール方法を低レベルで制御できます。デフォルト値はLinuxのディストリビューションによって大きく異なります。テストでは、通常はDeadlineが最良の結果を提供することが示されていますが、場合によってはNOOPがわずかに改善されています。パフォーマンスの違いはごくわずかですが、データベース構成から最大限のパフォーマンスを引き出す必要がある場合は、両方のオプションをテストしてください。CFQは多くの構成でデフォルトであり、データベースワークロードのパフォーマンスに重大な問題があることが実証されています。

I/Oスケジューラの設定手順については、該当するLinuxベンダーのドキュメントを参照してください。

マルチパス

一部のお客様では、マルチパスデーモンがシステムで実行されていなかったために、ネットワーク停止中にクラッシュが発生しました。最近のバージョンのLinuxでは、OSとマルチパスデーモンのインストールプロセスによって、これらのOSがこの問題に対して脆弱なままになる可能性があります。パッケージは正しくインストールされていますが、再起動後の自動起動が設定されていません。

たとえば、RHEL 9.7 のマルチパス デーモンのデフォルトは次のようになります。

[root@host1 ~]# systemctl list-unit-files --type=service | grep multipathd
multipathd.service                      disabled

これを修正するには、次のコマンドを使用します。

[root@host1 ~]# systemctl enable multipathd.service
[root@host1 ~]# systemctl list-unit-files --type=service | grep multipathd
multipathd.service                      enabled

キューの深さ

I/O ボトルネックを回避するために、SAN デバイスに適切なキュー深度を設定します。Linux のデフォルトのキュー深度は 128 に設定されていることが多く、Oracle データベースでパフォーマンスの問題が発生する可能性があります。キューの深さを高く設定しすぎると、過剰な I/O キューが発生し、レイテンシが増加し、スループットが低下する可能性があります。設定値が低すぎると、未処理の I/O 要求の数が制限され、全体的なパフォーマンスが低下する可能性があります。キュー深度 64 は、 ASA r2 上の Oracle データベース ワークロードの開始点として適切であることが多いですが、特定のワークロード特性とパフォーマンス テストに基づいて調整する必要がある場合があります。

ASMミラーリング

ASM ミラーリングでは、 ASM が問題を認識して代替の障害グループに切り替えるために、 Linux マルチパス設定の変更が必要になる場合があります。ONTAP 上のほとんどの ASM 構成では、外部冗長性が使用されます。つまり、データ保護は外部アレイによって提供され、 ASM はデータをミラーリングしません。一部のサイトでは、通常の冗長性を備えた ASM を使用して、通常は異なるサイト間で双方向ミラーリングを提供しています。

アクティブ / アクティブマルチパスをサポートするASA r2 システムの場合、これらのマルチパス設定を調整する必要があります。すべてのパスがアクティブで負荷分散されているため、無期限のキューイングは必要ありません。代わりに、マルチパス パラメータではパフォーマンスと迅速なフェイルバックを優先する必要があります。この動作は ASM ミラーリングにとって重要です。ASM が代替 LUN で I/O を再試行するには、I/O 障害を受信する必要があるためです。I/O が無期限にキューに入れられると、ASM はフェイルオーバーをトリガーできません。

Linuxで次のパラメータを設定します。 multipath.conf ASMミラーリングで使用されるASM LUNのファイル:

polling_interval 5
no_path_retry 24
failback immediate
path_grouping_policy multibus
path_selector "service-time 0"

これらの設定により、ASMデバイスに120秒のタイムアウトが作成されます。タイムアウトは、 polling_interval * no_path_retry 秒として。状況によっては正確な値の調整が必要になる場合がありますが、ほとんどの場合は120秒のタイムアウトで十分です。具体的には、コントローラのテイクオーバーまたはギブバックが120秒以内に実行され、I/Oエラーが発生しないようにしてください。この場合、障害グループはオフラインになります。

A下限 no_path_retry この値を指定すると、ASMが代替障害グループに切り替えるのに必要な時間を短縮できますが、これにより、コントローラのテイクオーバーなどのメンテナンス作業中に不要なフェイルオーバーが発生するリスクも高まります。ASMミラーリングの状態を注意深く監視することで、このリスクを軽減できます。不要なフェイルオーバーが発生した場合、再同期が比較的短時間で実行されると、ミラーを迅速に再同期できます。追加情報については、使用しているOracleソフトウェアのバージョンに対応するASM高速ミラー再同期に関するOracleのマニュアルを参照してください。

Linuxのxfs、ext3、ext4のマウントオプション

ヒント * NetApp は、デフォルトのマウント オプションの使用を推奨します*。LUN 上にファイル システムを作成するときは、適切なアライメントを確保します。