64
Copyright © 2016 NTT DATA Corporation 株式会社NTTデータ 技術革新統括本部 石田 純一 Docker管理も「Hinemos」で! ~監視・ジョブ機能を併せ持つ唯一のOSS 「Hinemos」のご紹介~

Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

  • Upload
    hinemos

  • View
    1.831

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2016 NTT DATA Corporation

株式会社NTTデータ 技術革新統括本部

石田 純一

Docker管理も「Hinemos」で! ~監視・ジョブ機能を併せ持つ唯一のOSS 「Hinemos」のご紹介~

Page 2: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

2 Copyright © 2016 NTT DATA Corporation

自己紹介

氏名:石田 純一

所属:株式会社NTTデータ Hinemos担当

Hinemosの開発・製品保守・導入支援に関わっています

Hinemosの製品プロモーションも担当しています

Hinemos開発日記http://d.hatena.ne.jp/hinemos_dev/

Hinemos公式twitter @Hinemos_INFO

Page 3: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

3 Copyright © 2016 NTT DATA Corporation

お知らせ

Hinemosに関する情報発信を強化しています!

Software Design 「Hinemosで学ぶジョブ管理超入門」 茶納 佑季、眞野 将徳、山本未希 著 定価: 本体1,220円+税 B5判: 204ページ 出版社: 技術評論社 発売日: 2014/9/18

Software Design plusシリーズ 「Hinemos 統合管理[実践]入門」 倉田晃次,澤井健,幸坂大輔 著 定価: 本体3,700円+税 大型本: 520ページ 出版社: 技術評論社 発売日: 2014/8/5

Hinemosポータル http://www.hinemos.info/ 技術情報 「クラウド運用管理特集」 Hinemosクラウド管理スタートアップ Hinemosで始めるクラウド管理 パブリッククラウドの操作ログ管理 ...

Page 4: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

4 Copyright © 2016 NTT DATA Corporation

お知らせ

Hinemos World 2016を、11/17(木)~11/18(金)に秋葉原で開催します

開催日 2016年11月17日(木)~11月18日(金)

会場 秋葉原コンベンションホール

主催 Hinemosアライアンス(株式会社NTTデータ他)

内容 事例・ソリューションなどの展示/セミナ

参加費 無料(要事前登録)

Page 5: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

5 Copyright © 2016 NTT DATA Corporation

目次

1. 統合運用管理ソフトウェア「Hinemos」とは

2. Hinemos機能概要

3. HinemosによるDocker管理

4. おわりに

Hinemos公認キャラクター 「もにた」

Page 6: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2016 NTT DATA Corporation 6

1. 統合運用管理ソフトウェア「Hinemos」とは

Page 7: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

7 Copyright © 2016 NTT DATA Corporation

Hinemosとは

システム運用管理で要求される幅広い機能を備えた 統合運用管理ソフトウェア

監視 ジョブ 環境構築

Page 8: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

8 Copyright © 2016 NTT DATA Corporation

運用管理分野のOSS製品

ZABBIX Nagios

Sensu

OpenNMS

Xymon

Ganglia JobScheduler

監視 ジョブ

cron

タスクスケジューラ

Page 9: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

9 Copyright © 2016 NTT DATA Corporation

Hinemosを選ぶ理由

• ワンパッケージ

• 監視・ジョブ・環境構築機能をワンパッケージで提供

• 物理・仮想・クラウド環境の一元管理を実現

• シンプル

• 設計から構築・運用にいたるまで、シンプルに実現

• 監視・ジョブツールの連携方式検討は不要

• 内部DBもオールインワンでインストール

• 簡単

• 日本語ドキュメントを完備

• コマンド数個でインストールでき、即時に利用可能

Page 10: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

10 Copyright © 2016 NTT DATA Corporation

機能拡充・対応プラットフォームの拡充・性能改善に取り組み、 より大規模、多様なシステム、ミッションクリティカルな エンタープライズシステムの運用要件を満たすツールに成長

Hinemosの歩み

Ver3

Ver4

Ver2

Ver1

2005.08

2006.03

2008.10

2012.04

IPA公募によりHinemos誕生

監視機能充実 監視対象プラットフォームの拡張

より進化した稼働状況の見える化 より大規模な環境への対応強化

よりスマートな統合運用管理の実現

