Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

aws上でcloud foundryを構築してみた

3,933 views

Published on

aws上でcloud foundryを構築してみた

  1. 1. AWS上でCloud Foundryを構築してみた 技術センター 技術開発部門 小久保 祐一 2012.1.19 NTT Software Corporation http://www.ntts.co.jp/ http://www.nttsoft.com/
  2. 2. 2 AWS上でCloud Foundryを構築してみた • Amazon EC2 上にCloud Foundryのマルチノード 環境をセットアップ – 検証を行う環境は付属のsample/multihost_mysql セットアップスクリプトで構築 • Amazon CloudWatch、Auto Scalingを使って、 Cloud FoundryのDEAをスケーリング 今後検証今後検証今後検証今後検証
  3. 3. 3 Cloud Foundry(マルチノード) on Amazon EC2 resresresrestttt ※上記枠内の図は、Derek Collision 「Cloud Foundry The Building of the Open PaaS」 P26 から引用 http://assets.en.oreilly.com/1/event/61/CloudFoundry%20-%20The%20building%20of%20the%20Open%20PaaS%20Presentation.pdf mysql0mysql0mysql0mysql0,,,, mysql1mysql1mysql1mysql1 deadeadeadea
  4. 4. 4 Cloud Foundry(マルチノード) on Amazon EC2 • AWS利用準備 – AWSのアカウントを取得する、キーペアの生成、セキュリティグループの 設定等を行う • セキュリティグループには 22, 80 のinboundを許可する
  5. 5. 5 Cloud Foundry(マルチノード) on Amazon EC2 • 指定したAMIでEC2インスタンスを起動する – Ubuntu Lucid 64bit (Largeインスタンス、ami-ed227ea8) – リージョンはus-westを使用 – AMI Locator • http://cloud.ubuntu.com/ami/ – AWS Management Console (EC2) • https://console.aws.amazon.com/ec2/home?region=us-west-1&
  6. 6. 6 Cloud Foundry(マルチノード) on Amazon EC2 • Cloud Foundryをインストールする – 事前準備として、ruby-full, rubygems, git-coreをインストール – git cloneでリポジトリの複製を取得する • git clone https://github.com/cloudfoundry/vcap.git – vcap_dev_setupでChef(構成管理ツール)を用いたインストールを各ノードで実行
  7. 7. 7 Cloud Foundry(マルチノード) on Amazon EC2 • NW環境を設定する – Cloud Foundryとドメイン名をDNSで紐付けるために、固定のPublic IPを取 得する(Elastic IP Address) • Elastic IP Address を割り当てたホストのローカルアドレスは、ec2-xxx-xxx- xxx-xxx.us-west-1.compute.amazonaws.com のFQDN名を名前解決して取得 する – ワイルドカード対応ダイナミックDNSでIPと紐付ける • Cloud Foundry のAP公開URLは、アプリケーション名をサブドメインとしたURL になる – 各設定ファイルの external_uri, local_route, mbus, cloud_controller_uri を 変更する – AWS Management Console (Elastic IP Address) • https://console.aws.amazon.com/ec2/home?region=us-west- 1&#s=Addresses – Free Wildcard DNS • http://www.fwdns.org/records
  8. 8. 8 Cloud Foundry(マルチノード) on Amazon EC2 • Cloud Foundryを起動する
  9. 9. 9 Cloud Foundry(マルチノード) on Amazon EC2 • Cloud Foundryの動作状況をvmcから確認する
  10. 10. 10 Cloud Foundry(マルチノード) on Amazon EC2 • Cloud Foundryへアプリケーションをデプロイする
  11. 11. 11 Cloud Foundry(マルチノード) on Amazon EC2 • ブラウザからアプリケーションを実行する – Proxy経由でアクセスするとForbiddenになる(調査中)
  12. 12. 12 Cloud Foundry(マルチノード) on Amazon EC2 • Amazon CloudWatch、 Auto Scalingによるスケール・イン、ス ケール・アウトを設定する – Amazon CloudWatchでサーバの負荷状態を監視 – 負荷状況に応じて、Auto ScalingでEC2インスタンスを増減する – スケールアウトの際には、EC2インスタンス起動時にdea等が自動起動し、 自動的に系に組み込まれるように設定しておく必要がある – スケール・インの際には、EC2インスタンスが問答無用で停止されるため システム状態の整合性が損なわれないように構成する必要がある – アプリケーションの状況に応じてスケーリングするためにはHealth Managerとの連携が必要か? Cloud Foundry + RightScale
  13. 13. 13 Cloud Foundry on Amazon EC2 × RightScale • RightScaleがCloud Foundry用のサーバテンプレートを用意 – Cloud Foundry用のサーバテンプレートは、RightScaleのFreeアカウントで利用可 – AWS, Rackspaceで動作可 • https://my.rightscale.com/library/server_templates/Cloud-Foundry-All-In-One- Alpha/27743 – サーバテンプレート利用手順 • http://support.rightscale.com/27- Partners/VMware/ST_and_Runbooks/VMware_Cloud_Application_Platform_ServerTemp late_and_Runbook • Cloud Foundryのインフラ状況に応じたオートスケーリング – 各サーバの運転状況を監視し、DEAの数、Routerの数、Cloud Controllerの数、各 種Serviceの数等を管理 • Cloud Foundryで実行中のアプリケーション状況に応じたオートスケーリング – 外部からアプリケーションの監視を容易に行えるため、アプリケーションの状況に 応じてDEAの数を管理
  14. 14. 14 Cloud Foundry on Amazon EC2 事例事例事例事例 • Stackato/ActiveState Software Inc. – Community Lead for Python – Python、Perl、PHP、Ruby、Node.js、およびJavaをサポートするプライベー トのPaaSを作成するためのクラウドプラットフォーム – StackatoサンドボックスがAmazon EC2上で利用可能 – http://www.activestate.com/cloud • AppFog/AppFog,Inc – Community Lead for PHP – クラウドベースのWebアプリケーションホスティングサービス – IaaS環境としてAmazon EC2の他、VMware vSphereTM、Rackspace、 Joyent等から選択可能 – http://appfog.com/

×