【hinemosworld2015】b2-3_【テクニカル】hinemos ver.5.0徹底解剖

32
Copyright © 2015 NTT DATA Corporation 2015年10月14日 株式会社 NTTデータ 眞野 将徳 Hinemos ver5.0徹底解剖

Upload: hinemos

Post on 11-Jan-2017

2.702 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation

2015年10月14日 株式会社 NTTデータ 眞野 将徳

Hinemos ver5.0徹底解剖

Page 2: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

2 Copyright © 2015 NTT DATA Corporation

INDEX

1. はじめに

2. Hinemos ver5.0の強化ポイント

3. Hinemos マネージャのチューニング

4. Hinemos Webクライアントのチューニング

5. まとめ

Page 3: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation 3

1. はじめに

Page 4: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

4 Copyright © 2015 NTT DATA Corporation

はじめに

Hinemos ver5.0では、管理可能なノード数が10,000台など

性能が飛躍的に向上しています。

本セッションでは、Hinemos ver5.0をさらに使いこなすため 内部実装をもとに、以下をご紹介します。

• Hinemos ver5.0の性能面で強化された内部動作の解剖

• 強化された箇所の紹介

• ver4.1との比較

• Hinemos ver5.0のチューニングのポイント

• マネージャのチューニング

• Webクライアントのチューニング

Page 5: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation 5

2. Hinemos ver5.0の強化ポイント

Page 6: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.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)

Page 7: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

7 Copyright © 2015 NTT DATA Corporation

監視の改善

監視結果を処理する際のDB処理をオンメモリ処理へ移行

監視 通知 通知有無のチェック DB

監視 通知 通知有無のチェック

DB

MEM

Hinemos4.1

Hinemos5.0

監視とは関係のないタイミングで 定期的に同期(非同期書き込み)

DB書き込みが終わってから 次の処理へ(同期書き込み)

Page 8: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

8 Copyright © 2015 NTT DATA Corporation

通知の改善

イベント通知、ステータス通知のトランザクションを統合

通知時の負荷軽減

Hinemos4.1の通知処理

DB 通知キュー

commit commit commit commit

Hinemos5.0の通知処理

DB 通知キュー

commit

commit回数の削減

Page 9: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

9 Copyright © 2015 NTT DATA Corporation

SNMPTRAP監視

v5.0とv4.1の比較

50%削減

負荷:10000TRAP

ver4.1.3

ver5.0.0

Page 10: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

10 Copyright © 2015 NTT DATA Corporation

リソース監視、プロセス監視の改善

Hinemosでは多数の監視種別がありますが、リソース監視とプロセス監視の負荷が高くなりがちです。(この2つの監視種別は内部でSNMPポーリングを実行しています)

リソース監視とプロセス監視はSNMPのGETNEXTを利用していましたが、通信回数の少ないGETBULKに変更しました(最大で90%削減)

Hinemos マネージャ

監視対象

Hinemos4.1 (GETNEXT)

Hinemos マネージャ

監視対象

Hinemos5.0 (GETBULK)

Page 11: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

11 Copyright © 2015 NTT DATA Corporation

リソース監視、プロセス監視の改善

ver4.1.3

ver5.0.0

50%削減 ポーリング処理

チェック処理

負荷:200監視(1監視あたり100ノード)

Page 12: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

12 Copyright © 2015 NTT DATA Corporation

ジョブの改善

• ジョブ表示時の、マネージャクライアント間のアクセス数減少

• ジョブツリー表示の高速化

• ジョブを管理するデータベースの整理。レコード数の削減

• ジョブの手動実行時の待ち時間減少

• ジョブ実行の初期処理をクライアント通信処理との分離

Hinemosのバージョン データベースのレコード数

4.1 98011

5.0 53591

10,000ジョブ構築時

(コマンドジョブ10,000、ジョブネット1,100、

ジョブユニット10、待ち条件9,000)

45%削減

Page 13: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

13 Copyright © 2015 NTT DATA Corporation

ジョブの登録処理

10,000ジョブの追加

65sec

45sec 30%削減

ver4.1.3

ver5.0.0

Page 14: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

14 Copyright © 2015 NTT DATA Corporation

ジョブの実行処理

ジョブユニット20、ジョブネット4000、コマンドジョブ8000で

• ジョブユニット実行時の待ち時間

→ ジョブ実行後、クライアントで操作ができるようになる時間

0

5

10

15

20

25

4.1 5.0

(秒)

ジョブユニットの実行時の待ち時間

90%削減

Page 15: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation 15

3. Hinemosマネージャのチューニング

Page 16: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

16 Copyright © 2015 NTT DATA Corporation

セルフチェック機能

Hinemosマネージャ自身の異常を検知して通知

内部DBのアクセス障害 リソース枯渇 一時領域の肥大化 処理の遅延 etc... マネージャ

クライアント

mail

履歴情報が 肥大化しています

