Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ルールエンジンを使った運用管理自動化のご紹介

1,842 views

Published on

Hinemosは、システム運用管理で要求される各種機能を備えた、「統合運用管理ソフトウェア」です。

本資料は、2015/04/22(水)に、
「Hinemosで運用課題解決!システム運用効率化&自動化セミナー」 にて講演しました
「ルールエンジンを使った運用管理自動化のご紹介」セッションの発表資料となります。

Published in: Technology
  • Be the first to comment

ルールエンジンを使った運用管理自動化のご紹介

  1. 1. 株式会社アトミテック ルールエンジンを使った運⽤管理⾃動化のご紹介 2015年4⽉22⽇
  2. 2. Copyright (c) 2015 Atomitech CORPORATION1 社名 株式会社アトミテック 設⽴ 2004年07⽉01⽇ 営業拠点 東京本社 ⼭⼝本社 福岡営業所 会社概要 Hinemosビジネスへの取り組み 移行・ 構築 保守開発 Hinemosに関する 幅広いソリューションを ご提供いたします。
  3. 3. Copyright (c) 2015 Atomitech CORPORATION2 Hinemos関連サービス 移⾏・構築 最適なHinemos環境 を提供します。 保守 年間1,000件を超 える実績でご期 待に応えます。 開発 新たな機能を提 供します。 あらゆるフェーズで最 適なソリューションを ご提供いたします。
  4. 4. Copyright (c) 2015 Atomitech CORPORATION3 ルールエンジン技術を活⽤して、 システム運⽤の効率化・省⼒化を実現し 運⽤管理⾃動化を⽬指しましょう アトミテックからのご提案
  5. 5. Copyright (c) 2015 Atomitech CORPORATION4 運⽤管理(現状) 運⽤管理ツール インシデント管理ツール 運⽤ ⼿順書経験則 ノウハウ 通知 運⽤管理者 システム外 情報 開発・システム管理者 インシデント 操作 情報  情報が多すぎる  問題の切り分け、対処に時間がかかる  ⼈による判断が必要  属⼈的なノウハウ  ⼈による操作が必要 効率化・省⼒化 が必要 ルールエンジン 技術の活⽤
  6. 6. ルールエンジンについて
  7. 7. Copyright (c) 2015 Atomitech CORPORATION6 与えられたデータに対し、「分岐処理(IF⽂処理)」が記 述されたルールを⾃動解釈し実⾏するためのエンジン BRMS(Business Rule Management System)製品 群の中⼼として使⽤される技術 BRMSとは ルールを管理するシステムで主に以下の機能で構成される  ルール作成・編集機能  ルールの管理・保管機能  ルールの実⾏機能(ルールエンジン) ルールエンジンとは
  8. 8. Copyright (c) 2015 Atomitech CORPORATION7 ルールエンジン動作概要 ルールエンジン 推論エンジン パターン マッチング ルール 実⾏ ルール ルール ファクト ルール ルール ファクト ファクト アクティベー ション アクティベー ション マッチング結果 ルール ファクト ルール実⾏指⽰ アプリケーション • ルールエンジンにルールを格納 • ルールエンジンにファクトを挿⼊ ルール エンジン • ファクトが挿⼊されたタイミングで推論エンジンにより、ファ クトとルールの条件をマッチング • マッチしたルールとファクトをマッチング結果として保持 アプリケーション • ルール実⾏を指⽰ ルール エンジン • マッチング結果のルールのアクションを実⾏ • アクションによりファクトが更新された場合、すべてのファク ト、ルールに対しマッチングが⾏われる 動作概要 Drools(フォワードチェンイング)の場合 • ルールで処理するデータファクト • 条件とアクションを記述ルール • ルールエンジン⽤アルゴリズム • ファクトとルールの条件マッチングを⾏う 推論エンジン
  9. 9. Copyright (c) 2015 Atomitech CORPORATION8 アプリケーションから分離された条件とアクション 再利⽤や組み合わせによる使⽤が可能 更新をアプリケーションと独⽴して⾏うことができる エンドユーザが定義可能な書式 専⽤ルール⾔語やExcelシート等 ルールとは
  10. 10. Copyright (c) 2015 Atomitech CORPORATION9 ルール⾔語 If – Then構造  ○○○ならば(条件)、△△△△する(アクション) 例:  もし「初めての顧客」ならば、「メンバー登録を勧誘」する。  もし「頭⾦が20%以上」ならば、「⻑期プランAを推奨」する。  もし「預貯⾦額が1000万以上」ならば、「オプションBを推奨」する。  もし「勤続年数が1年以下」ならば、「課⻑の承認を取得」する。 Excelシート ルールとは(イメージ) rule “ルール名" when //条件 then //アクション end DRL(Drools Rule Language)の場合 If – Then構造はwhen-thenと記述 DroolsのDecision Tableの場合 条件をCONDITION列に定義 アクションをACTION列に定義
  11. 11. Copyright (c) 2015 Atomitech CORPORATION10 ルールエンジン導⼊のメリット ⾒える化 • 業務担当者と開発者が共通のフォーマットでコミュニケーションできる透過性の⾼いシステムを実現 • 可視化することでより正確なビジネスサービスを実現 変化に簡単・迅速に対応 • 業務担当者がアプリケーションのルールを直接実装できる • 簡易なルール⾔語、Excel等、プログラミング知識がなくても利⽤可能 • 仕様の変化に迅速に対応 開発⼯程の効率化 • プログラムのコンパイル・デプロイ作業が必要ない(ルールエンジンによる⾃動化) • 仕様≒実装
  12. 12. Copyright (c) 2015 Atomitech CORPORATION11 アプリケーションとルールの分離を実現 アプリケーションの柔軟性が⾼まる ルールエンジン導⼊のメリット(まとめ) ルールエンジンを利⽤することで、ルールの実装が簡単に なり、頻繁に変更される環境やビジネスの変化に伴うアプ リケーションの変更に迅速に対応する事が可能となります
  13. 13. 運⽤管理にルールエンジン
  14. 14. Copyright (c) 2015 Atomitech CORPORATION13 運⽤管理(現状) 運⽤管理ツール インシデント管理ツール 運⽤ ⼿順書経験則 ノウハウ 通知 運⽤管理者 システム外 情報 開発・システム管理者 インシデント 操作 情報
  15. 15. Copyright (c) 2015 Atomitech CORPORATION14 運⽤管理(⾃動運⽤管理機能導⼊) 通知 運⽤管理者 システム外 情報 開発・システム管理者 インシデント 操作 情報 ⾃動運⽤管理機能 判断 操作 ⼿順実⾏ 運⽤ ⼿順書 経験則 ノウハウ 操作・情報 取得 インシデント登録 ルールエンジン 技術の活⽤ 運⽤管理ツール インシデント管理ツール
  16. 16. Copyright (c) 2015 Atomitech CORPORATION15 ⾃動運⽤管理機能で⾏うこと 運⽤⼿順の⾃動実⾏ 判断の⾃動化 操作の⾃動化 ルールエンジン  情報が多すぎる  問題の切り分け、対処 に時間がかかる  ⼈による判断が必要  属⼈的なノウハウ  ⼈による操作が必要 運⽤管理における問題点
  17. 17. Copyright (c) 2015 Atomitech CORPORATION16 期待できる効果 運⽤⼿順の⾃動実⾏ 判断の⾃動化 操作の⾃動化 ルールエンジン  通知・インシデントの減少  ⼈による判断、操作が必要な通知 ・インシデントの減少  ノウハウの蓄積  運⽤⼿順書だけでなく、属⼈的な ノウハウも⾃動化し⼀元管理  ミスの減少  運⽤管理者による確認・操作を減 らす  ⼈為的なミスを排除  ⼈が判断し処理すべき作業に集中 できる 効果的な運⽤が可能 •コストの低下 •品質の向上 •インシデント対応の⾼速化 運⽤管理⾃動化で期待できる効果
  18. 18. Copyright (c) 2015 Atomitech CORPORATION17 ルールエンジン機能を持った ⾃動運⽤管理機能の適⽤例 運⽤状況: • DCのマルチテナント環境で運⽤管理ツールから運⽤管理者にアラート情報をメール通知している • 運⽤管理者はアラート情報の内容を判断して、顧客担当者および顧客へメール通知している 課題: • 重要度が低い顧客システムで⼤量にアラートが発⽣すると、メール通知が運⽤管理者に⼤量に送られる • この時、重要顧客システムでアラートが発⽣しメール通知が来ても、⼤量メールに埋もれてしまい、重 要顧客へのメール通知が遅れてしまう
  19. 19. 重要顧客 重要顧客 Copyright (c) 2015 Atomitech CORPORATION18 適⽤例:適⽤前(通常時) ログ収集ツール 運⽤ ⼿順書 運⽤管理者 顧客 顧客担当者 監視対象 監視対象 監視対象 監視対象 監視対象 監視対象 ある顧客のシス テムで障害発 ⽣! 障害を検知してア ラート情報として メール通知 運⽤管理者はメールの内容を 確認し、顧客や顧客担当者へ メールを送信 重要顧客の監視対 象でも障害発⽣ アラート情報を 受け取る アラート情報を 受け取る
  20. 20. 重要顧客 重要顧客 Copyright (c) 2015 Atomitech CORPORATION19 適⽤例:適⽤前(問題発⽣時) ログ収集ツール 運⽤ ⼿順書 運⽤管理者 顧客 顧客担当者 監視対象 監視対象 監視対象 監視対象 監視対象 監視対象 ある顧客のシス テムで重⼤な障 害発⽣! 障害を検知してアラート 情報として⼤量にメール 通知 運⽤管理者の処理が間に合わず ⼤量のメールが蓄積 重要顧客の監視対 象でも障害発⽣ 重要顧客のアラート 情報が埋もれる ⼤量のアラート情 報を受け取る アラート情報を受け取 るまで時間がかかる
  21. 21. Copyright (c) 2015 Atomitech CORPORATION20 運⽤管理への適⽤ 解決策: • アラート情報メールの集約 • 同じイベント(同じホストの同じ監視項⽬で発⽣したイベント)が発⽣した場合は、指定された間隔で集約して通知 • 重⼤エラー発⽣時の通知停⽌ • 顧客担当者から予め重⼤エラーが発⽣した場合に監視を停⽌する「監視解除依頼届」を受け付け、該当エラー発⽣ 時に監視対象機器の監視を停⽌ • 顧客と顧客担当者へのメール⾃動送信 • アラート情報の内容を判断し、宛先、件名、本⽂を設定してメール送信 ルールの適⽤個所: • メールの集約条件 • 監視停⽌依頼による監視停⽌判断 • アラートの発⽣箇所と項⽬、重要度によるメールの宛先、件名、本⽂(アラート内容、担当者の署名)の設定
  22. 22. 重要顧客 重要顧客 Copyright (c) 2015 Atomitech CORPORATION21 適⽤例:適⽤後 ログ収集ツール 顧客 顧客担当者 監視対象 監視対象 監視対象 監視対象 監視対象 監視対象 運⽤ ⼿順書 監視解除依頼 運⽤管理者 ⾃動運⽤管理 機能 ルール エンジン ルールルールルール
  23. 23. 重要顧客 重要顧客 Copyright (c) 2015 Atomitech CORPORATION22 適⽤例:適⽤ ログ収集ツール 顧客 顧客担当者 監視対象 監視対象 監視対象 監視対象 監視対象 監視対象 運用 手順書 監視解除依頼 自動運用管理 機能 ルール エンジン 運用管理者 ルールルールルール 条件の定義 アクションの定義 監視を解除する アラートを監視項⽬と重 要度で指定 監視を解除する監視項 目を設定する 判断する項⽬ アクションの内容 (Javaコード) 判断する項⽬に マッチする値 アクションの内容で セットするパラメータ ルール設定例(監視解除ルール) rule "Monitor_Control_10" no-loop true when //条件 ei: EventInfo(managerFacilityId == “HINEMOS_MANAGER_003”, //運用監視ツールID facility_id == “DB_SERVER_001”, //ファシリテイID monitor_id == “DB_PING”, //監視項目ID priority_num == “0”) //重要度 act: ActionFlg(flg == "0") then //アクション //停止するプラグインID,監視項目ID(1) SetValidMonitorActionInfo monitorActionInfo = new SetValidMonitorActionInfo($ei.getManagerFacilityId()); monitorActionInfo.setMonitorTypeId(“MON_PNG”); //プラグインID monitorActionInfo.setMonitorId(“DB_PING”); //監視項目ID monitorActionInfo.setValidFlag(false); sysActInfoList.add(monitorActionInfo); //停止するプラグインID,監視項目ID(2) ・ ・ ・ end ルールエンジンにより 1⾏1ルールとして変換さ れる
  24. 24. 重要顧客 重要顧客 Copyright (c) 2015 Atomitech CORPORATION23 適⽤例:適⽤後 ログ収集ツール 顧客 顧客担当者 監視対象 監視対象 監視対象 監視対象 監視対象 監視対象 運⽤ ⼿順書 監視解除依頼 ⾃動運⽤管理 機能 ルール エンジン 監視解除 運用管理者 ある顧客の重⼤ なシステムで障 害発⽣! 重要顧客の監視対 象でも障害発⽣ 障害を検知してアラート情報 として⼤量にメール通知 ルールルールルール 監視の停⽌によるア ラート発⽣の抑⽌ アラート情報を受 け取る 同⼀アラート 情報の集約 メール⾃動送信 遅延なくアラート 情報を受け取る 項⽬ 値 運⽤HinemosID HINEMOS_MANAGER_ 003 ファシリティID DB_SERVER_001 重要度 0 プラグインID MON_PNG 監視項⽬ID DB_PING 発⽣⽇時 2014/12/4 14:35:10 メッセージ Packets: Sent = 1, Received = 0, Lost = 1 (100% loss), 項⽬ 値 運⽤HinemosID HINEMOS_MANAGER_0 03 監視項⽬ID MON_PNG 監視種別ID DB_PING 有効/無効 無効 アラート情報ファクト 監視制御情報ファクト アラート情報にマッ チするルール 停⽌する監視項⽬情 報の作成 項⽬ 値 運⽤HinemosID HINEMOS_MANAGER_0 03 監視項⽬ID MON_SNMP 監視種別ID DB_SNMP 有効/無効 無効 項⽬ 値 運⽤HinemosID HINEMOS_MANAGER_0 03 監視項⽬ID MON_PRC 監視種別ID DB_PROCESS 有効/無効 無効 項⽬ 値 運⽤HinemosID HINEMOS_MANAGER_0 03 監視項⽬ID MON_PRT 監視種別ID DB_PORT 有効/無効 無効 ルール動作例(監視解除ルール)
  25. 25. Copyright (c) 2015 Atomitech CORPORATION24 2つの⽅向性でソリューションを検討中 アトミテックの取り組み インシデント管理 ツール ⾃動運⽤管 理機能 ルール エンジン リポジトリ 監視 ジョブ 性能 Hinemosの機能拡張 各種運⽤管理 ツール インシデント管理 ツール ⾃動運⽤管理 機能 ルール エンジン ⾃動運⽤管理 ツール 独⽴した⾃動運⽤管理ツール Hinemosに限らず各種の運⽤管理 ツールからの情報を集約し、ルールエ ンジンにより的確な判断を施し、運⽤ の⾃動化を⽬指すソリューション ルールエンジンによる的確な判断機 能をHinemos⾃⾝に組み込み、運⽤ の⾃動化を⽬指すソリューション 今年のHinemosWorldでのお披露⽬を⽬指します! ご期待ください!!
  26. 26. Copyright (c) 2015 Atomitech CORPORATION25 ルールエンジン技術を活⽤すれば、 システム運⽤の効率化・省⼒化が可能になり、 運⽤管理の⾃動化を⽬指す事ができます まとめ アトミテックと⼀緒に運⽤管理⾃動化を⽬指しませんか? アトミテックの取り組み、運⽤管理⾃動化にご興味がある お客様がいらっしゃいましたら、是⾮ご相談下さい!
  27. 27. (ご参考) その他アトミテックの取り組み
  28. 28. Copyright (c) 2015 Atomitech CORPORATION27 保守サポートサービス 年間1,000件を超える問い合わせ対応実績 • おかげさまですでに保守サービスをご利⽤のお客様より年間1,000件を超えるお問い合わせを頂戴しており、 ご⽀援させて頂いております 低価格⾼品質の2種類の保守サービスを提供 • 年間保守プラン • Hinemosを安⼼して⻑期間お使いいただくためのプラン • お問い合わせ対応や障害調査はもちろん、修正モジュールの提供等も⾏います • 個別インシデント保守プラン • 必要に応じて問い合わせインシデントを購⼊しお問い合わせ頂くプラン • 初期費⽤を抑えて保守サポートのご利⽤を開始したいお客様におすすめです お問い合せの利便性向上 • 従来のメールによるお問い合わせに加えて、WEBシステムによるお問い合せが可能です
  29. 29. Copyright (c) 2015 Atomitech CORPORATION28 お問い合せの登録と対応状況、回答の確認 過去のお問い合せの確認 FAQ(よくあるお問いわせ)の提供 リリース時100件程度登録 順次登録予定 保守サポートサービス お問い合せWEBシステム 過去のお問い合せ確認画面 FAQ画面
  30. 30. Copyright (c) 2015 Atomitech CORPORATION29 お客様のご要望をお伺いし、Hinemosによる運⽤管理環境 の構築を⾏います。 Hinemosクライアント、マネージャ、 エージェント、そして各オプションのインストール、基本 設定等、Hinemosでの運⽤環境を構築致します。 運⽤環境構築サービス 運⽤環境構築サービスの主な流れ ヒアリング お客様のご要望をお 聞かせください ご提案 ヒアリングに沿って 最適な構築サービス をご提案いたします 設計 環境構築に向け設計 を⾏います 環境構築 設計に基づき環境を 構築致します テスト 構築した環境が設計 どおりかテストを⾏ います 引き渡 し お客様へお引き渡し 致します
  31. 31. Copyright (c) 2015 Atomitech CORPORATION30 アトミテックの豊富なノウハウにより構築したAWS上のHinemosマ ネージャと、その維持管理を含めた運⽤環境をサービスとして提供いたし ます。 お客様のシステムを管理する為の最適な機能と環境を備えたHinemosをご 利⽤になれます。 Atomitech OnCloud Service for Hinemos バックアップ バージョンアップ 保守サポート お客様システム マネージャ お客様 クライアント Elastic Load Balancing Web サーバー Web サーバー Web サーバー EC2 EC2 EC2 DynamoDB Memcached 各種テンプレート 死活監視・性能管理 クラウド管理 ジョブ管理 障害通知 パッチ適⽤ お客様は、Hinemosマネージャーの 環境構築・維持管理を意識すること なく、豊富な機能を利⽤できます
  32. 32. Copyright (c) 2015 Atomitech CORPORATION31 ミドルウエア監視⽤スクリプト ミドルウエア (WEB/AP/DB) Hinemos エージェント ミドルウエア監視⽤ スクリプト カスタム監視設定 通知 収集 監視対象ノード マネージャ クライアント 監視 性能管理 提供スクリプト
  33. 33. Copyright (c) 2015 Atomitech CORPORATION32 ミドルウェア監視⽤スクリプト⼀覧 ミドルウエア Webサーバ Apache監視⽤スクリプト APサーバ JBoss監視⽤スクリプト Tomcat監視⽤スクリプト DBサーバ PostgreSQL監視⽤スクリプト Oracle監視⽤スクリプト MySQL監視⽤スクリプト 今後もHinemos監視を強化する「ミドルウエア監視⽤スクリプト」を 順次公開予定! 2014年12⽉現在
  34. 34. Copyright (c) 2015 Atomitech CORPORATION33 Hinemosの機能および性能向上 ノウハウの蓄積による効率的な移⾏ 運⽤管理ツールに かかるトータルコスト の削減を実現します。 商⽤運⽤管理ツールからHinemosへの移⾏サービス
  35. 35. Copyright (c) 2015 Atomitech CORPORATION34 『バックアップソフトウェア』 『バックアップストレージ』 『Hinemos拡張モジュール』 を1パッケージとして提供。 ⼀般ジョブとバックアップジョブの 連携を容易に実現 バックアップソフトウェアの監視  死活監視  プロセス監視  ログ監視 バックアップストレージの監視  死活監視  リソース監視 (容量監視、CPU監視、 メモリ監視など) ストレージバックアップオプション バックアップ対象システムバックアップ対象システム バックアップソフトウェア 「NetVault Backup」 バックアップソフトウェア 「NetVault Backup」 ストレージ「DR4100」ストレージ「DR4100」 バック アップ データ 拡張モジュール拡張モジュール ストレージバックアップ オプション
  36. 36. Copyright (c) 2015 Atomitech CORPORATION35 ご不明な点等ございましたら、お気軽にお問い合わせ下さい。 お問い合わせ先 株式会社アトミテック 050-3775-7632 k.nakanishi@atomitech.jp 担当:中⻄ ご清聴ありがとうございました

×