インターネット上のWikiページにより
NAT背後のセンサ端末の設定変更や制御が可能な
IoTシステムによるサーバとサーバ室の監視
福山大学工学部情報工学科 山之上 卓
情報処理学会IOTS 2018, 鳥取県米子市, 2018年12月7日
#iots2018
目次
• 1. はじめに
• 2. Wiki IoTとWiki Botの概要
• 3. 外部から直接アクセスできないサーバの監視
• 4. サーバ室の監視
• 5. 関連研究
• 6. おわりに
• 7. 謝辞
#iots2018
1. はじめに (1/9)
• 多くのサーバやサーバ室の監視
– ICT基盤の管理者の重要な仕事の一つ
#iots2018
1. はじめに (2/9)
• サーバやサーバ室の監視
– ICT基盤管理の未経験者にとっては,
簡単な仕事に見える.
No Experience
#iots2018
1. はじめに(3/9)
• しかしながら, 監視は重要で大変な仕事
– サーバやサーバ室の潜在的な障害の発見の失敗, その結果,
障害への対応に失敗
• 利用者は仕事ができなくなる.
• 建物の火災など, 深刻な問題が発生する可能性あり.
#iots2018
1. はじめに (4/9)
• 人間は完全ではない.
– ICTの管理者はサーバやサーバ室の障害の発見を失敗して
しまう可能性があり.
#iots2018
1. はじめに (5/9)
• このような失敗を少なくするため, 管理者は様々
な手法を利用
Webalizer New relic
Direct Call/E-mail
from Users
-> Our loss
Monitoring
by the staff
Splunk/Log manager
Commercial
Monitoring
Service
1. はじめに (6/9)
• その手法の一つとして…
– インターネット上のWikiページ
により, NAT 背後のセンサ端末
の設定変更や制御が可能なIoT
システム
–IOTのIoT
Program/
Data
#iots2018
1. はじめに (7/9)
• IoTのエッジデバイスとして
良性Bot(遠隔操作プログラム)を利用
#iots2018
1. はじめに (8/9)
• 我々のキャンパス内のWeb server を監視中
– サーバの死活状況をTwitterで定期的に通知
#iots2018
1. はじめに (9/9)
• サーバ室の状況も監視中
– サーバ室の温度や照度の変化を管理者が外部から確認可能
#iots2018
2. Wiki IoTとWiki Botの概要(1/7)
2. Wiki IoTとWiki Botの概要(2/7)
2. Wiki IoTとWiki Botの概要(3/7)
#iots2018
Wikiページの
Scriptの
例
• command: set readInterval=60000
command: set execInterval=0
command: program ex1
program: ex("service","clear sendBuffer")
program: s=0
program: for i=0 to 10
program: s=s+i
program: ex("service","putSendBuffer "+s)
program: next i
program: ex("service","sendResults.")
command: end ex1
command: run ex1
result:
2. Wiki IoTとWiki Botの概要(4/7)
#iots2018
• Objectページの分割…データの分割
–次に読むページ変更
command:set pageName="pir-1-<hour>“
• Classページの導入…共通の記述の共有
include http://****/
2. Wiki IoTとWiki Botの概要(5/7)
#iots2018
Cross Over includeと Cross Over execution
共通の記述の共有
-> Class pageのinclude,
High availability
-> cross over
#iots2018
2. Wiki IoTとWiki Botの概要(6/7)
• Wikiページ型並列プログラミング
– SPMD …. Single Program, Multiple Data
– 個々のBotは従来型の逐次プログラムの実行
– 全体としては, データフロー型並列処理
#iots2018
2. Wiki IoTとWiki Botの概要(7/7)
• 情報倫理デジタルビデオ小品集(AXIES).
3. 外部から直接アクセスできない
サーバの監視(1/8)
#iots2018
使っておられる方、
おられますか?
• 購入したライセンスの制限により、外部視聴不可。
端末数固定.
• 山之上やそのほかの教員の授業で利用
• サーバの保守管理は山之上
Campus LAN
3. 外部から直接アクセスできない
サーバの監視(2/8)
#iots2018
• 海外出張時, 情報倫理デジタルビデオ小品集が利用で
きないのでなんとかしてほしいとの連絡
3. 外部から直接アクセスできない
サーバの監視(3/8)
#iots2018
• その時、Webサーバの死活確認を怠っていた。
• たとえ、その必要性を覚えていたとしても、学外に
いたので死活監視は不可能。
• Facebook を使って学生に対応を依頼。
3. 外部から直接アクセスできない
サーバの監視(4/8)
#iots2018
3. 外部から直接アクセスできない
サーバの監視(5/8)
情報倫理デジタル
ビデオ小品集を
格納した
サーバ
学外には非公開
学内の特定の
端末のみOK
3. 外部から直接アクセスできない
サーバの監視(6/8)
url="http://*************/"
page=ex("connector", "getRawPage "+url)
if page="ERROR" then 'move ch0 to center
{
ex("twitter", "tweet "rinri down <hour>:<min>" ")
}
else
{
ex("twitter", "tweet "rinri up <hour>:<min>" ")
}
delay(10000)
ex("service","sendResults.");
3. 外部から直接アクセスできない
サーバの監視(7/8)
#iots2018
#iots2018
3. 外部から直接アクセスできない
サーバの監視(8/8)
• ある時、空調障害発生
4. サーバ室の監視(1/11)
#iots2018
• たまたま週末に発生。月曜日まで誰も気が付かなかった。
• 月曜日には、コンピュータ室の端末を使う授業あり。
• サーバ室のサーバが高温のためダウン。
4. サーバ室の監視(2/11)
• もう少し気が付くのが遅れたら、火災が発生した可
能性もあり。
4. サーバ室の監視(3/11)
#iots2018
• サーバ室にADサーバあり。ADサーバ
はPC室のPCで利用。コンピュータ室
の端末の利用不可。
• サーバ室は通常、窓なし。時々行わ
れる保守時以外は誰もいない。
• なんらかのツールなしに、サーバ室
の状況を監視するのは不可能。
4. サーバ室の監視(4/11)
4. サーバ室の監視(5/11)
• センサデバイスの設定・設定変更も、Wikiページ上で実施。
– IOTS2016
"インターネット上のWikiページ上でエッジ側端
末のI2Cデバイスの設定と入出力を可能とする
IoTシステムの試作"
#iots2018
4. サーバ室の監視(6/11)
#iots2018
4. サーバ室の監視(7/11)
#iots2018
4. サーバ室の監視(8/11)
#iots2018
4. サーバ室の監視(9/11)
'get the Aanalog value from the ADS1115 ch1
config=0x0003|0x0000|0x0000|0x0000|0x0080|0x0100
config=config|0x0000
config= config|0x5000 'channel 1
config=config|0x8000
ex("pi4j", "i2c write2 0x49,0x01,"+config)
delay(10)
v2=ex("pi4j","i2c read2 0x49,0x00")
airpol=s2i(v2)
#iots2018
4. サーバ室の監視(10/11)
#iots2018
4. サーバ室の監視(11/11)
5. 関連研究
5.1 基幹ネットワークの設定による監視
#iots2018
• 基盤ネットワークの監視用セグメント
– 監視するための機器に2つのNIC
• 片方をNAT内のLANに接続して監視対象を監視
• もう片方を監視用セグメントに接続し, 外部からの死活を確認
– 気軽には実行できない(既存の基盤ネットワークに新たに監視セグメ
ントを作る場合や監視セグメントの拡張を伴う場合)
– 組織間調整, 基盤ネットワークの設計, 情報コンセントの新規設置工
事, 設定変更などを伴う。… 管理者の手を煩わせる。
• VLANを使って同様の監視
– 監視対象サーバの利用者のみで実施可能
– VLANの設定が必要。NAT越えのとき、管理者
の手を煩わせる場合がある。
• 我々のWiki IoTは, 基盤ネットワークの設定変更も
VLANの設定も必要ない。管理者の手を煩わさな
くてもOK(そうでない場合もあるが)
#iots2018
5.関連研究
5.2 KaseyaとUNIFAS
#iots2018
この写真 の作成者 不明な作成者 は CC BY-NC-ND のライセンスを許諾されて
います
• どちらともクライアント(PCやWi-Fiアク
セスポイント)がWebページを定期的に
読み書きすることで遠隔操作。NAT越え
も可能…我々のBotと同じ。
• Kaseya, UNIFAS はそれぞれ独自のWeb
サーバ
• 我々のものは、一般的なWikiサーバ。
6.関連研究
5.3 obniz
#iots2018
この写真 の作成者 不明な作成者 は CC BY-SA-NC のライセンスを許諾されています
• WebSocket を使って、サーバ経由
でIoTエッジデバイスを遠隔操作。
NAT越えも可能。I2C設定もOK.
• Obniz用サーバを利用。
• 我々のものは、一般的なWikiサーバ。
• Obnizと同じ
• Obniz以前から
存在
• 独自サーバ
5.関連研究
5.4 NetNuclues Cloud Hub
#iots2018
6. おわりに
• Wikiページをデータベースとして使うWiki IoT
• 外部からは直接アクセスできないサーバの生死
– Twitterのつぶやきで確認
• 通常は出入りできないサーバ室の状況
– インターネット上のWebにより監視
• システムを作成、実際に利用
• IoTシステム-センサ端末群-データ-管理者が観察してい
る最中に
– データを取得する時間間隔を変更など
– 本Wiki IoTは, センサ端末側に管理者が行かなくても
外部のWiki の記述を変えるだけで設定変更が可能
#iots2018
• 現在の問題
– セキュリティ:
• NATで守られたLAN内で実行
• Basic 認証
• 現時点ではこれらのみ。
– センサが故障した場合の配慮
– デバッグ
• 今後これらの問題の解決を行っていく予定である.
#iots2018
7. 謝辞
• 本研究の一部は以下の支援を受けています。
– JSPS KAKENHI Grant Number JP16K00197, 15H03055.
• 手伝ってくれた学生に感謝します。
#iots2018
2. Wiki IoTとWiki Botの概要

Iots2018 20181203