クラウドコンピューティング(2)

クラウドコンピューティング(2)
オペレーティングシステム
第14回
インターネットは“雲”(復習)
雲 = cloud
データやそれを処理する
の中のことは分から
プログラムなどを雲の中
ないから雲に例える
(インターネット)に保存する
クラウドコンピューティング
雲の中では…(復習)





雲の中にあるシステムは
1台のコンピュータで構成されている
かどうか分からない
複数のコンピュータ?
あちこち(世界中)に分散?
雲の中のことは(復習)

どうなっているか,良く分からない

アクセスすれば使うことができる

どれくらいのコンピュータがあるか分からない
 十二分に強力なパワー
クラウド提供者による分類(復習)


パブリッククラウド
 GoogleやAmazonのように,広くサービスを提
供
プライベートクラウド
 自社のコンピュータを集中させ,自社内を対象
にサービスを提供
 一時的に,パブリッククラウドを使うこともあり
うる
クラウドサービスの 分 類(復習)

SaaS

PaaS

IaaS
いくつかのキーワード
S L A
S L A(1)

Service Level Agreement

サービス品質保証契約

クラウドサービス利用にあたり,サービス提供者
と,質の契約を結ぶ
S L A(2)

SaaS向けSLAガイドライン(経済産業省)
http://www.meti.go.jp/press/20080121004/2008
0121004.html
仮想化
仮 想 化(1)



実際のハードウェアを利用者に見せない・意識さ
せない
理想的なハードウェアを提供
 抽象化
OSの基本
仮 想 化(2)

仮想計算機
 実際の計算機上に,別のOSを(複数)実行で
きるようにする仕組みを用意
 そのOSが実行され,アプリケーションを実行
する
 アプリケーションを直接実行しているわけでは
ない
仮想
どこかに脆弱性
があると,
ある仮想計算機
が,
別の仮想計算機
のメモリなどをア
クセスできてしま
う危険
物理的に1台の計算機
複数の仮想計算機(こ
化(3)
れらは独立している)
仮 想 化(4)

ストレージ(ディスク)の仮想化
 物理的に複数のディスク
 一つの仮想ディスク
スケールアウト
システムの処理能力の向上

処理データ件数が倍になったら,どうするか?
 高速CPUに交換
 メモリを増やす
 etc.
 高性能のコンピュータに交換
 スケールアップ
クラウドの世界では

コンピュータの台数を増やす
 つまり,分散処理
 スケールアウト
スケールアップとスケールアウト(1)


スケールアップ
 高性能=高価なコンピュータに更新する
スケールアウト
 同じ=安価なコンピュータの数を増やす
 コスト面では有利
スケールアップとスケールアウト(2)


高価なコンピュータ
 故障が少ない
安価なコンピュータ
 故障が多い
 多数,使えば,頻繁にどれかが故障
 それを前提としたシステム構築
可用性

可用性(availability アベイラビリティ)
 システムが機能を果たせること
 つまり,“使える”ということ
スケールアウトでの可用性確保


データのコピーを複数のコンピュータに格納
データを変更
 変更情報が,すべてのコンピュータに伝わる
までの間,同じであるべきデータが異なる
 もし,その途中でトラブルが起きたら…
 一貫性(consistency)の欠如
CAP定理
C A P 定 理(1)


エリック・ブリュワー(Eric A. Brewer)
 Consistency(一貫性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
 ネットワークが切断されても,稼働可能
3つすべて確保することはできない
 1つはあきらめる
CAP定理
C A P 定 理(2)

1台のコンピュータからなるシステムでは
 Consistency(一貫性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
C A P 定 理(3)

クラウドでは
 Consistency(一貫性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
C A P 定 理(4)

もちろん,いろいろな手段で,“あきらめた”のも
のにも対処
その他





MapReduce
クラスタリング
NoSQL
etc.
従来とは異なる技術