クラウド管理の実現 ジョブ管理の進化

Ver5.0 2015.5

10周年!

Ver5.0.2 2016.2

Page 11: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

11 Copyright © 2016 NTT DATA Corporation

数字で見るHinemos

583,065 + Downloads

700+ Systems

(2016年7月現在)

証券・金融系システム、公共系インフラシステム データセンタ、クラウドサービス、社内システムなど

多種多様・様々な規模システムの運用管理に Hinemosをご活用いただいています!

Page 12: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

12 Copyright © 2016 NTT DATA Corporation

管理DB

Hinemosの基本構成

Hinemosを構成する3つのコンポーネント

運用管理サーバ (Hinemosマネージャ)

管理対象システム (Hinemosエージェント)

運用管理端末 (Hinemosクライアント)

設定追加・変更

結果の表示

稼動監視 ジョブ実行指示

ログ送信 トラップ送信

リッチクライアント or

Webブラウザ

Page 13: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

13 Copyright © 2016 NTT DATA Corporation

インストール

Hinemosマネージャは1行コマンドでインストールできます

RPMパッケージ

Hinemosエージェントは、環境構築機能の画面より 複数サーバに対し1クリックで、一括インストールできます

Page 14: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

14 Copyright © 2016 NTT DATA Corporation

運用管理端末

各種操作は、専用GUIアプリケーション・Webブラウザ どちらからも可能です

単一のHinemosクライアントから、 複数のHinemosマネージャに接続可能

Page 15: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

15 Copyright © 2016 NTT DATA Corporation

Hinemosの環境構築

以下環境でHinemosをインストールし、 Ping監視を設定してみたところ…

インターネット 作業端末(Windows) インストール先サーバ(Linux)

SSH HTTP

※インターネット接続無し

サーバルーム

※インターネット接続有

ICMP

検証環境の概要

作業者 Hinemos v5.0

ソフトウェアX

担当者A (Hinemosインストール経験あり、監視ソフトウェアXインストール経験なし)

7分 (参考)

420分

担当者B (Hinemosインストール経験なし、監視ソフトウェアXインストール経験なし)

16分 308分

インストール手順探し、パッケージの準備、初期設定の作業時間を含む

Page 16: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

16 Copyright © 2016 NTT DATA Corporation

Hinemosによるノード管理

オンプレミス環境 仮想化環境 クラウド環境 Hinemos マネージャ

ノード 登録

運用管理対象の管理情報は、ノードとして登録します

ハードウェア情報 仮想化関連情報 OS情報 デバイス情報 ネットワーク情報 管理者情報

Hinemosを用いた 運用管理のスタートライン

Page 17: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

17 Copyright © 2016 NTT DATA Corporation

ノードの登録

管理対象機器は、迅速かつ容易に登録できます

IPアドレスを範囲指定 複数ノードの情報を、SNMPを用いて 一括で取得・登録可能

ノードのデバイス情報は、自動で更新されます

デバイス追加

②デバイス 設定変更(自動)

Hinemos マネージャ

変更不要

Hinemos クライアント

管理対象ノード

①デバイス 変更検知

誰でもできる!

Page 18: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

18 Copyright © 2016 NTT DATA Corporation

ノードをグルーピングする概念「スコープ」

ユーザ定義のグループ階層

OS

Windows

Windows 7

Windows Server 2012

業務

コールセンタ 営業支援

端末 端末

サーバ サーバ

AP DB

※Hinemosの機能(監視、ジョブ等)ではスコープ単位で設定・実行する

ノードは、スコープとしてグルーピングします

スコープは、システム内での 利用用途、管理手法、関係性

等に応じてユーザが自由に定義

動的に変化する仮想マシンや クラウドインスタンスは 既存のスコープに自動で 割り当てすることも可能

Page 19: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

19 Copyright © 2016 NTT DATA Corporation

仮想化・クラウド環境の管理

自動検知・登録されたインスタンス・仮想マシンに対する運用は自動で開始

HTTP監視

夜間バッチジョブ

Webサーバ スコープ

自動割り当て

新規生成された インスタンスや

仮想マシン(タグ付き)

既存の監視設定 既存のジョブ設定

登録済の 監視設定やジョブ設定

管理DB

クラウド・仮想環境のインスタンス・仮想マシンも、自動検知・登録

