イベント・セミナー

Hinemos World 2014 講演レポート

2014 年 12 月 4 日、5 日に東京ミッドタウン カンファレンスで開催された NTTデータ主催のイベント「Hinemos World 2014」において、 SRA OSS, Inc. 日本支社では「Hinemos レポーティングオプションを活用した、Linux + Apache + PostgreSQL の監視とレポート作成」と題したプレゼンテーションを行いました。

ここでは、当社 山本博之が行ったプレゼンテーションの内容をご紹介します。

■OSS ミドルウェアにより構成された、Hinemos で監視するシステム構成の例

この図は、弊社のサポートで扱われることの多い、システム構成のパターンになります。オープンソースのミドルウェアにより構築された Web システムです。

先ず Internet 経由でシステムがリクエストを受け付けますが、入り口で付加分散装置があり、複数の Apache HTTP Web サーバに処理が振り分けられます。その後ろにアプリケーションサーバの Tomcat、そしてデータベースサーバの PostgreSQL があります。この構成がそれぞれ複数台構成されていて、付加分散、冗長化を行っている構成になります。

サーバの台数が多くなってきますと、これらを手動で1台ずつ管理していったのでは非常にコストがかかってしまいます。そういう場合に、統合運用管理ツールの Hinemos を使うことで、運用管理コストを削減できるというメリットがあります。


■デモ環境の構成

今回、このノートPC 上に構築したデモ環境の構成を以下に示します。

Web サーバ 1台と、DB サーバ 1台と、2台構成の Web DB システムを Hinemos で管理をするという構成となっております。また、Hinemos マネージャが1台、Hinemos クライアントが1台あります。


■Hinemos による OSS ミドルウェアの監視

OSS の Web サーバや DB サーバを Hinemos で監視する場合の監視方法について、図に表しました。

性能監視(リソース監視)と、死活監視の 2つに分けることができます。
性能監視というのは、サーバの CPU メモリ使用量、I/O、ディクス I/O といったものの情報を取得して蓄積するということになります。
死活監視につきましては、ローレベルな監視と、サービスレベルの監視があります。
ローレベルな監視とは、プロセスが生きているかどうかの監視や、ping が返ってくるかどうかといった監視になります。
サービスレベルの監視としましては、例えば Web サーバでは、http のリクエストで正常な結果が返ってくるか、DB サーバでは、SQL を投げて正常な結果が返ってくるかということで、サービスが正常に稼働しているかどうかを監視するといった監視方法がとられます。
ここで、監視結果、性能情報といったものが、Hinemos が内部で持っているデータベースに蓄積されていきます。


■Hinemos ジョブによる日時処理

Hinemos の大きな特徴としまして、Hinemos のジョブ管理機能を使った定時処理があります。例えば、日次処理で、それぞれのサーバのバックアップや、その他の処理、複数のサーバにまたがった処理を、Hinemos では簡単に行うことができます。
また、ジョブの実行結果も Hinemos に蓄積されていきます。
Hinemos クライアントから実行結果を確認する場合は、Hinemos の監視パースペクティブを使って、各サーバの現在の状態や、監視項目ごとの現在のステータスや過去に発生したイベントの履歴といったものを見ることができます。
また、性能情報の確認につきましては、確認したい監視項目を選択しまして、それぞれ対象の監視対象と期間を指定することで、閲覧することができます。

ただ、現在 Hinemos クライアントでの監視を行った場合の問題点として、当然ながら Hinemos クライアントにログインする権限が必要となります。
また、性能情報につきましては複数の性能情報をまとめて閲覧できません。

こういった問題を解決してくれるのが、今回紹介いたします Hinemos レポーティングオプションとなります。これから、Hinemos レポーティングオプションについて説明していきたいと思います。


■Hinemos レポーティングオプション

先ほど説明してきました、監視結果や性能情報、またジョブ実行結果といった、Hinemos に蓄積された様々な情報を自動的に集計して、レポートファイルにまとめて出力するとができるのが、Hinemos レポーティングオプションの機能となります。

次に、Hinemos のレポーティングオプションの動作です。
基本的に、Hinemos レポーティングオプションは Hinemos マネージャ上で動作します。マネージャ上でレポート生成して、ユーザに通知します。
Hinemos クライアントでは、Hinemos レポーティングスケジュールの設定を行います。スケジュールの設定では、「毎日」や、「毎月」、「毎週」の何時何分にレポートを生成するという設定が可能です。設定した時間になりますと、Hinemos マネージャ上でレポートを生成して、Hinemos の通知機能を使ってユーザに配信します。配信方法としましては、メールの添付ファイルとして送信するという方法と、コマンドの引数に渡す方法があります。コマンドの内容はユーザが自由に書けますので、別のサーバに転送するなり、ユーザが自由に設定を行うことができます。また、スケジュール実行だけでなく、ユーザが今直ぐ実行結果を見たいという場合、即時出力機能で、直ぐにダウンロードすることもできます。


レポーティングオプションの特長としましては、以下のようなものがあります。


■レポートの出力結果

こちらが実際に出力されたレポートの一例になります。

これは性能情報の概要で、CPU 使用率、メモリ使用率、ディスク I/O、ネットワーク情報量、ファイルシステムの使用率について、グラフで出力させています。より詳細なデータを出力することも可能です。

次は、監視情報です。

こちらは重要度別のイベント数の期間内の割合を円グラフで表示します。また、日別のイベントの件数を棒グラフで表示しています。
さらに各イベントの詳細情報を一覧で表示します。イベントの各重要度が色分けされていますので、非常に分かりやすい形式となっております。

ここで一部拡大しておりますのが、プロセス数の監視とログ監視になります。
2行目がログの内容に、「sutting down」というのが出ているので警告を出しているということを示しています。
下の行は、プロセス数が 0 となったので、危険と判断されたということになります。

次は、ジョブ情報です。

こちらについては、ジョブセッション情報及びジョブ詳細情報、ノード詳細情報の3通りの情報が出力されます。
ジョブセッション情報というのは、ジョブの起点となるジョブ情報の一覧となります。
右側がジョブ詳細情報です。
1つのジョブユニットもしくはネット内の全てのジョブについて、実行結果がツリー形式で表示されます。
また、右側のほうが実行時間帯をそれぞれのジョブについてガントチャートで分かりやすく出力されています。
左下のノード詳細というのは、サーバ毎のジョブの実行結果一覧となります。


■まとめ

オープンソースで構築しました Web DB システムですが、昨今非常にサーバ台数も多くなって管理も困難になっております。
そこで、Hinemos を使うことで運用管理が非常に楽になります。

Hinemos による監視を行った結果、性能情報、監視情報、ジョブ情報といった様々な情報は Hinemos に蓄積されます。
それらの情報を活用するために、レポーティングオプションを使うことができます。
レポーティングオプションを使うことで、様々な情報をレポート形式にまとめて簡単に閲覧することができるようになりますので、その情報を使って、システムの分析や改善につなげるといったことができるようになります。

レポーティングオプションの入手方法ですが、基本には各 Hinemos パートナー企業様より入手していただくことが可能となっております。
SRA OSS の場合、Hinemos サポート契約のいずれかを結んでいただいたお客様に対しては、追加費用なしで提供しております。

以上で、Hinemos レポーティングオプションを活用した、Linux + Apache + PostgreSQL の監視とレポート作成についてのセッションを終わらせていただきます。ありがとうございました。


  • Hinemos レポーティングオプションの詳しい紹介はこちら → Hinemos レポーティングオプションのご紹介

  • Hinemos に関するサポートサービスはこちら→ Hinemos サポートサービス