1 / 72

AmazonEC2 で Web アプリを動かす勉強会

AmazonEC2 で Web アプリを動かす勉強会. 開発部 品質グループ 木崎 悟. アジェンダ. クラウド・コンピューティング Amazon Web Services(AWS) Amazon EC2/S3/EBS Web アプリ構築. クラウド・コンピューティング. クラウドとは. クラウド = 雲. 雲からサービスが降ってくる. 利用者. 雲の中身. 雲の中 = ハードウェアやソフトウェアの実体. クラウド・アプリケーション層. クラウド・サービス層. クラウド基盤層. クラウドのサービス. SaaS = クラウド・アプリケーション層

jonah
Download Presentation

AmazonEC2 で Web アプリを動かす勉強会

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AmazonEC2でWebアプリを動かす勉強会 開発部 品質グループ 木崎 悟

  2. アジェンダ • クラウド・コンピューティング • Amazon Web Services(AWS) • Amazon EC2/S3/EBS • Webアプリ構築

  3. クラウド・コンピューティング

  4. クラウドとは クラウド = 雲 雲からサービスが降ってくる 利用者

  5. 雲の中身 雲の中 = ハードウェアやソフトウェアの実体 クラウド・アプリケーション層 クラウド・サービス層 クラウド基盤層

  6. クラウドのサービス • SaaS= クラウド・アプリケーション層 • PaaS = クラウド・サービス層 • HaaS/IaaS/DaaS = クラウド基盤層 Microsoft Google Sales Force Amazon

  7. SaaSのサービス例 • Gmail(https://mail.google.com/) - Googleが提供しているメールサービス • Googleドキュメント - Googleが提供しているオフィスソフト • SalesforceCRM - Salesforce.comが提供している顧客管理システムのサービス

  8. PaaSのサービス例 • Google App Engine - Googleが提供しているプラットフォームサービス • Force.com - Salesforce.comが提供している業務用Webアプリケーションプラットフォームサービス • Heroku - プログラミング言語「Ruby」をベースにしたプラットフォームサービス

  9. HaaS/IaaSのサービス例 • Amazon Web Services(http://aws.amazon.com/) - Amazonが提供しているコンピューティング・リソースのレンタルサービス ※ 後のスライドで詳しく載せます • GoGrid(http://www.gogrid.com/) - ServePathが提供している、コンピューティング・リソースのレンタルサービス

  10. クラウド・プラットフォーム ※出典:特集 クラウド体験記 http://www.atmarkit.co.jp/fdotnet/special/cloudcompare01/cloudcompare01_01.html

  11. Amazon Web Services

  12. クラウドコンピューティング・サービス Amazon Web Services

  13. AWSのサービス

  14. サービス紹介 ストレージ:アプリケーションのデータを格納するためのサービス CDN:コンテンツを高速に配信することが可能なサービス

  15. 料金体系 • 初期費用は不要 • 使った分だけ支払う従量課金制 例)AmazonEC2 Standard(Small/Windows)(利用料金 12円/時間) 1か月 12円 * 24時間 * 30日 = 8,640 円 1年 12円 *24時間 * 365日 = 105,120 円 1年契約 予約料 22,750円 (利用料金 6円/時間) 22,750円 + 6円 * 24時間 * 360日 = 75,310円

  16. 料金の確認(Account Activity)

  17. 事例紹介(1/3) • The New York Times • 過去記事をAmazon S3 に保存(数TB) • 100台以上のEC2インスタンスを使用

  18. 事例紹介(2/3) • NASDAQ • 過去の株式市場情報をAmazon S3に保存

  19. 事例紹介(3/3) • ANIMOTO • スライドショー作成サービス • 動画処理、およびファイルの保管にAmazon EC2とAmazon S3を使用

  20. アカウント登録方法 URL:http://aws.amazon.com/

  21. 日本語サイト URL:http://aws.amazon.com/jp/ 準備中のようです

  22. アカウント作成

  23. アカウント登録完了

  24. 支払い情報登録

  25. 本人確認

  26. Amazon EC2/S3/EBS

  27. Amazon EC2について • Amazon Elastic Compute Cloudの略 • サーバー・リソースのホスティングサービス • WindowsやLinuxなどの仮想サーバーを時間単位で利用可能 • 開発者 約54万人(2009年4月時点)

  28. AmazonEC2の利点 • OSの上位のレイヤーに対する制約がない • ミドルウェアや開発言語、フレームワークなど自由に選択することが可能 • システムを移行することが容易 • 従来の環境とほぼ同等に扱える • リソースが不足した場合、1ランク上のサーバーリソースを積んだ仮想サーバーを即座に利用可能

  29. インスタンス・タイプ ※ ECU:Amazonが定義したCPUのリソース単位 約1.0GHzから1.2GHzで動作するAMD Opteron/Intel Xeonプロセッサ の1基に相当する

  30. ツールなど • Amazon EC2 API Tools(コマンドラインツール) • S3 FireFox Organizer(FireFoxのプラグイン) • AWS Management Console(AWS管理用コンソール) コマンドラインツールの方が前からあるため、説明するサイトや書籍が多い  今回は AWSManagement Console を利用した管理方法を解説します

  31. AWS Management Console

  32. Webアプリ構築

  33. 事前準備 • インスタンスを作成する前に以下の設定をします • Key Pairs • Security Groups Windows環境から接続することを想定します ※ 次のソフトウェアがインストール済み ・Putty(SSHクライアント) ・WinSCP(FTPクライアント)

  34. Key Pairs • Key Pairs = 公開鍵と秘密鍵 • 仮想サーバにリモートログインするのに必要

  35. Security Groups(1/3) • ファイアウォールの設定

  36. Security Groups(2/3) • デフォルト設定だとすべての通信が許可

  37. Security Groups(3/3) 作成したセキュリティグループ

  38. 仮想サーバ作成

  39. OSの選択

  40. 選択可能なOS • Windows • Windows Server 2008 Datacenter Edition (i386/x86_64) • Windows Server 2008 + SQL Server (i386/x86_64) • UNIX/Linux • fedora 8 (i386/x86_64) • CentOS 5.4 (x86_64) • PublicなAMIを利用することも可能

  41. Linux系OSの場合 • PuTTyを利用してSSH接続 • Key Pairsを利用 • PuTTygendeでPuTTy秘密鍵ファイル(ppk)に変換

  42. PuTTygen

  43. PuTTygen Key Pairs で作成した秘密鍵をロード Putty用の秘密鍵を保存

  44. PuTTyによる接続

  45. PuTTyによる接続 作成したPutty用秘密鍵を設定

  46. PuTTyによる接続 • Rootユーザでログインすることが可能

  47. カスタマイズ • タイムゾーンの変更(海外になっているため) • 必要なパッケージをインストール • 必要なファイルなどはWinSCPで転送

  48. Webアプリのインストール • 以下のソフトウェアをインストールします • Java • Apache • Tomcat • Oracle

  49. Javaのインストール Linux用のJDKをOracleのページからダウンロード ① 実行権限を付与します #chmod 755 jdk-6u21-linux-i586-rpm.bin ②インストール # ./jdk-6u21-linux-i586-rpm.bin ③ .bash_profileまたは.bashrcファイルに以下の行を追加します # vi ~/.bash_profile export JAVA_HOME=/usr/java/jdk1.6.0_21 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar ④ 反映させます # source .bash_profile http://java.sun.com/javase/ja/6/download.html

  50. Apacheのインストール ※ yumでインストールします ① インストール # yum install httpd ② 起動 # service httpd start ③ 停止 # service httpd stop 起動後にPublic DNS(ホスト)にアクセス

More Related