Slide 1

Slide 1 text

1 netmark.jp all rights reserved (地に足がついた) クラウドのお話 馬場俊彰 [email protected]

Slide 2

Slide 2 text

2 netmark.jp all rights reserved ● id: netmarkjp ● 株式会社ハートビーツのCTOです たまにJPUGのお手伝いもしています ● MSP(Management Service Provider)してます ● 24時間有人監視サービス フルマネージドサービス(ハウジング、ホスティング) ● 今:インフラエンジニア 前職:JavaでWebシステム開発 前々職:インフラエンジニア ● OS(主にLinux(CentOS))、ネットワーク機器、 ミドルウェア(ApacheとかRDBMSとか)の 設定やチューニング、DNS設定などなどをしてます 誰?

Slide 3

Slide 3 text

3 netmark.jp all rights reserved 近況 ● ThinkITに寄稿しました →サーバー管理者の業務カイゼン術 ● 第1回:サーバー管理者の目/管理・監視・アーキテクト ● 第4回:1ランク上のサーバー管理者になるためには? ● チューニング・障害対応関係の話が増えてきました ● クラウド関係の話が増えてきました ● 会社で「Amazon EC2 フルサポートパック」をはじめました /w 学びing社、シェイクソウル社

Slide 4

Slide 4 text

4 netmark.jp all rights reserved 今日のお話 クラウド

Slide 5

Slide 5 text

5 netmark.jp all rights reserved 今日のお話 バズワード?

Slide 6

Slide 6 text

6 netmark.jp all rights reserved 今日のお話 イメージ?

Slide 7

Slide 7 text

7 netmark.jp all rights reserved 今日のお話 http://www.flickr.com/photos/michaelroper/13787146/

Slide 8

Slide 8 text

8 netmark.jp all rights reserved 今日のお話 http://www.flickr.com/photos/kky/704056791/

Slide 9

Slide 9 text

9 netmark.jp all rights reserved 地に足をつけて 話をしよう!

Slide 10

Slide 10 text

10 netmark.jp all rights reserved (やっと) もくじ    ● 分類と実装技術について見てみます ● SaaS / PaaS / IaaS ● パブリッククラウド / ブライベートクラウド ● ハイブリッドクラウド / マルチクラウド ● スケールアウトクラウド / スケールインクラウド(サーバクラウド) ● IaaSについて掘り下げてみます

Slide 11

Slide 11 text

11 netmark.jp all rights reserved SaaS / PaaS / IaaS

Slide 12

Slide 12 text

12 netmark.jp all rights reserved SaaS / PaaS / IaaS IaaS PaaS SaaS ● Software As A Service ● さーす ● Platform As A Service ● ぱーす ● Infrastructure As A Service ● いぁーす、あーす、はーす(HaaS = Host As A Service)

Slide 13

Slide 13 text

13 netmark.jp all rights reserved システム階層構造 コロケーション ネットワーク ハードウェア OS ミドルウェア アプリケーション 実行環境 アプリケーション 独自開発や、MovableTypeなどの製品、 SugarCRMなどのオープンソースのアプリケーション Ruby on Rails(Ruby), Struts(Java), Symfony(PHP), django(Python) などのアプリケーション開発言語・実行環境(フレームワーク) Apache, Tomcat, PostgreSQL, MySQLなどの ミドルウェア(アーキテクチャ) Linux, WindowsなどのOS PowerEdge, Fortigate, CISCO などの サーバ機器、ネットワーク機器 インターネット接続回線などの ネットワーク設備 ラック、電源などの物理的なサーバ格納場所

Slide 14

Slide 14 text

14 netmark.jp all rights reserved SaaS / PaaS / IaaS コロケーション ネットワーク ハードウェア OS ミドルウェア アプリケーション 実行環境 アプリケーション IaaS PaaS SaaS ベンダー ベンダー ベンダー ユーザ ユーザ エンドユーザ

Slide 15

Slide 15 text

15 netmark.jp all rights reserved    の意味 ● 仮想化の分界点 ● ベンダー依存のわかれめ ● ライフサイクル依存のわかれめ ● 既存技術適用範囲のわかれめ から上は移動可能 から下は交換可能

Slide 16

Slide 16 text

16 netmark.jp all rights reserved SaaS / PaaS / IaaS IaaS PaaS SaaS ● ベンダーがアプリケーションまで用意して、ユーザ企業に提供する ● Google Apps, Gmail, salesforce.com, 各種ASPなど ● ベンダーがアプリケーション実行環境まで用意して、ユーザ企業に提供する ● Google App Engine, 各種共有サーバなど ● ベンダーがハードウェアまで用意して、ユーザ企業に提供する ● Amazon EC2, Slicehost, 各種VPSなど