自動検知・登録 Auto-Scaling等の 機能を用いて動的に 変動するシステム構成の 管理も自動でできる!

Page 20: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

20 Copyright © 2016 NTT DATA Corporation

仮想化・クラウド環境の一元管理

仮想化・クラウド混在環境に対する操作は、 Hinemosで一元的に管理できます

パブリッククラウド

プライベートクラウド

起動・停止・ マイグレーションなどの操作

ジョブとして定型化・自動化 ジョブネットとして

バッチ処理に組み込みも可

Page 21: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2016 NTT DATA Corporation 21

2. Hinemos機能概要

Page 22: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

22 Copyright © 2013 NTT DATA Corporation

Hinemosの機能概要

統合運用管理を実現する3つの基本機能をワンパッケージで提供

③ 環境構築機能

システムの構築や変更を行うためのファイル配布や、コマンド実行を制御

① 監視機能

システムの稼動状況を確認し、異常を検知するための様々な種類の監視を実行

② ジョブ機能

システム運行に必要な様々な処理を、「ジョブ」として一元的に管理・実行

Page 23: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

23 Copyright © 2013 NTT DATA Corporation

監視機能の概要

管理対象システム Hinemosマネージャ

①各種監視

②応答

③何かあったら即座に通知!

システムの稼働状況を確認するための様々な種類の監視を実現

アプリケーション監視

OS監視

HW監視

HTTPシナリオ監視 SQL監視 サービス・ポート監視、Windowsサービス監視 JMX監視、ログファイル監視、Hinemosエージェント監視 カスタム監視 プロセス監視、 Windowsイベント監視、システムログ監視 SNMPTRAP監視、リソース監視、PING監視

Page 24: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

24 Copyright © 2013 NTT DATA Corporation

エージェントレスで利用可能な監視機能

監視機能(Linux) 監視項目(Windows)

Ping監視 プロセス監視 Ping監視 プロセス監視

リソース監視 サービス・ポート監視 リソース監視(※1) サービス・ポート監視

SNMP監視 JMX監視 SNMP監視 JMX監視

HTTP監視 HTTPシナリオ監視 HTTP監視 HTTPシナリオ監視

SQL監視 SNMPTRAP監視 SQL監視 SNMPTRAP監視

システムログ監視 Windowsイベント監視 Windowsサービス監視

多くの監視機能は、エージェントレスで利用可能

エージェントレスで利用できる監視機能

エージェントの導入が必要な監視機能

監視機能(Linux) 監視項目(Windows)

Hinemosエージェント監視

ログファイル監視 Hinemosエージェント監視

ログファイル監視

カスタム監視 Windowsイベント監視 カスタム監視

(※1) エージェントレスの場合、取得項目に一部制限あり

Page 25: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

25 Copyright © 2016 NTT DATA Corporation

監視設定の登録

(例)リソース監視

監視設定の登録は、GUIから容易に行えます

「リソース監視」 を選択

プルダウンメニュー ラジオボタンが使えて

簡単!

必須項目は ピンク色で表示

プルダウンで 監視対象リソース

を選択

監視対象を 指定

判定閾値を 入力

利用する 「通知設定」を

選択

Page 26: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

26 Copyright © 2016 NTT DATA Corporation

監視コンソールで 視覚的に通知

監視結果の通知

Hinemosマネージャ

イベント通知 ステータス通知

ジョブ通知 コマンド通知

監視結果に連動して

処理実行

監視結果を 外部に通知

メール通知 ログエスカレーション通知

syslog

監視結果は運用者に様々な手段で通知できます

Page 27: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

27 Copyright © 2016 NTT DATA Corporation

通知設定の定義

重要度変化後の初回通知(赤丸部分に数値を設定) 同じ重要度の監視結果が○回以上連続した場合に初めて通知する 重要度変化後の二回目以降の通知(以下から選択) ・ 常に通知する ・ 前回通知から○分間は同一重要度の通知はしない ・ 通知しない

1. 通知するタイミングを定義

2. 通知実施時に実行する動作(コマンド)を、監視結果の重要度毎に定義

情報: 実効ユーザ, 実行コマンド 警告: 実効ユーザ, 実行コマンド 危険: 実効ユーザ, 実行コマンド 不明: 実効ユーザ, 実行コマンド

