Upload
hinemos
View
2.702
Download
0
Embed Size (px)
Citation preview
Copyright © 2015 NTT DATA Corporation
2015年10月14日 株式会社 NTTデータ 眞野 将徳
Hinemos ver5.0徹底解剖
2 Copyright © 2015 NTT DATA Corporation
INDEX
1. はじめに
2. Hinemos ver5.0の強化ポイント
3. Hinemos マネージャのチューニング
4. Hinemos Webクライアントのチューニング
5. まとめ
Copyright © 2015 NTT DATA Corporation 3
1. はじめに
4 Copyright © 2015 NTT DATA Corporation
はじめに
Hinemos ver5.0では、管理可能なノード数が10,000台など
性能が飛躍的に向上しています。
本セッションでは、Hinemos ver5.0をさらに使いこなすため 内部実装をもとに、以下をご紹介します。
• Hinemos ver5.0の性能面で強化された内部動作の解剖
• 強化された箇所の紹介
• ver4.1との比較
• Hinemos ver5.0のチューニングのポイント
• マネージャのチューニング
• Webクライアントのチューニング
Copyright © 2015 NTT DATA Corporation 5
2. Hinemos ver5.0の強化ポイント
6 Copyright © 2015 NTT DATA Corporation
概要
• Hinemos ver.5.0の性能強化ポイント
• 監視の改善
• 通知の改善
SNMPTRAP監視の性能比較(4.1 vs 5.0)
• リソース監視、プロセス監視の改善
リソース監視、プロセス監視の性能比較(4.1 vs 5.0)
• ジョブの改善
ジョブの登録の性能比較(4.1 vs 5.0)
ジョブの実行の性能比較(4.1 vs 5.0)
7 Copyright © 2015 NTT DATA Corporation
監視の改善
監視結果を処理する際のDB処理をオンメモリ処理へ移行
監視 通知 通知有無のチェック DB
監視 通知 通知有無のチェック
DB
MEM
Hinemos4.1
Hinemos5.0
監視とは関係のないタイミングで 定期的に同期(非同期書き込み)
DB書き込みが終わってから 次の処理へ(同期書き込み)
8 Copyright © 2015 NTT DATA Corporation
通知の改善
イベント通知、ステータス通知のトランザクションを統合
通知時の負荷軽減
Hinemos4.1の通知処理
DB 通知キュー
commit commit commit commit
Hinemos5.0の通知処理
DB 通知キュー
commit
commit回数の削減
9 Copyright © 2015 NTT DATA Corporation
SNMPTRAP監視
v5.0とv4.1の比較
50%削減
負荷:10000TRAP
ver4.1.3
ver5.0.0
10 Copyright © 2015 NTT DATA Corporation
リソース監視、プロセス監視の改善
Hinemosでは多数の監視種別がありますが、リソース監視とプロセス監視の負荷が高くなりがちです。(この2つの監視種別は内部でSNMPポーリングを実行しています)
リソース監視とプロセス監視はSNMPのGETNEXTを利用していましたが、通信回数の少ないGETBULKに変更しました(最大で90%削減)
Hinemos マネージャ
監視対象
Hinemos4.1 (GETNEXT)
Hinemos マネージャ
監視対象
Hinemos5.0 (GETBULK)
11 Copyright © 2015 NTT DATA Corporation
リソース監視、プロセス監視の改善
ver4.1.3
ver5.0.0
50%削減 ポーリング処理
チェック処理
負荷:200監視(1監視あたり100ノード)
12 Copyright © 2015 NTT DATA Corporation
ジョブの改善
• ジョブ表示時の、マネージャクライアント間のアクセス数減少
• ジョブツリー表示の高速化
• ジョブを管理するデータベースの整理。レコード数の削減
• ジョブの手動実行時の待ち時間減少
• ジョブ実行の初期処理をクライアント通信処理との分離
Hinemosのバージョン データベースのレコード数
4.1 98011
5.0 53591
10,000ジョブ構築時
(コマンドジョブ10,000、ジョブネット1,100、
ジョブユニット10、待ち条件9,000)
45%削減
13 Copyright © 2015 NTT DATA Corporation
ジョブの登録処理
10,000ジョブの追加
65sec
45sec 30%削減
ver4.1.3
ver5.0.0
14 Copyright © 2015 NTT DATA Corporation
ジョブの実行処理
ジョブユニット20、ジョブネット4000、コマンドジョブ8000で
• ジョブユニット実行時の待ち時間
→ ジョブ実行後、クライアントで操作ができるようになる時間
0
5
10
15
20
25
4.1 5.0
(秒)
ジョブユニットの実行時の待ち時間
90%削減
Copyright © 2015 NTT DATA Corporation 15
3. Hinemosマネージャのチューニング
16 Copyright © 2015 NTT DATA Corporation
セルフチェック機能
Hinemosマネージャ自身の異常を検知して通知
内部DBのアクセス障害 リソース枯渇 一時領域の肥大化 処理の遅延 etc... マネージャ
クライアント
履歴情報が 肥大化しています
マネージャの状況把握に不可欠
17 Copyright © 2015 NTT DATA Corporation
Hinemosクライアントでの表示
Hinemos内部スコープ(INTERNAL) に表示される
18 Copyright © 2015 NTT DATA Corporation
監視時に注意すべき点
■監視作成時に注意すべき項目
• 監視設定の統合
■設定変更後に注意すべき項目
• マネージャリソース
• CPU
• ヒープサイズ
• スレッド
• 通知に含まれる二つの日時
19 Copyright © 2015 NTT DATA Corporation
監視設定の統合
Hinemos5.0の通知処理
DB 通知キュー
commit
リソース監視A : ノードAを監視 リソース監視B : ノードBを監視 リソース監視C : ノードCを監視
リソース監視X : スコープXを監視 スコープX : ノードA, B, Cが含まれる
監視設定を統合する右側が 性能を発揮する上でおすすめ
ノードごとに監視 1つに統合
監視項目IDごとにまとめてコミット
vs
NEW
20 Copyright © 2015 NTT DATA Corporation
ノードごとに監視を分けた場合と統合した場合
1ノードを監視 × 500
500ノードを監視 × 1
60%削減
21 Copyright © 2015 NTT DATA Corporation
設定変更後に注意すべき項目(1/4)
■マネージャリソース(CPU)
Hinemosマネージャ(Javaプロセス)のCPU使用率を確認
負荷が低いときは、CPU使用率は1ケタ台に落ち着きます
■対策するべきケース
継続してCPU使用率が上昇し続けている
■対応策
通知量の削減
• 監視間隔を広げる
• 通知の抑制
CPU数を増やす(VM, クラウドの場合)
ヒープサイズの増加
瞬間的な上昇なら問題なし
継続した上昇は 対処が必要
22 Copyright © 2015 NTT DATA Corporation
設定変更後に注意すべき項目(2/4)
■マネージャリソース(ヒープ)
ヒープ不足の場合、GC処理が多く発生したり、Full GC処理が発生し、
全体的なHinemosマネージャの動作が遅くなる場合があります
■対策するべきケース
セルフチェック機能により、以下のINTERNALイベントが発生
■対応策
通知量の削減
ヒープサイズの増加
利用可能なメモリ容量(XXX[MByte])が閾値(XXX[MByte])を下回りました。 定常的に出力される場合、Hinemosマネージャの再起動を推奨します。 また、登録サーバ数や各処理の設定量(監視など)が過剰なため、 設定量を削減してください。
23 Copyright © 2015 NTT DATA Corporation
ヒープサイズの設定
/opt/hinemos/hinemos.cfg
管理対象ノード数が100を超える場合は、mediumかlargeに変更を推奨
Hinemos ver5.0 管理者ガイド 第2版 4.2 Javaヒープメモリの設定(Hinemosマネージャ)
### JVM - Performance Tuning # for small systems export JVM_HEAP_OPTS="-Xms512m -Xmx512m -XX:NewSize=160m -XX:MaxNewSize=160m -XX:MaxPermSize=192m -Xss256k"
# for medium systems #export JVM_HEAP_OPTS="-Xms1024m -Xmx1024m -XX:NewSize=320m -XX:MaxNewSize=320m -XX:MaxPermSize=256m -Xss256k"
# for large systems #export JVM_HEAP_OPTS="-Xms2048m -Xmx2048m -XX:NewSize=640m -XX:MaxNewSize=640m -XX:MaxPermSize=360m -Xss256k"
24 Copyright © 2015 NTT DATA Corporation
設定変更後に注意すべき項目(3/4)
■マネージャリソース(スレッド)
監視処理は監視項目IDごとにスケジュール処理用のスレッドで動作
時間がかかる監視が存在する場合など、処理用のスレッドが枯渇すると
処理遅延が発生
■対策するべきケース
セルフチェック機能により、以下のINTERNALイベントが発生
■対応策
監視設定の統合
通知量の削減
スケジューラ(RAM:XXX:XXX - 次回実行予定 XXXX-XX-XX XX:XX:XX)に遅延(300 [sec]以上)が発生してます。 連続して出力される場合、定期的に実行される各処理(監視など)が正しく動作していない可能性があるため、Hinemosマネージャの再起動を推奨します。
25 Copyright © 2015 NTT DATA Corporation
設定変更後に注意すべき項目(4/4)
■対策するべきケース
受信日時と出力日時が継続して差が開いている
差が徐々に広がっていく
■対策
通知量の削減
Syslog、SNMPTRAPの送信量の削減(システムログ監視、SNMPTRAP監視)
マネージャ側で全件受け取りフィルタリングしているので総受信数が重要
→ 送信元の設定を変更して、送信するものを絞る
受信日時: 通知がおこなわれた日時
出力日時: 監視がおこなわれた日時
Copyright © 2015 NTT DATA Corporation 26
4. Webクライアントのチューニング
27 Copyright © 2015 NTT DATA Corporation
Webクライアントのアーキテクチャ
Webクライアントサービス
ブラウザ
ブラウザ
ブラウザ
マネージャ
同時に接続できる ブラウザ数を制御
28 Copyright © 2015 NTT DATA Corporation
Webクライアントの同時接続数
デフォルトでは8ブラウザに同時接続数を制限
9ブラウザ以上が接続すると、接続時にメッセージを表示
同時接続数を増やす場合には、以下の設定ファイルを修正
/opt/hinemos_web/conf/hinemos_web.cfg
ヒープサイズおよび最大接続数の設定
/opt/hinemos_web/conf/server.xml
最大接続数の設定
Hinemos ver5.0 管理者ガイド 第2版 4.3 同時接続数の設定(Webクライアント)
29 Copyright © 2015 NTT DATA Corporation
1ユーザあたりのHeap使用量
1ユーザあたり20MB程度のHeapを利用
操作内容やジョブの登録数等に応じて増加する
1ユーザ ログイン
2ユーザ ログイン
3ユーザ ログイン
4ユーザ ログイン
Copyright © 2015 NTT DATA Corporation 30
5. まとめ
31 Copyright © 2015 NTT DATA Corporation
まとめ
本セッションでは、よりHinemos ver5.0を活用するための チューニングポイントをご紹介しました。
ver5.0で強化された内部動作の解剖
マネージャの設定追加時に性能面でチェックするべきポイント
性能面で注意すべき場合の対応策
Webクライアントの同時接続数
Hinemos ver5.0の利用時に役立てていただけますと幸いです。
✔
✔
✔
✔
Copyright © 2011 NTT DATA Corporation
Copyright © 2015 NTT DATA Corporation