Slide 17

Slide 17 text

17 netmark.jp all rights reserved SaaS / PaaS / IaaS IaaS PaaS SaaS サービス提供形態での分類

Slide 18

Slide 18 text

18 netmark.jp all rights reserved パブリッククラウド ● プライベートクラウド

Slide 19

Slide 19 text

19 netmark.jp all rights reserved パブリッククラウド ● クラウドを不特定多数と共用する(かもしれない)サービス形態 ● マルチテナント形式 と表現したりします ベンダー ユーザ ユーザ ユーザ ユーザ ユーザ 注:一般ユーザではなく、クラウドユーザ(企業)

Slide 20

Slide 20 text

20 netmark.jp all rights reserved プライベートクラウド ● クラウドを特定少数で独り占めできるサービス形態 ベンダー ユーザ ユーザ ユーザ ユーザ ユーザ ベンダー ベンダー

Slide 21

Slide 21 text

21 netmark.jp all rights reserved パブリッククラウド / プライベートクラウド プライベート クラウド パブリック クラウド クラウド基盤の独立性での分類

Slide 22

Slide 22 text

22 netmark.jp all rights reserved ハイブリッドクラウド ● マルチクラウド

Slide 23

Slide 23 text

23 netmark.jp all rights reserved パブリッククラウド / プライベートクラウド マルチクラウド (クラウドで実装された)あるシステムが バックエンドとして複数のクラウドを併用すること ハイブリッドクラウド (クラウドで実装された)あるシステムが バックエンドとしてパブリッククラウドと プライベートクラウドを併用すること クラウド 利用形態での 分類 一歩間違えると普通のマッシュアップ!?

Slide 24

Slide 24 text

24 netmark.jp all rights reserved スケールアウトクラウド ● スケールインクラウド

Slide 25

Slide 25 text

25 netmark.jp all rights reserved スケールアウトクラウド / スケールインクラウド スケールアウトクラウド ● 比較的安価なハードウェアを利用した実装で実現したクラウド ● 安価なIAサーバなどを利用する ● Google Apps, Google App Engine, Gmail, Amazon EC2など スケールインクラウド ● 高性能なハードウェアを利用した実装で実現したクラウド ● ハイエンドIAサーバ、UNIXサーバ、メインフレーム(IBMのSystem zなど) などを利用する ● salesforce.comなど

Slide 26

Slide 26 text

26 netmark.jp all rights reserved スケールアウトクラウド(1/4) Googleの例 ● GFS(分散ファイルシステム) ● BigTable(分散ストレージシステム) ● Chubby(分散ロックシステム) ● MapReduce ● Google Cluster http://www.flickr.com/photos/10900132@N02/2040385439

Slide 27

Slide 27 text

27 netmark.jp all rights reserved スケールアウトクラウド(2/4) 特徴 ● ミドルウェア・アプリケーション実行環境の層でスケールアウトを 実現 ● MapReduce + GFS, BigTable ● Chubby ● 超分散環境を実現するための技術開発

Slide 28

Slide 28 text

28 netmark.jp all rights reserved スケールアウトクラウド(3/4) ● Google Cluster ● 安価なIAサーバで構築 ● コンテナ・モジュラー型 – 多少壊れても放置 ● 革新的な運用 – iDCを冷やさない。熱くなったらセンターごと停止

Slide 29

Slide 29 text

29 netmark.jp all rights reserved スケールアウトクラウド(4/4) ナイショだそうです。。 [出典] http://developer.amazonwebservices.com/connect/thread.jspa? messageID=49701숥 Amazon EC2の例

Slide 30

Slide 30 text

30 netmark.jp all rights reserved スケールインクラウド(1/2) salesforce.comの例 ● NETWORK ● Cisco switch, router ● Juniper Netscreen Firewall ● F5 BIG-IP ● WEB / AP ● Array of dual processor Intel servers running Linux ● Resin ● Search ● Array of Sun servers ● Apache/Jakarta Lucene

Slide 31

Slide 31 text