複雑な条件式を 頑張って考えなくても 大丈夫!

複雑難解な条件式

(例)コマンド通知の場合

通知設定は、簡単に定義できます

登録済みの 推奨設定も 使える!

Page 28: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

28 Copyright © 2016 NTT DATA Corporation

監視結果の確認

レイヤ2/レイヤ3の 自動結線も可能

ノードの状態を マップ上で確認

監視結果の詳細まで GUI上で確認可能

監視結果はグラフィカルに確認できます

Page 29: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

29 Copyright © 2016 NTT DATA Corporation

業務カレンダによる監視の制御

毎月第3月曜日のみ稼働

平日09:00~19:00のみメール通知

毎月最終日のみ稼働

所定のメンテナンス日のみ非稼働

稼働スケジュールを 視覚的に確認

監視A 監視B

バッチ処理

日中帯 夜間帯

日中帯・夜間帯の監視・通知の自動制御も簡単に実現できます

高度なカレンダ制御が、監視設定や通知設定に適用可能です

通知A 通知B

Page 30: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

30 Copyright © 2016 NTT DATA Corporation

Hinemosによるジョブ制御

多種多様な環境に対し実行が必要なジョブを 一元管理できます

• システム平常運行に必要な処理

• システム異常発生時に必要な処理

大量ノードに対する処理

連続・複雑な処理

実行結果の管理

定時実行

Job1 Job4

Job3

Job2

Job1 Job4

Job3

Job2 障害

Job1

Job1

zzz...

細やかなカレンダ制御

多様な実行契機

Job1

日 月 火 水 木 金 土1 2 3

4 5 6 7 8 9 1011 12 13 14 15 16 1718 19 20 21 22 23 2425 26 27 28 29 30 31

第3月曜日のみ 実行したい

障害

Page 31: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

31 Copyright © 2016 NTT DATA Corporation

ジョブの新規作成

ジョブは、GUIから容易に設定可能です

画面を 右クリック

実行処理を定義

実行対象を指定

作成ボタン押下

ジョブの実行対象は、リポジトリ機能で定義済みのスコープを利用 ジョブは、ノード単位でもスコープ単位でも実行可能

Page 32: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

32 Copyright © 2016 NTT DATA Corporation

実行契機

ジョブは、5種類の任意の契機で実行することが可能です

ジョブ実行

即時実行 (手動実行)

スケジュール実行 (定期実行)

ファイル チェック

ファイル (作成、変更、削除)

スケジュール

カレンダ

監視・ジョブ の結果

ジョブ通知

障害

Hinemos API コマンドライン

Page 33: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

33 Copyright © 2016 NTT DATA Corporation

ジョブの試験実行

複雑なジョブを定義した上で、ジョブの一連の流れを 簡単に確認することが可能です

ダミーのコマンドを指定し 実行時に置換可能

一連のジョブの流れを、 実際の時刻に依存させず

短時間で確認可能

試験実施のために、 試験時間を調整したり

試験用に設定を変更する といった対処が不要に

Page 34: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

34 Copyright © 2016 NTT DATA Corporation

実行条件の制御

Job1 Job2-1 Job4

Job3-2

Job3-1 ノードA

Job2-1の正常終了と時刻契機によるジョブネット起動

Job2-1の終了を契機とした複数ジョブの同時実行

複数ジョブの終了を契機とした ジョブの実行

先行ジョブの正常終了を契機とした

ジョブ起動

Job2-2 先行ジョブの異常終了を契機とした

ジョブ起動

ノードA

ノードA

ノードB

ノードB

細やかな実行条件が定義可能です

「先行ジョブの実行結果」や「時刻」でジョブ実行を制御

Job4-2 先行ジョブの実行結果に依らず終了を契機としたジョブ起動

Page 35: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

35 Copyright © 2016 NTT DATA Corporation

ジョブ実行の制御

ジョブ実行時の制御は細かく指定可能

ジョブの多重実行数に制限をかけることが可能

細かく自動で 制御できる!

Page 36: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

36 Copyright © 2016 NTT DATA Corporation

ジョブ実行の制御

カレンダ

スケジュール

(例)第4月曜日の 指定が可能

(例)第4月曜日の3日後 という指定が可能