マネージャの状況把握に不可欠

Page 17: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

17 Copyright © 2015 NTT DATA Corporation

Hinemosクライアントでの表示

Hinemos内部スコープ(INTERNAL) に表示される

Page 18: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

18 Copyright © 2015 NTT DATA Corporation

監視時に注意すべき点

■監視作成時に注意すべき項目

• 監視設定の統合

■設定変更後に注意すべき項目

• マネージャリソース

• CPU

• ヒープサイズ

• スレッド

• 通知に含まれる二つの日時

Page 19: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

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

Page 20: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

20 Copyright © 2015 NTT DATA Corporation

ノードごとに監視を分けた場合と統合した場合

1ノードを監視 × 500

500ノードを監視 × 1

60%削減

Page 21: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

21 Copyright © 2015 NTT DATA Corporation

設定変更後に注意すべき項目(1/4)

■マネージャリソース(CPU)

Hinemosマネージャ(Javaプロセス)のCPU使用率を確認

負荷が低いときは、CPU使用率は1ケタ台に落ち着きます

■対策するべきケース

継続してCPU使用率が上昇し続けている

■対応策

通知量の削減

• 監視間隔を広げる

• 通知の抑制

CPU数を増やす(VM, クラウドの場合)

ヒープサイズの増加

瞬間的な上昇なら問題なし

継続した上昇は 対処が必要

Page 22: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

22 Copyright © 2015 NTT DATA Corporation

設定変更後に注意すべき項目(2/4)

■マネージャリソース(ヒープ)

ヒープ不足の場合、GC処理が多く発生したり、Full GC処理が発生し、

全体的なHinemosマネージャの動作が遅くなる場合があります

■対策するべきケース

セルフチェック機能により、以下のINTERNALイベントが発生

■対応策

通知量の削減

ヒープサイズの増加

利用可能なメモリ容量(XXX[MByte])が閾値(XXX[MByte])を下回りました。 定常的に出力される場合、Hinemosマネージャの再起動を推奨します。 また、登録サーバ数や各処理の設定量(監視など)が過剰なため、 設定量を削減してください。

Page 23: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

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"

Page 24: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

24 Copyright © 2015 NTT DATA Corporation

設定変更後に注意すべき項目(3/4)

■マネージャリソース(スレッド)

監視処理は監視項目IDごとにスケジュール処理用のスレッドで動作

時間がかかる監視が存在する場合など、処理用のスレッドが枯渇すると

処理遅延が発生

■対策するべきケース

セルフチェック機能により、以下のINTERNALイベントが発生

■対応策

監視設定の統合

通知量の削減

スケジューラ(RAM:XXX:XXX - 次回実行予定 XXXX-XX-XX XX:XX:XX)に遅延(300 [sec]以上)が発生してます。 連続して出力される場合、定期的に実行される各処理(監視など)が正しく動作していない可能性があるため、Hinemosマネージャの再起動を推奨します。

Page 25: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

25 Copyright © 2015 NTT DATA Corporation

設定変更後に注意すべき項目(4/4)

■対策するべきケース

受信日時と出力日時が継続して差が開いている

差が徐々に広がっていく

■対策

通知量の削減

Syslog、SNMPTRAPの送信量の削減(システムログ監視、SNMPTRAP監視)

マネージャ側で全件受け取りフィルタリングしているので総受信数が重要

→ 送信元の設定を変更して、送信するものを絞る

受信日時: 通知がおこなわれた日時

出力日時: 監視がおこなわれた日時

Page 26: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation 26

4. Webクライアントのチューニング

Page 27: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

27 Copyright © 2015 NTT DATA Corporation

Webクライアントのアーキテクチャ

Webクライアントサービス

ブラウザ

ブラウザ

ブラウザ

マネージャ

同時に接続できる ブラウザ数を制御

Page 28: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

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クライアント)

Page 29: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

29 Copyright © 2015 NTT DATA Corporation

1ユーザあたりのHeap使用量

1ユーザあたり20MB程度のHeapを利用

操作内容やジョブの登録数等に応じて増加する

1ユーザ ログイン

2ユーザ ログイン

3ユーザ ログイン

4ユーザ ログイン

Page 30: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2015 NTT DATA Corporation 30

5. まとめ

Page 31: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

31 Copyright © 2015 NTT DATA Corporation

まとめ

本セッションでは、よりHinemos ver5.0を活用するための チューニングポイントをご紹介しました。

ver5.0で強化された内部動作の解剖

マネージャの設定追加時に性能面でチェックするべきポイント

性能面で注意すべき場合の対応策

Webクライアントの同時接続数

Hinemos ver5.0の利用時に役立てていただけますと幸いです。

Page 32: 【HinemosWorld2015】B2-3_【テクニカル】Hinemos ver.5.0徹底解剖

Copyright © 2011 NTT DATA Corporation

Copyright © 2015 NTT DATA Corporation