30
ミラクル・リナックス株式会社 中村 矩揮 2014/07/05 Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved 統合運用管理ソフトウェア Hatohol ( はとほる ) で実現する統合管理 https://github.com/project-hatohol/hatohol 本資料は開発中の内容や開発予定が含まれておりますため、 予告なく内容が変更となる場合があります。

OSC 2014 Nagoya Project Hatohol

  • Upload
    -

  • View
    280

  • Download
    0

Embed Size (px)

DESCRIPTION

OSC 2014 Nagoyaで発表したセミナー資料です。 統合運用管理ソフトウェアHatoholの機能ついて解説します。

Citation preview

Page 1: OSC 2014 Nagoya Project Hatohol

ミラクル・リナックス株式会社

中村 矩揮

2014/07/05

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

統合運用管理ソフトウェアHatohol (はとほる)で実現する統合管理

https://github.com/project-hatohol/hatohol

本資料は開発中の内容や開発予定が含まれておりますため、予告なく内容が変更となる場合があります。

Page 2: OSC 2014 Nagoya Project Hatohol

 自己紹介

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

中村 矩揮 (なかむら のりき)三重県伊勢市出身

ミラクル・リナックスのR&D部門で働くエンジニア

R&D部門:Hatohol開発を主導する部門

新卒2年目

趣味:

● 写真撮影● 旅行

Page 3: OSC 2014 Nagoya Project Hatohol

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Hatoholが目指す今後の姿

https://github.com/project-hatohol/hatohol

Page 4: OSC 2014 Nagoya Project Hatohol

 運用管理の実態

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

OSSを導入している企業がこれから使用していきたいOSS「仮想化ソフトウェア」と「システム運用管理ソフトウェア」の回答率が最も高く、 30%超!

Source:2013年4月10日 IDC Japan株式会社

『国内オープンソースソフトウェア利用実態調査結果』

http://www.idcjapan.co.jp/Press/Current/20130410Apr.html

コスト削減のため、商用の統合管理ツールから乗り換えたい

死活監視

パフォーマンス管理

分散監視/分散管理 インシデント管理

ジョブ管理

ログ管理

OSSでは商用のような統合管理ソフトはない

Page 5: OSC 2014 Nagoya Project Hatohol

 OSSの連携で統合管理

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Zabbix

Nagios

fluentd

Redmine

ssh

イベント管理

変更管理リリース管理

インシデント管理

問題管理Zabbix

稼働監視リソース監視障害判定

自動起票エスカレーションステータス管理

ホスト管理資源/資産管理設定管理一括変更

ログ管理リソース状況参照

イベント通知イン

シデント登録

リモートコ

マンド問題切り分

状況表示イベント管理イベント通知

様々なOSS運用ツールを統合し、商用並の統合管理システムをめざします  - ステータス/パフォーマンス監視 :Zabbix、Nagios(with NDOUtils)、Ceilometer  - ログ管理 :fluentd  - インシデント管理 :Redmine  - リモート管理 :ssh

サービスデスク

Page 6: OSC 2014 Nagoya Project Hatohol

 イベント管理機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

複数の監視サーバ

に繋がる機器を一括監視

Page 7: OSC 2014 Nagoya Project Hatohol

 イベント管理機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● イベント管理機能拡張○ グラフ機能追加

■ 複数の監視ソフトで取得した情報を統合管理

■ 監視ソフトの違い、環境の違いを意識せず、

一括でグラフ表示○ データ収集機構拡張

■ 暗号化や認証をして監視データの送受信が可能に

● OpenStack連携○ ハイパーバイザーからのデータ取得○ インスタンスへの監視ソフトクライアントインストール

Page 8: OSC 2014 Nagoya Project Hatohol

 インシデント管理機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● イベント(障害)検出時に自動起票● アクション実行開始・終了時に状況を自動追記

○ アクション:イベント検出時にメール送信やスクリプトを 実行する機構

● イベント復旧時に自動追記● Hatoholの画面からステータス確認可

イメージ2014/10/21 03:02:22 ! XXさんがステータスを対処済みに変更しました

2014/10/21 02:51:06 ホストAで障害の障害が復旧しました

2014/10/21 02:32:19 ! XXさんがステータスを対処中に変更しました

2014/10/21 02:16:25 担当にXXさんが割り当てられました

2014/10/21 02:16:23 ホストAで障害が発生