日跨ぎジョブ(48時間)にも対応

スケジュールにあわせた詳細なジョブ実行制御も可能です

Page 37: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

37 Copyright © 2016 NTT DATA Corporation

ジョブの実行結果の通知

監視コンソールで 視覚的に通知

Hinemosマネージャ

イベント通知 ステータス通知

ジョブ通知 コマンド通知

監視結果に連動して 処理実行

監視結果を 外部に通知

メール通知 ログエスカレーション通知

syslog

監視と同様に、 ジョブの実行結果は、運用者に様々な手段で通知できます

Page 38: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

38 Copyright © 2016 NTT DATA Corporation

ジョブ実行状況の確認

ジョブの 実行状態を視覚化

ビューア画面から 再実行操作が可能

ジョブ実行状況は、ジョブマップで視覚的に確認可能です

ジョブ実行結果の管理・詳細確認もGUIから容易に行えます

実行履歴を蓄積管理

詳細情報を確認

Page 39: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

39 Copyright © 2016 NTT DATA Corporation

環境構築機能

一連の作業

クリックで実行

詳細

環境構築の定義体

WEBサーバの構築 DBサーバの構築など

管理対象機器に対する一連の作業の定型化や、 一括実行が可能

Page 40: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

40 Copyright © 2016 NTT DATA Corporation

環境構築機能でできること

複数機器に対し、Hinemosエージェントを導入することなく 必要な操作を一括で実行可能

Hinemos マネージャ

Hinemos クライアント

HTTP Linux

Windows

SSH

WinRM

ファイルの情報は、配布先に応じて内容を置換できます

Page 41: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

41 Copyright © 2016 NTT DATA Corporation

既存ファイルとの差分確認

host=node001 ip=%IPADDR% Charset=SJIS Hinemos

マネージャ

host=node001 ip=192.168.0.4 Charset=UTF-8

host=node001 ip=192.168.0.3 Charset=UTF-8

host=node001 ip=192.168.0.2 Charset=UTF-8

配布時に 既存のファイルとの 差分を確認

設定ファイル

管理対象ノード

Hinemosクライアント画面より、 設定ファイルの差分を確認可能

Hinemosクライアント(環境構築機能)

ファイルの情報は、配布時に差分を GUIで確認できます

Page 42: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2016 NTT DATA Corporation 42

3. HinemosによるDocker管理

Page 43: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

43 Copyright © 2016 NTT DATA Corporation

HinemosによるDocker管理

Hinemosでは、Dockerのエンタープライズシステム導入に向けて Dockerコンテナを活用したシステム運用管理における 技術的な課題の整理・実現方式の検討に取り組んでいます

Page 44: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

44 Copyright © 2016 NTT DATA Corporation

Hinemosで実現したい運用管理

①構成管理 コンテナの構成変更に合わせて、管理対象機器の情報を更新

②監視管理 Dockerコンテナ、Dockerホストの状態を監視

③ジョブ管理 コンテナに対し実行が必要なコマンドを、ジョブ管理

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

追加・変更・削除 構成変更の検知

管理対象機器の情報更新

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

コン

テナ

状態監視

状態監視

コン

テナ

コン

テナ

コン

テナ

Dockerホスト コ

ンテ

コン

テナ

コン

テナ

コン

テナ

コンテナ内でのコマンド実行

コンテナの 起動・停止・再起動・削除

コン

テナ

コン

テナ

Page 45: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

45 Copyright © 2016 NTT DATA Corporation

①構成管理

Page 46: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

46 Copyright © 2016 NTT DATA Corporation

構成管理における課題

Dockerコンテナの構成変更に振り回されない 運用管理を実現したい

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

起動 停止 削除

管理対象機器の情報更新

管理対象の動的な構成変更に自動で追随する仕組みが必要

コンテナの動的な構成変更よる 運用負荷の増大は避けたい

リソース使用の最適化には、 動的な構成変更は不可欠

Page 47: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

47 Copyright © 2016 NTT DATA Corporation

Hinmosを用いた構成管理の実現

コンテナ・ホストの情報は、Hinemosに自動登録できます

コンテナ一覧

コンテナを まとめるスコープ

ホストを まとめるスコープ

ホスト一覧

ホストとコンテナを 対応付けるスコープ

コンテナ一覧

