Cloud Computing 情報ネットワーク特論 南里豪志 ( 九州大学情報基盤研究開発センター ) 1
今日の講義内容 Cloud (Cloud Computing) とは何か なぜ 今 Cloudが普及したか Cloudを支える技術 Cloudの今後の展望 2
参考資料 仮想化の歴史と機能 https://www.school.ctc-g.co.jp/columns/shimo/ 白鳥敬 クラウド時代の正体 KK ベストセラーズ 2011 年 森洋一 クラウドコンピューティング オーム社 2009 年 西田宗千佳 クラウド コンピューティング 朝日新聞出版 2009 年 佐藤信正 小さな会社の IT 担当者が知らないと困るクラウド技術とリッチクライアント /HTML5 の常識 ソシム株式会社 2011 年 3
Cloud とは何か? Cloud でないものは何か? Packaged Software Web Applications Free Software Online Storage PCs, Smartphones Rental Servers Virtual Machines 4
従来のメールソフトと Cloud 型メールアプリ 従来のメールソフト 自分の PC にインストール サーバからメールをダウンロード mail server mailer Cloud 型メールアプリ ブラウザを起動してサイトに接続 ブラウザ上でメールを読み書き mail site mail mail メリット デメリットは? web browser 5
従来の計算機センターと Cloud 計算サービス 従来の計算機センター 最大の需要に合わせて機械を購入 導入作業 (OS, アプリケーション, etc.) ハードウェア ソフトウェア管理 電力供給 Work Cloud 必要な時に 必要なだけ 計算能力やストレージ領域を購入 計算機の環境整備 運用 電力も費用に含む Jan Feb Mar Apr May Jun Time メリット デメリットは? 6
Cloud: もの から サービス へ ネットワーク経由で提供される 様々な端末からアクセスできる 必要な時に 必要な量および質のサービスを利用できる Cloud は 新しい技術か? 7
コンピュータの歴史 参考 : http://www.infonet.co.jp/ueyama/ip/history/history_ct.html https://www.nic.ad.jp/timeline/ 1940's 現代的なコンピュータの始まり Zune Z3, COLOSSUS, ENIAC, etc. 1950's 商用計算機の登場 UNIVAC-1, IBM-701, ETL MARK IV, FORTRAN, etc. 1960's コンピュータの普及とコンピュータネットワークの登場 IBM-360, PDP-8, ALGOL, COBOL, LISP, BASIC, ARPANET 1970's パーソナルコンピュータの登場 ALTAIR, APPLE-I, APPLE-II, PC-8001, PASCAL, C 1980's インターネットプロトコルの利用開始 Windows, Mac, UNIX の普及 TCP/IP, IBM PC, MS-DOS, Machintosh, Windows, BSD 1990's Web の運用開始, Linux の登場 Netscape Navigator, Internet Explorer, Amazon, Yahoo, Google, SalesForce, Linux, Java 2000's Web サービスの普及 スマートフォンの登場 Gmail, Wikipedia, Skype, Facebook, YouTube, Amazon Web Service, Dropbox, iphone, Android 2010's Cloud の普及 HTML5, OpenStack, CloudStack, OpenFlow 8
大型コンピュータ時代 (1950's ~) 一台の大きなコンピュータを 多数の利用者が同時利用 ホストコンピュータ 汎用コンピュータ メインフレーム etc. Time-Sharing System 短時間毎に利用者を切り替えて それぞれの処理をする 見かけ上 同時に複数の処理をしているように見せる Partitioning 1 台の計算機を複数の計算機に分割して見せる 実は かなり Cloud っぽい 利用 9
PC, ワークステーション時代 (1970's ~) 計算機の小型化 分散化 計算機センターからサーバ室へ サーバ室からデスクトップへ パーソナル 化 : 共有から個人所有へ インターネットが無かった時代 10
インターネット時代 (1990's ~) 標準化 OS MS-DOS, Windows, UNIX, Linux インターネットプロトコル Web ネットワーク高速化 数百 bps -> 数千 bps -> 10Mbps -> 100Mbps -> 1Gbps 高速基幹ネットワーク整備 モバイルネットワーク普及 携帯電話 スマートフォン Wifi いつでも どこでも 高速ネットワークで接続 11
初期の Web 試験的なページの作成 建物案内ページ 各階のエレベータの写真 3 次元迷路 リンクをクリックして移動 単なる情報提供 会社紹介 商品紹介 etc. 注文は電話か FAX で Left Forward Right 12
Web サービスの高度化 ビジネス支援 商品注文 予約 顧客管理 プロジェクト管理 オンラインサービス提供 アプリケーション メール 地図 オフィスツール etc. ホスティングサービス 計算 ストレージ サービス間相互連携 13
クラウドへ (2000's~) 計算機の能力向上 仮想化技術の発達 ネットワークの高速化 モバイルネットワークの充実 スマートフォンの登場 サービスの API (Application Program Interface) の共通化 標準化 より高度な Web サービスの実現 14
仮想化技術 もの を隠し サービス を提供 例 ) 仮想マシン Service Virtual Machine Virtual Machine Virtual Machine Virtual Machine Virtualization Software Thing Hardware 仮想化の対象 計算機 ストレージ Virtual Machine Manager (VMware, Xen, KVM, HyperV,...) ネットワーク VLAN, Software Defined Network (OpenFlow,...) 計算機の能力向上にともなって ソフトウェア制御が容易に => 管理の簡素化 15
Cloud Computing 誕生 昔から インターネットを雲のマークで表していた Eric Schmidt (Google) の発言 (2006 年 ) により インターネット上のサービスを Cloud Computing と呼ぶように http://www.economist.com/node/8133511/ Today we live in the clouds. 16
Cloud の正式な定義 NIST (National Institute of Standards and Technology) による定義 (2011 年 ) https://csrc.nist.gov/publications/detail/sp/800-145/final 5 essential characteristics 3 service models 4 deployment models 厳密な定義ではなく おおまかな概念を説明したもの 17
5 Essential Characteristics On-demand self-service 必要な時に簡単に利用できる Broad network access 様々な機器からネットワークからアクセスできる Resource pooling 多数の利用者に対し 保持している資源を提供できる Rapid elasticity 利用者の要求に応じて 資源をすぐに拡張できる Measured service 使用する資源量は数値で計測し 記録できる 18
3 Service Models SaaS (Software as a Service) アプリケーションをサービスとして提供する Gmail, Google Map, etc. PaaS (Platform as a Service) アプリケーションを開発する環境をサービスとして提供する IaaS (Infrastructure as a Service) ハードウェアだけをサービスとして提供する でも 利用者が選んだ OS がインストールされた状態で提供されることが多い Application OS and development tools Prepared or developed by users Hardware SaaS PaaS IaaS 19
4 Deployment Models Private Cloud 一つの組織 ( 学校 会社 官庁 部 課 etc.) の中で利用 Community Cloud 同じ目的で集まった人々の集まり ( 地域 団体 仲間 ) の中で利用 Public Cloud 基本的にだれでも利用可能 典型的な Cloud Hybrid Cloud 複数の model の組み合わせ 20
Cloud OS 各種ハードウェアを仮想化し IaaS として提供する基本ソフトウェア (Compute, Storage, Network, Authentication, GUI, OS image) Ex) OpenStack from: https://docs.openstack.org/security-guide/introduction/introduction-to-openstack.html 提供したいサービスに合わせて仮想サーバ 仮想ストレージ 仮想ネットワークを組み合わせて Cloud 環境を構築 Internet Switch 2 Switch 1 Router VM VM OS images volume volume Network nodes Compute nodes Storage nodes 21
Cloud に似た概念 : Grid Computing 電力網 (Power Grid) のように 計算機の能力を必要に応じて提供する仕組み インターネット上の多数の計算機を繋げて 巨大な仮想スーパーコンピュータや仮想ストレージを構築 主な Grid サービスの種類 Compute Grid Data Grid Service Grid 22
Grid Computing の歴史 Grid 規格を議論する組織 1998 Global Grid Forum 主に研究機関が参加 2004 Enterprise Grid Alliance 主に企業が参加 2006 Open Grid Forum 統合 Grid 規格 : OGSA (Open Grid Service Architecture), 2004 分散した計算機を管理 統合 仮想化するインタフェース Web service の高度化に対応して規格を修正 23
Grid と Cloud Grid Cloud の台頭にともない 関心低下 ビジネスに利用するには複雑すぎる規格 現在は volunteer computing が主体 インターネット上の空いている計算機群に仕事を配って大規模な問題を解く SETI@Home https://setiathome.berkeley.edu/ 膨大な天体望遠鏡の画像から宇宙人を探す Folding@Home http://folding.stanford.edu/ タンパク質の折り畳み構造を解析して これに関係する様々な疾病の治療法に役立てる Cloud Web サービスに合わせて規格を制定 内部では Grid Computing の技術を応用 仮想化 負荷分散 認証 etc. 24
Cloud の料金 基本的に 従量課金 Amazon Web Service EC2: https://aws.amazon.com/jp/ec2/pricing/on-demand/ Google App Engine: https://cloud.google.com/compute/pricing データ転送にも課金されるので注意 無料 サービス ある量を超えるまでは無料 Google: 1VM, 30GB HDD, 1GB data transfer 全サービスが無料 Gmail, Google Maps, etc. おそらく 何らかの形で間接的に支払っている サービス化したことで 多様なビジネスモデルが可能になった 25
Cloud のデメリット 耐障害性 ネットワーク障害 サーバ障害 データ消失 セキュリティ 不正アクセス 会社の信頼性 会社がある国の信頼性 料金 必ずしも安くなるとは限らない 想定を超える利用 mail web browser 性能 特に計算性能は 仮想化や遠隔アクセスによるオーバヘッドのため 購入した計算機に比べて遅くなる場合がある 26
Cloud は生き残るか? Cloud は buzz word 技術としては 新しくない 名前で興味を引く キーワードとしてのピークは 2009 年 ~2011 年 例え言葉は使われなくなっても Cloud 的な ネットワークを介したサービスは 広がっていく 利便性 経済性 拡張性 Eric Schmidt の発言の続き : Cloud computing is hardly perfect: internet-based services aren't always reliable and there is often no way to use them offline. But the direction is clear. Simplicity is triumphing over complexity. Accessibility is beating exclusivity. Power is increasingly in the hands of the user. 27