31 netmark.jp all rights reserved スケールインクラウド(2/2) ● DB ● Clustered Sun E25Ks ● Oracle 9i RAC EE ● SunCluster ● Storage: Sun / HDS 9990 Lighting ● Stroage Management: Hitachi Data Systems ● Backup Software: Veritas ● Tape Archive: Sun / Storage Tek ● OS: Sun Solaris, Redhat Linux [出典] http://www.slideshare.net/dreamforce2006/trusted- reliability-performance-with-the-appexchange-platform コレはスゴい! (後で紹介します)

Slide 32

Slide 32 text

32 netmark.jp all rights reserved Sun E25K ● プロセッサ: Superscalar SPARC® Version 9 ● CPU/メモリ・ボード: 最大18枚 ● 搭載CPU(ボードあたり): 4個 ● 搭載メモリ(ボードあたり最大): 64GB ● 寸法 (突起物を含まず)と重量 ● 幅 /奥行 /高さ /重量 ● 84.6cm /163.8cm /191.8cm /1,317.27kg [出典]http://jp.sun.com/products/catalog/pdf/sunfiree25k.pdf

Slide 33

Slide 33 text

33 netmark.jp all rights reserved スケールアウトクラウド / スケールインクラウド スケールインクラウド スケールアウトクラウド クラウド実装形態での 分類 注:あくまで実装形態での分類 (スケールアウトクラウドのPaaSは、ユーザから見るとスケールアップすることもある)

Slide 34

Slide 34 text

34 netmark.jp all rights reserved 利用例 ● IaaS + プライベートクラウド + スケールインクラウド ➔サーバ仮想化を利用した物理サーバ統合 ● SaaS + パブリッククラウド + スケールアウトクラウド ➔twitter ● PaaS + パブリッククラウド + スケールアウトクラウド ➔Google App Engine

Slide 35

Slide 35 text

35 netmark.jp all rights reserved SaaS / PaaS / IaaS (ふたたび)

Slide 36

Slide 36 text

36 netmark.jp all rights reserved SaaS ● ベンダーとの分界点がない ● ベンダーを信頼するしかない(信頼できるところを使う) ● 利用方法はベンダーに追従する ● ライフサイクルもベンダーに追従する ● ベンダーの交換(データ移行など)が不可能な可能性あり ● 今までのASPと同じ ● ベンダーとして作るとき ● いままでのノウハウ、考え方をベースに作れる ● 信頼性・可用性などは、アーキテクチャを絡めて作り込む

Slide 37

Slide 37 text

37 netmark.jp all rights reserved PaaS(1/2) ● ベンダーとの分界点はアプリケーション ● プラットフォームはベンダーに依存する ● ライフサイクルもベンダーに追従する ● ベンダーの交換(データ移行など)が不可能な可能性あり ● ベンダーを信頼するしかない(信頼できるところを使う)

Slide 38

Slide 38 text

38 netmark.jp all rights reserved PaaS(2/2) ● ユーザとして使うとき ● ベンダー側バージョンアップ・仕様変更の影響をモロに受ける ● ベンダーとして作るとき ● いままでのノウハウも使う ● スケールアウトにするか、スケールインにするか ● スケールアウトの場合、突き抜けた分散システムを作り込む必要 あり(例: google) ● パブリッククラウドとの互換性を持たせるか? – AppScale, Hadoop ● スケールインの場合、拡張方式をあらかじめ考えておく – ファーミング(垂直分割)など

Slide 39

Slide 39 text

39 netmark.jp all rights reserved IaaS(1/3) ● ベンダーとの分界点はOS ● ハードウェア性能はベンダーに追従する ● ハードウェア信頼性はベンダーに依存する ● ライフサイクルはかなり独立性が高い – OSレベルで差分をある程度吸収できる ● ベンダーの交換(データ移行など)が比較的容易 ● 環境選定の自由度が高い

Slide 40

Slide 40 text

40 netmark.jp all rights reserved IaaS(2/3) ● ユーザとして使うとき ● OS~の管理を自分で実施する必要あり – 統合管理・統合監視のニーズもきっとある ● スケールアウトはアーキテクチャレベルで実装 – 中央管理したらいいのでは – むしろ自動で →Wakameなど ● 冗長化・負荷分散などの非機能要件は自分で工夫して実現 ● ベンダーごとの利用ノウハウが必要 – Amazon EC2特有のノウハウ – アカウントごとの制約、センター配置など ● いままでのノウハウも使える(使う)

Slide 41

Slide 41 text

41 netmark.jp all rights reserved IaaS(3/3) ● ベンダーとして作るとき ● スケールアウトにするかスケールインにするか ・ ・ ・ ・ ・ ・ ・ ・ ちょっと面白そうなので、ちゃんと考えてみよう