コンテナやホストは、「ノード」としてHinemosに登録されます ノードとして登録されたコンテナ・ホストは、 自動定義された「スコープ」に、自動でグルーピングされます

Page 48: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

48 Copyright © 2016 NTT DATA Corporation

構成変更への追随

登録されたコンテナは、状態遷移時にも自動で追随します

管理対象フラグを自動的にON

Hineomsの リポジトリ[スコープ]ビュー

Dockerホスト1

コン

テナ

起動

コン

テナ

B

コン

テナ

C

コン

テナ

D

(例)コンテナ起動時

起動

対応するノードをリポジトリから自動削除

Hineomsの リポジトリ[スコープ]ビュー

Dockerホスト1

コン

テナ

削除

コン

テナ

B

コン

テナ

C

コン

テナ

D

(例)コンテナ削除時

Page 49: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

49 Copyright © 2016 NTT DATA Corporation

構成変更に影響されない監視・ジョブの実現

DockerホストA

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

DockerホストAスコープ

監視設定

ジョブ設定

コンテナの状態遷移に自動で追随するため、 状態遷移毎に、監視・ジョブ設定を更新する必要はありません

追加・変更・削除

動的に変化する環境に対する 監視やジョブ運用を 自動化できる!

Page 50: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

50 Copyright © 2016 NTT DATA Corporation

実現方式

コンテナの構成情報取得・Hinemosのリポジトリ情報更新は、Hinemosのサンプルスクリプトで実現できます

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

コン

テナ

DB

リポジトリに反映

Dockerサーバ 運用管理サーバ

スクリプト実行

コンテナの 情報を取得

Docker API

取得結果を マネージャへ送信 Hinemos

エージェント

実行

RepositoryDockerNode.sh

RepositoryDockerNodeAdd.py

RepositoryDockerNodeDelete.py

RepositoryDockerNodeUpdate.py

サンプルスクリプトは Hinemosのジョブや cronで定期的に実行

Hinemosマネージャ

ホスト・コンテナ側にエージェントは不要

Page 51: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

51 Copyright © 2016 NTT DATA Corporation

②監視管理

Page 52: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

52 Copyright © 2016 NTT DATA Corporation

監視管理における課題

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

ホスト・コンテナの監視

ホスト・コンテナ側にエージェントを導入せずに、 必要な情報を収集する、従来とは別の仕組みが必要

コン

テナ

コン

テナ

コン

テナ

コンテナ技術を活用するメリットを犠牲にせずに、 コンテナ運用管理に必要となる監視を実現したい

コンテナ技術の活用で最小化した リソース消費を、運用で浪費したくない

リソース配分の最適化を実現するためにも、コンテナ単位のリソース情報が知りたい

従来の 監視プロトコルでは 必要な値を 収集できない

Page 53: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

53 Copyright © 2016 NTT DATA Corporation

Hinemosを用いた監視の実現

コンテナ間での リソース利用状況の偏りも Hinemosで把握できる

従来の監視プロトコル(SNMPなど)では取得が難しいリソース情報も、 Hinemosで収集し、監視・可視化できます

Dockerデーモンの 正常性

Docker コンテナ数

Dockerが使用している ディスク容量

Dockerホストの イベント

Dockerコンテナの CPU使用率

Dockerコンテナの メモリ使用率

Dockerコンテナの ディスクIO量

Dockerコンテナ内の 起動プロセス(数)

Dockerコンテナ内の 起動状態

Dockerコンテナの ネットワーク転送量

(例) DockerコンテナのCPU使用率

Page 54: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

54 Copyright © 2016 NTT DATA Corporation

監視の実現方式1

(概要)Dockerが使用しているディスク使用量や、 コンテナ数、コンテナのリソース使用状況の監視方式

Docker

docker_host1

コンテナA

コンテナB

コンテナC

Docker

docker_host2

コンテナE

コンテナF

コンテナG

Hinemosマネージャ

Hinemosエージェント

サンプルスクリプト(Python)

コンテナD

運用管理サーバ

PC

Hinemosクライアント ①監視設定投入

⑦監視結果確認

⑤監視結果の計算

②カスタム監視実行 (周期的に実行)

⑥計算結果送信

③スクリプト実行

④情報を取得

ホスト・コンテナ側にエージェントは不要

Page 55: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

