小樽商科大学 - niad.ac.jp · 小樽商科大学 目 ... 新入生に対しては、入学時のオリエンテーション ...
小樽情報技術勉強会#10
-
Upload
zeph-jensen -
Category
Documents
-
view
21 -
download
0
description
Transcript of 小樽情報技術勉強会#10
小樽情報技術勉強会#10
2012 年 10 月 23 日新倉屋システム株式会社
はじめに:勉強会の主旨
複数の情報技術を組み合わせることで、有用なシステムを産み出せることを学ぶ
「小樽版地域ポータル」の開発を通じて新たなコミュニティ
を作り出す
2
はじめに:今回の対象者
初参加の人
情報処理の初学者
3
はじめに 背景 目標設定 本編 まとめ
はじめに:本日のアジェンダ
4
システムとは
基本的な考え方
運用について
背景
地方都市における「ホームページ」の意義
「ホームページ」は見てもらわなくては意味が無い
5
はじめに 背景 目標設定 本編 まとめ
ポータルサイトとは?
• インターネットの玄関口
ポータルサイト (Portal Site)
• 地域情報の発着信港
地域ポータルサイト
• 入口から中への水先案内人の役割• ポータルサイトにおけるサービスの1つ
検索エンジン
6
はじめに 背景 目標設定 本編 まとめ
目標設定
• 「小樽版地域ポータル」を構築する
• それに伴う技術や知識を学ぶ
全体目標
7
はじめに 背景 目標設定 本編 まとめ
目標設定:ロードマップ
1~3月• デジタル
サイネージ
4~6月• 検索
エンジン
7~9月• 外部連携
10 ~ 12月• システム
基盤
8
1月:概論
2月:情報発信
3月:端末本体
はじめに 背景 目標設定 本編 まとめ
4月:概論
5月:検索技術
6月:構築
7月:概論
8月:ブログと連携
9月:アプリと連携
10月:概論
11月:ネットワーク
12月:大規模化
目標設定:今回の目標システムとは何かを考える
システム運用の基礎理論を知る
止まらないシステムの運用について考える
9
はじめに 背景 目標設定 本編 まとめ
システムとは
10
はじめに 背景 目標設定 本編 まとめ
システムとは
基本的な考え方
運用について
入力/処理/出力(IPO)
11
入力 (Input)シャッターを押す
出力 (Output)写真を保存する
処理 (Process)写真を生成する
I P O
入力/処理/出力(IPO)
12
きく聞く
効く聴く 菊
キク
入力/処理/出力(IPO)
13
1 対 多入力 出力
入力/処理/出力(IPO)
きく
音楽 聴く
薬 効く
ばあちゃん キク
嫁 利く14
O
I
I
I
I
O
O
O
O
I
I
I
I
O
O
O
O
入力/処理/出力(IPO)
15
きく聞く
効く聴く 菊
キク
複雑な内部処理をブラックボックス化
入力/処理/出力(IPO)
16
入力 出力
別システムへ
システム
システムの結合
システムA システムB
17
結合部分
インターフェースとも呼ばれる
インタフェースの統一 コンテナー
利用可能な輸送手段 船
列車
トラック
18
システムについてのまとめ
IPO
内部処理は複雑怪奇
インターフェースを合わせれば、(サブ・)システムの置き換えが可能
19
基本的な考え方
20
はじめに 背景 目標設定 本編 まとめ
システムとは
基本的な考え方
運用について
稼働率MTBF - mean time between failures平均故障間隔 = 稼働時間の総和 ÷ 故障回数
21
稼働1 稼働2 稼働3
故障
故障
稼働時間の総和 =
T1 T2 T3
∑ 𝑇 𝑖
稼働率MTTR – mean time to repair平均復旧時間 = 修理時間の総和 ÷ 故障回数
22
稼働1 稼働2 稼働3
故障
故障
修理時間の総和 =
R1 R2
∑ 𝑅𝑖
稼働率計算式 意味 状態MTBF 次の故障までの推定時間 正常稼働中MTTR 故障した時の推定復旧時間 障害・停止中
MTBF + MTTR1回の故障あたりの平均サービス提供時間
正常稼働・停止中の両方
稼働率 正常稼働中
= 1 - 稼働率
故障率 停止中
23
稼働率
24
稼働1 稼働2 稼働3
故障
故障
サービス提供時間の総和 =
T1 T2 T3
∑ 𝑇 𝑖+∑𝑅𝑖
R1 R2
稼働率
25
稼働: T%故障:
R%
100%
T R
稼働率
26
稼働: 99%故障:
1%
100時間⇒ 99時間 : 1時間
T R
10時間⇒ 9時間54分 : 6分
2つのシステムの稼働率 2つのシステムが連続する場合・・・
27
システムA稼働率99%
システムB稼働率99.9%
全体稼働率 = 稼働率A × 稼働率B = 98.9% < 稼働率A < 稼働率B
年間動作不能時間4日 0時間16分
2つのシステムの稼働率 2つのシステムが協力する場合・・・
28
システムA稼働率99%
システムB稼働率99.9%
全体稼働率 = 100% - 故障率A × 故障率B = 100% - 1% × 0.1% = 99.999% ≫ 稼働率B > 稼働率A
年間動作不能時間5分15秒
稼働率年間停止時間
稼働率 動作不能時間99.9999% 32秒
99.999% 5 分 15秒99.99% 52 分 34秒
99.9% 8 時間 46 分99% 3日 15時間 36分
29
稼働率まとめ システムを直列に組み合せると稼働率は低下する システムを並列に組み合せると稼働率は向上する
「冗長化」と呼んだりする高コストになりやすい高度な構築スキルが不可欠
稼働率は SLA ( Service LevelAgreement )の基準に利用されたりする。
30
年間停止時間
稼働率 動作不能時間99.9999
% 32秒
99.999% 5 分 15秒99.99% 52 分 34秒99.9% 8 時間 46 分
99%3日 15時間 36
分
信頼性設計 フォールトアボイダンス( Fault
Avoidance )
構成要素の個々の性能を上げて、障害を避けるという設計方針
31
信頼性設計 フォールトアボイダンスの例(直列の場合)
32
システムA稼働率99%
システムB稼働率99.9%
全体稼働率 = 稼働率AA × 稼働率B = 99.8%
システムAA稼働率99.9%
年間動作不能時間4日 0時間16分
17時間30分40秒
信頼性設計 フォールトトレランス( Fault Tolerance ) 故障や事故を想定し、それに備える、
という設計方針
フォールトトレランスの例 フェールセーフ - Fail Safe :障害発生時⇒停止 フェールソフト - Fail Soft :障害発生時⇒切替 フールプルーフ - Fool Proof :人為的ミス発生時
ミスの指摘・訂正を要求
33
信頼性設計
34
コスト(スキル・金額)
稼働率 100%
フォールトアボイダンスコスト(スキル・金額)
稼働率 100%
フォールトトレランス
システムの障害 障害の分類と対応策(例)
ハードウェアの故障
設計ミス(プログラムバグも含む)
高負荷~過負荷
人為的なもの
35
フォールトアボイダンス
フォールトアボイダンス
フォールトアボイダンス
フォールトアボイダンスフェールプルーフ
フェールセーフ
フェールセーフ
フェールソフト
フェールセーフの例 メイン・システムはサービスを提供 サブ・システムは障害発生時の応答専用
36
メイン・システム
サブ・システム
正常稼働ゲートウェイ
ただいま、大変混み合っております。しばらくお待ち
ください実質的な稼働率は低下する
フェールソフトの例 メイン・サブの両システムでサービスを提供
37
メイン・システム
サブ・システム
正常稼働ゲートウェイ 正常稼働
常時起動…ホットスタンバイ障害時に起動…コールドスタンバイ
フェールオーバーの例 フェールソフトの仕組みのひとつ 1つしか存在しない資源を排他共有する
38
メイン・システム
サブ・システム
正常稼働ゲートウェイ
正常稼働
資源フェールオーバー
フェールバックの例 フェールオーバー後の動作
39
メイン・システム
サブ・システム 正常稼働
ゲートウェイ
正常稼働
資源
フェールバック
信頼性設計のまとめ 個々のコンポーネントの品質を高めるのが第一手
フォールトアボイダンス 運用スタッフもシステムの一部 ⇒ 人材教育
冗長化などを駆使して、障害に備える フォールトトレランス高コストを要する
ヒューマンエラーは必ず発生する フールプルーフ
40
運用について
41
はじめに 背景 目標設定 本編 まとめ
システムとは
基本的な考え方
運用について
システムの障害 障害の分類と対応策(例)
ハードウェアの故障
設計ミス(プログラムバグも含む)
高負荷~過負荷
人為的なもの
42
フォールトアボイダンス
フォールトアボイダンス
フォールトアボイダンス
フォールトアボイダンスフェールプルーフ
フェールセーフ
フェールセーフ
フェールソフト
過負荷による障害 システム障害の主たる要因は過負荷
運用開始以降の信頼性設計変更は困難
データが蓄積されるにつれて負荷も増す
43
性能指標 ターンアラウンドタイム
レスポンスタイム
44
データ入力I
処理P
結果出力O
時間
レスポンスタイム
ターンアラウンドタイム
スループット||
単位時間あたりの処理量
スループットと処理量
45
体積:一定時間内の処理量
面積:スループット
高さ:時間
スループットとボトルネック
46
面積:スループット
ボトルネックがあると、スループットは激減する
待ち行列 (M/M/1)
47
http://tomari.org/main/java/machi.html より引用
平均到着率 λ : 単位時間に到着する平均客数(ポアソン到着)平均サービス率 μ : (フル稼働時)単位時間にサービスを受ける平均客数
平均到着間隔 = 1/λ , 平均サービス時間= 1/μ, 窓口利用率 ρ = λ/μ「 ρ ≧ しきい値」の場合、 利用率が許容量を超えている⇒ 障害発生「 ρ < しきい値」の場合、 悪い状況が重ならない限り、サービス可能
待ち行列(M/M/1)
0 2 4 6 8 10 12 14 16 18 20 22 24 260
2
4
6
8
10
系にいる客数の時系列グラフ
時間
人数
48
待ち行列(M/M/1) 客はいつ来るか不明
ずっと来ないかも知れないし、毎回来るかも知れない
次に来る確率は「常に平均到着率 λ 」 ポアソン分布(ポアソン到着)
サービス提供時間は客によって変化する極端にサービス提供時間のかかる客の存在 = ボトルネック
49
待ち行列(M/M/1) ρ = λ/ μ = 平均到着率 ÷ 平均サービス率
= 平均サービス時間 ÷ 平均到着間隔 = 混み具合
ある混み具合 ρ における待ち時間は ρ/1- ρ
ρ がしきい値を超えると次の客の到着にシステムが耐えきれなくなる
50
しきい値
待ち行列 (M/M/1)
51
http://tomari.org/main/java/machi.html より引用
平均到着率 λ : 単位時間に到着する平均客数(ポアソン到着)平均サービス率 μ : (フル稼働時)単位時間にサービスを受ける平均客数
平均到着間隔 = 1/λ , 平均サービス時間= 1/μ, 窓口利用率 ρ = λ/μ「 ρ ≧ しきい値」の場合、 利用率が許容量を超えている⇒ 障害発生「 ρ < しきい値」の場合、 悪い状況が重ならない限り、サービス可能
スループットターンアラウンドタイム
混み具合
まとめ~今回の目標のおさらいシステムとは何かを考える
システム運用の基礎理論を知る
止まらないシステムの運用について考える
52
IPOの系
稼働率
待ち行列
はじめに 背景 目標設定 本編 まとめ
次回の小樽情報技術勉強会 日時
11月15日 (木 ) 18:30~ (毎月第3 or 4水曜日と覚えましょう)
場所 新倉屋 花園本店 2階多目的ホール (ここと同じです)
会費勉強会 500円(学生無料)懇親会 1,000円(未定) いつも通り
内容 システム基盤(ネットワーク編)について
53
講演者絶賛募集中!