Slide 42

Slide 42 text

42 netmark.jp all rights reserved IaaSできるかな(1/9) 材料 ● インターネット回線 N本 ● リアルサーバ M台 ● HUB たくさん ● LANケーブル たくさん Router Server Router Server Router Server Server Server Server Server Server Router Server

Slide 43

Slide 43 text

43 netmark.jp all rights reserved 宿命 < IaaSできるかな(2/9) リアルサーバの マシンパワー 仮想サーバの マシンパワー

Slide 44

Slide 44 text

44 netmark.jp all rights reserved 宿命(その2) < IaaSできるかな(3/9) リアルサーバの ディスク容量 1台で利用できる ディスク容量

Slide 45

Slide 45 text

45 netmark.jp all rights reserved 宿命(その3) < IaaSできるかな(4/9) ネットワーク 1本の帯域 1台で利用できる ネットワーク帯域

Slide 46

Slide 46 text

46 netmark.jp all rights reserved IaaSできるかな(5/9) 利用機器選定 ● Amazon EC2 1インスタンス(程度)をベースに考えてみる ➔1インスタンス=CPU: 2core 2GHz, Memory: 2GB程度 ➔1インスタンス=1am(アマゾン)という単位で表現してみます ● small IAサーバ(1U) ~15万円(Quadx1, 8GB) 2~4am ● middle IAサーバ(1U) ~30万円(Quadx2, 16GB) 8am ● high IA/UNIXサーバ(4U) ~200万円(Quadx4, 64GB) 32am ● main frame(箪笥) 数千万円~ 128am~

Slide 47

Slide 47 text

47 netmark.jp all rights reserved IaaSできるかな(6/9) 利用機器選定のポイント ● どの程度のマシンパワーが必要か? ● リアルサーバを占有されるとクラウド化の効果が薄い ● 初期費用をかけるか? ● 機器としてはmiddle IA以上が現実的 ● 数の経済を適用できるか? ● ムーアの法則の恩恵を受けるか? ● 個々の機器が高すぎると、恩恵を受けづらい ● 管理しきれるか? ● 数・ノウハウ・共通化(Amazon EC2はAPI形式)

Slide 48

Slide 48 text

48 netmark.jp all rights reserved IaaSできるかな(7/9) 永続データ(特にディスクイメージ)の保管場所の設計 ● ユーザが都度upload? ● クラウド側に保存? ● 各サーバを分散ストレージとして利用? ● 集約する? – 集約するなら、容量の拡張は柔軟にしたい

Slide 49

Slide 49 text

49 netmark.jp all rights reserved IaaSできるかな(8/9) 実装技術 ● サーバ仮想化 ● VMware, Xen, KVM, OpenVZ, Hyper-V, Jail, SolarisContainer(Solaris Zone, Solaris Resource Manager), Eucalyptus ● VMware Console, Xen Center, Karesansui ● NAT ● ダイナミックDNS ● Global用 / LAN用 ● ルーティング・トランキング (ネットワーク的な負荷分散やスケールアップ)

Slide 50

Slide 50 text

50 netmark.jp all rights reserved IaaSできるかな(9/9) ● 分散ストレージ ● GlusterFS ● GFS(Global File System) ※ ≠Google File System ● 柔軟なストレージ ● LVM ● ZFS

Slide 51

Slide 51 text

51 netmark.jp all rights reserved 誰か できたら教えてください m(_ _)m

Slide 52

Slide 52 text

52 netmark.jp all rights reserved おまけ

Slide 53

Slide 53 text

53 netmark.jp all rights reserved クラウド利用時の注意点 ● やっぱり物理的な配置は大事 ● パフォーマンスの問題 →割となんとかなる – 重い処理は一時的に並列度をあげて分散する – 重いデータはユーザの近くに置く(特にEC2の場合) ● 法律の問題 →なんともならない! – 現地当局にデータを押収・閲覧される可能性 ● 「そのクラウド」の使い方のノウハウが必要 ● クラウドのアカウント単位の制約(最大インスタンス数など)

Slide 54

Slide 54 text

54 netmark.jp all rights reserved PaaSできるかな ● Google互換 ● AppScale ● 独自で作るなら? ● kumofs ● Hadoop ● MogileFS ● Lustre ● Roma(楽天) ● プログラム実行基盤・・・何かあるかな? mixiアプリはPaaSですね。

Slide 55

Slide 55 text

55 netmark.jp all rights reserved ご清聴いただき ありがとうございました ばば