Page 9: OSC 2014 Nagoya Project Hatohol

 変更管理・リソース管理機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● ホスト構成管理機能○ ハードウェア構成○ ソフトウェア構成

  → まとめて管理

● 複数台にインストールされたソフトウェアを自動更新可能

● 監視ソフトのクライアントを自動インストール支援機能

Page 10: OSC 2014 Nagoya Project Hatohol

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

今(v14.06)のHatoholの姿

https://github.com/project-hatohol/hatohol

Page 11: OSC 2014 Nagoya Project Hatohol

 現在のHatoholの姿

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Zabbix

Nagios

fluentd

Redmine

ssh

イベント管理

変更管理リリース管理

インシデント管理

問題管理Zabbix

稼働監視リソース監視障害判定

自動起票エスカレーションステータス管理

ホスト管理資源/資産管理設定管理一括変更

ログ管理リソース状況参照

イベント通知イン

シデント登録

リモートコ

マンド問題切り分

状況表示イベント管理イベント通知

様々なOSS運用ツールを統合し、商用並の統合管理システムをめざします  - ステータス/パフォーマンス監視 :Zabbix、Nagios(with NDOUtils)、Ceilometer  - ログ管理 :fluentd  - インシデント管理 :Redmine  - リモート管理 :ssh

サービスデスク

実装済み!

実装中!

Page 12: OSC 2014 Nagoya Project Hatohol

 Hatoholアーキテクチャの紹介

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● 必要なデータのみ収集

→ 負荷:小、多数の監視サーバと連携可

● APIを提供○ 標準UIの代わりにユーザーAPから利用可

● 監視停止を抑制する構造○ 1つの監視サーバとの通信が遅い/失敗

→ 全体に影響しない

○ 大量のアクションが発生

→ バックグランドで数を制限し実行

Page 13: OSC 2014 Nagoya Project Hatohol

 Hatoholの構成

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

差分のみ取得(負荷:小)

フロントエンドUIを提供

監視サーバの情報収集

アクション実行Redmine投稿

Page 14: OSC 2014 Nagoya Project Hatohol

 Hatoholサーバー

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● C++で開発○ 高速○ きめ細かい制御容易(スレッド、子プロセス等)○ GLIB, libsoup, json-glib, MySQL, SQLite3など利用

● 入力:下記の方式で定期的にポーリング○ Zabbix API (JSON-RPC)

■ Zabbix 2.2にも対応!○ Nagios -> NDOUtils (MySQL protocol)○ 今後はプッシュによる入力も対応予定

● 出力○ REST API (データ形式: JSON)○ ユーザーアプリなどからも利用可能

Page 15: OSC 2014 Nagoya Project Hatohol

 Hatoholクライアント

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● WebUIを提供● Djangoフレームワークを使用

○ 通常、apache上で動作

● JavaScriptを多用(CSS: Bootstrap)

HatoholClient

① HTTP

② REST API on HTTP・html, css・js・image ・json

・Browse page: ①・Exec JS code・$getJSON(): ②・Draw data

Django

HatoholServer

外観

データ

Page 16: OSC 2014 Nagoya Project Hatohol

 アクション機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Hatoholが障害情報を受け取った時にメール送信を行うなどの動作(アクション)をする機能● コマンドタイプ

○ 1イベントごとに指定されたコマンド実行○ メール通知用のこのタイプのテンプレート実装済

● レジデントタイプ○ 常駐プログラム(共有ライブラリ)を起動○ イベントごとに、それにメッセージを通知○ 大量イベントが発生した場合、負荷を低減○ 前回のイベントからの時間などで処理を柔軟に変更可

■ 例:1回目はメール通知、2回目〜無視、10回ごとにメール。

Page 17: OSC 2014 Nagoya Project Hatohol

 インシデント管理機能

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

実装済み● イベント(障害)検出時に自動起票● Hatoholの画面からステータス確認可

未実装● 自動追記機能 (障害復旧時に自動追記せず)● 投稿先、投稿内容設定のWeb設定機能

Page 18: OSC 2014 Nagoya Project Hatohol

 データ収集機構拡張

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● 特徴○ 独自で監視データの収集機構の作成が可能に○ C/C++だけでなくPythonやRubyなどを用いて収集機構

の作成可能に● 利点

○ ポーリングでは取得できなかった環境でも監視データの取得が可能に

○ Zabbix / Nagios以外の監視ソフトウェアに対応することが可能に

Hatohol

HatoholClient

HatoholServer

Plugin Framework

Zabbix Plugin

Nagios Plugin

Other Plugin