55 Copyright © 2016 NTT DATA Corporation

監視の実現方式2

Docker

docker_host1

コンテナ

コンテナ

コンテナ

Hinemosマネージャ

サンプルスクリプト(python)

コンテナ

運用管理サーバ

PC

Hinemosクライアント

①監視設定投入

⑤パターンマッチング処理(システムログ監視)

②コンテナの状態・イベントを取得

④受信したsyslogメッセージを転送

①定期的に実行

Docker

docker_host2

コンテナ

コンテナ

コンテナ

ジョブcron

rsyslog

③取得した情報を syslog形式で送信

⑥監視結果確認

(概要) Dockerコンテナ、Dockerホストの状態やイベントの監視方式

ホスト・コンテナ側にエージェントは不要

Page 56: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

56 Copyright © 2016 NTT DATA Corporation

③ジョブ管理

Page 57: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

57 Copyright © 2016 NTT DATA Corporation

ジョブ管理における課題

Dockerホスト

コン

テナ

コン

テナ

コン

テナ

ホスト・コンテナ に対するジョブの実行

ホスト・コンテナ側にエージェントを導入せずに ジョブを実行する仕組みが必要

コン

テナ

コン

テナ

コン

テナ

コンテナ技術を活用するメリットを犠牲にせずに、 コンテナ運用管理に必要となるジョブを実現したい

コンテナ・ホストにエージェントを導入すると プロセス・リソースを消費してしまう

リソース配分の最適化を自動化するためにも、コンテナの起動・停止操作はジョブ化したい

コンテナ内での コマンド実行も ジョブ制御 したい

Page 58: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

58 Copyright © 2016 NTT DATA Corporation

Hinemosを用いたジョブ管理の実現

Dockerコンテナに対する起動・停止操作や、 コンテナ内でのコマンド実行操作は、ジョブとして実行できます

「JobDockerContainerStart.py」を使って、DB、アプリケーションを 順番に起動

起動順の制御 条件分岐や、 スケジューリングも できる!!!

Page 59: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

59 Copyright © 2016 NTT DATA Corporation

ジョブ管理の実現方式

Hinemosマネージャ

Hinemosエージェント

サンプルスクリプト(python)

Manager_server

①ジョブ設定投入

⑨ジョブ実行結果確認

②ジョブ実行 ⑧実行結果を転送

③スクリプト実行

⑤コマンド実行・コンテナの起動/停止操作

Docker

docker_host1

PC

Hinemosクライアント

⑦標準出力、標準エラー出力 戻り値を返却

④APIコール ⑥APIの応答を返却

Pro

cess

実行結果

(概要)Dockerコンテナに対するジョブの実行方式

ホスト・コンテナ側にエージェントは不要

Page 60: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

60 Copyright © 2016 NTT DATA Corporation

HinemosによるDocker管理

Docker管理に活用頂けるサンプルスクリプトや、 技術的な課題・実現方式の検討結果をまとめた 技術情報・報告書を、Hinemosポータルサイトで公開中です!

Hinemosポータルサイト (技術情報)

Docker の監視・ジョブ運用 検証報告書

サンプルスクリプト (Python)

ぜひお試しください!

Page 61: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

61 Copyright © 2016 NTT DATA Corporation

(補足)HinemosマネージャのDockerイメージ

Hinemos ver.5.0(日本語版)インストール済みDockerイメージも、 Docker Hubで公開しています!

https://hub.docker.com/r/hinemos/hinemos-5.0-jp/

docker pullコマンドで Hinemosが

すぐ使える!

Page 62: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2016 NTT DATA Corporation 62

4. おわりに

Page 63: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

63 Copyright © 2016 NTT DATA Corporation

おわりに

Hinemosは、シンプル、使いやすさを損なわずに、

監視とジョブの両方の機能を使うことを可能とする、

統合運用管理ソフトウェアです。

Hinemosでは、エンタープライズシステムの統合運用管理はもちろん、

Docker環境をはじめ、多種多様・先進的な環境に対する運用を、

ツールの使いこなしに苦労することなく実現できます。

ぜひダウンロードして、Hinemosをお試しください。

Hinemos ダウンロード

Page 64: Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~

Copyright © 2011 NTT DATA Corporation

Copyright © 2016 NTT DATA Corporation