メインコンテンツまでスキップ

Applications Manager の最適構成

本ドキュメントでは、サーバーで OpenLM Applications Manager を稼働させるために必要な最適なハードウェア構成について説明します。

推奨事項は以下のとおりです:

  • 各ネットワークカードごとに VM のネットワークコントローラを割り当てる。
  • 1 秒あたり複数回の checkout/checkin を行うコンパイラ向けには、文末の表に記載された仕様より 25%〜50% 高いスペックを推奨します。

例:

  • VM 管理者は、ホスティングサーバーが必要なリソースを確保できることを確認してください。
  • DB クエリの性能が低い場合は、ディスクキューを確認してください。
  • DB は OpenLM SLM と同じデータセンターに配置することを強く推奨します。
  • MS SQL Server の推奨事項は以下を参照してください。
  • MySQL については、Windows 用(my.ini)と Linux 用(my.cnf)のサンプル設定ファイルを提供しています。DBA が環境に合わせて見直してください。

MySQL のベストプラクティス

  1. 最新の MySQL 5.7/8 系リリースを使用してください。
  2. システムリソースを最大限活用するには、MySQL の設定ファイル(my.cnf/my.ini)に適切な値を設定する必要があります。設定が不十分だと、ホストマシンのリソースを活用できません。システム規模に応じた設定例を .zip で用意していますので参照してください:
    4GB_2Cores_Windows

MS SQL Server のベストプラクティス

  1. 次の内容を含むメンテナンスプランを適用してください:

    • 定期的な統計情報の更新
    • 定期的なインデックスのリビルドまたは再編成

    DBA は OpenLM DB に対しても社内のメンテナンスポリシーを適用する必要があります。ポリシーがない場合は、公開パッケージを適用できます。

  2. Windows マシンで MSSQL Server を(ほぼ)専用稼働させる場合、割り当てメモリは総メモリの 80% を超えないことを推奨します。

  3. OpenLM データベースの is_read_committed_snapshot_on パラメータを有効にしてください。

確認方法:

SELECT is_read_committed_snapshot_on FROM sys.databases WHERE name= 'YourDatabase'

設定方法:

DECLARE @sqlCommand varchar(1000)
DECLARE @db_name varchar(50)
SET @db_name = 'YourDatabase'
SET @sqlCommand = 'ALTER DATABASE ' + @db_name + ' SET ALLOW_SNAPSHOT_ISOLATION ON '
EXEC (@sqlCommand)
SET @sqlCommand = 'ALTER DATABASE ' + @db_name + ' SET SINGLE_USER WITH ROLLBACK IMMEDIATE '
EXEC (@sqlCommand)
SET @sqlCommand = 'ALTER DATABASE ' + @db_name + ' SET READ_COMMITTED_SNAPSHOT ON '
EXEC (@sqlCommand)
SET @sqlCommand = 'ALTER DATABASE ' + @db_name + ' SET MULTI_USER '
EXEC (@sqlCommand)
  1. 性能向上のため、tempdb、データベース、ログファイルを別々の論理ディスク(場合によっては物理ディスク)に配置することを推奨します。構成例は以下です:

    1. tempdb データ用ディスク(SSD 推奨)
    2. システム DB 用ディスク(msdb、model、master)
    3. すべてのログ用ディスク(tempdb ログを含む)
    4. すべての DB データ用ディスク
  2. tempdb はパラメータや一時テーブル、ソート・集計などを扱う重要な役割を担います。tempdb のデータファイル数は CPU 数と同数にすることを推奨します(最大 8。増やしても効果がないか、性能低下の可能性があります)。

  3. データベースファイルの自動拡張は既定で % 指定になっていますが、これは危険です。予測成長量にレコードサイズを掛けた値を基に MB 単位で指定することを推奨します。いずれの場合でも、ディスク容量に対するアラート設定を推奨します。

  4. ログサイズは事前に設定することを推奨します。

  5. 障害復旧とログファイルの増大管理のため、定期的なバックアップを推奨します。データベースの縮小は悪いプラクティスであり推奨しません。

エージェントApp Manager サーバーデータベースサーバー
エージェント数DB タイプアプリケーション数CPUメモリネットワークカードディスクCPUメモリネットワークカードディスク
3000内部104 コア4GB1Gbit高速 HD----
10000外部758 コア12GB10Gbit高速 HD8 コア16GB10Gbit高速 HD
15000外部758 コア16GB10Gbit高速 HD8 コア16GB10Gbit高速 HD