Zabbix Server

Nagios Server

Other Server

Page 19: OSC 2014 Nagoya Project Hatohol

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Hatoholの機能

https://github.com/project-hatohol/hatohol

Page 20: OSC 2014 Nagoya Project Hatohol

 メニュー構成

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

機能 説明

ダッシュボード 全体の障害状況の一覧

概要:トリガー 監視項目の状態を色で表示

概要:アイテム 監視項目値を表形式で表示

最新データ 監視項目値の一覧表示

トリガー トリガーの一覧表示

イベント イベントの一覧表示

サーバ 監視システムの表示、追加、削除

アクション アクションの表示、追加、削除

ユーザー ユーザーの表示、追加、削除、権限の変更

Page 21: OSC 2014 Nagoya Project Hatohol

 画面の概要

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

監視系 設定系

ログインしているユーザー名リンクのクリックで、各画面に遷移

Page 22: OSC 2014 Nagoya Project Hatohol

 デモ

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● 監視画面の紹介● ユーザ作成、閲覧制限● 動的サーバ追加● インシデント連携機能

Zabbix Server1

Zabbix Server2

Zabbix Server3

Nagios Server

Redmine Server

あとから追加します

Page 23: OSC 2014 Nagoya Project Hatohol

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

Hatoholの開発コミュニティProject Hatohol

https://github.com/project-hatohol/hatohol

Page 24: OSC 2014 Nagoya Project Hatohol

 オープンな開発組織

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● Hatoholの開発コミュニティ○ ミラクル・リナックスの社員の有志を中心に設立○ 誰でもWelcome○ 世界中で使われるソフトウェアを目指す

■ ドキュメントや議論:原則英語● 日本語でのフィードバックもOK

■ 最近日本語サイトの充実にも着手

● http://www.hatohol.org/

○ これまでのコードコミット者の合計:10名以上○ 最近の活発な開発者:

■ ミラクル・リナックス:大和、中村■ クリアコード:足永氏

Page 25: OSC 2014 Nagoya Project Hatohol

 ライセンス・コードレポジトリ

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● ライセンス

GPLv2

● コードレポジトリ

GitHub○ https://github.com/project-hatohol/hatohol

● 誰でも、手軽に新機能やバグフィックスの提案可能● Issue管理や解決への議論もこのサイト上で公開

Page 26: OSC 2014 Nagoya Project Hatohol

 リリースポリシー

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

● 3カ月ごとに定期リリース○ バージョン名はリリース時期がわかるようにした

■ 13.12, 14.03など

● シンプルな機能でもリリース

→ フィードバックをもらって改良

● いまのところ、安定性より

機能追加やUIの改良を優先

Page 27: OSC 2014 Nagoya Project Hatohol

 Hatoholの歴史

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

時期 内容

2013/06 レポジトリ一般公開。正式名称をHatoholに。

2013/09/30 v0.1リリース- アクション機能追加

2013/12/27 v13.12リリース(バージョンルール変更)- ユーザ機能追加(閲覧可能サーバの管理)- サーバの動的追加/削除対応

2014/03/31 v14.03リリース- ユーザー権限の詳細設定- ホストグループ対応

2014/06/30 v14.06リリース- データ収集機構拡張、インシデント管理連携 の試験的実装を追加

Page 28: OSC 2014 Nagoya Project Hatohol

 アクティビティ

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

コード(機能)をどんどん追加中

毎月500コミット前後

http://www.ohloh.net/p/hatoholより

Page 29: OSC 2014 Nagoya Project Hatohol

 開発者はエンジョイしながら!

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

夜、基本的に寝ます 週末・夜間は無理のない範囲で

https://github.com/project-hatohol/hatohol/graphs/punch-cardより

Page 30: OSC 2014 Nagoya Project Hatohol

本資料は開発中のモジュール資料であり、事前の告知なしに仕様、内容が変更される場合があります。

本資料、または本資料中の計画、本ソフトウェアは、ミラクル・リナックスが独自で計画、開発をしており

Zabbixの開発元であるZabbix SIA社が推奨もしくはスポンサーしているものではありません。

*MIRACLE LINUXの名称およびロゴは、ミラクル・リナックス株式会社の登録商標です。

*その他、記載されている会社名、製品名は、各社の登録商標または商標です。

Copyright © 2000-2014 MIRACLE LINUX CORPORATION All rights reserved

https://github.com/project-hatohol/hatohol

協力者募集中https://github.com/project-hatohol/hatohol