このエントリは、Open PaaS Advent Calendar 2015の24日目のエントリーです。
Open PaaSということなので、シンプルにCloud Foundryを採用しているPaaSを簡単に使ってみた話です。比較目的ではありませんのであしからず。
使ってみて感じた事
- サービス、Buildpack
Bluemixは、登録されているサービスやBuildpackが一番多いですが、やはり米国にある為か若干遅く感じます。Pivotal Web Servicesは、Bluemixの次に、サービス数やBuildpackの数が多く、Cloudn PaaSは、登録されているサービスやBuildpackは一番少ないですが、日本にある為さくさく動く感じがします。 - 管理ポータル
Blumixと、Pivotal Web Servicesは管理ポータルが直感的にわかりますが、Pivotal Web Servicesは日本語化されていないです。Bluemixはかなり日本語化が進んでいる感じです。Cloudn PaaSは全て日本語ですが、前者に比べてUIは劣る感じです。 - 配置モデル
Pivotalは、Pivotal Cloud Foundryというオンプレミス用の製品を持っているので、プライベートクラウドで、情報システム部門管理のもと利用したい場合は、Pivotal Cloud Foundryの一択になります。Bluemixも、Bluemix Localというサービスもありますが、フルマネージド付きなので、全てまとめてIBMに預けたいお客様には向いているかもしれません。ホスティッド・プライベート・クラウドで利用する場合、BluemixはSoftLayerのみをターゲットにしていますが、Pivotal Cloud Foundaryは、どのホスティング事業者でも展開できます。 - オンプレ版を体験できてないのでこちらも、時間があれば、Pivotal Cloud FoundryとOSS版のCloud Foundaryも使ってみたいと思います。
最近Cloud Foundryが発表したCloud Foundry Certified Providersによれば、Cloud Foundryを採用しているPaaS事業者やソフトウェアベンダーで、CertifiedされているPaaS事業者やソフトウェアベンダーは下記の7社だそうです。
- CenturyLink AppFog
- HPE Helion Cloud Foundry
- Huawei Fusion Stage
- IBM Bluemix
- Pivotal Cloud Foundry
- SAP Hana Cloud Platform
- Swisscom Application Cloud
2015/12/24現在、Certified Providersとしてあがってませんが、NTT Communication Cloudn PaaSも、Cloud Foundryを採用しています。
Cloud FoundryベースのPaaSを使用する前に、下記の記事を読んでおくと理解が進みます。@jacopen氏の解説を@jnino氏がわかりやすくまとめてくれています。これ必見です。
- PaaS基盤「Cloud Foundry V2」のアーキテクチャは、どうなっている?(前編)
- PaaS基盤「Cloud Foundry V2」のアーキテクチャは、どうなっている?(後編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(前編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(中編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(後編)
読み終えたところで、Cloud Foundryベースの代表的な3つのサービス、IBM Bluemix、NTT Communication Cloudn PaaS、Pivotal Web Servicesを使ってみたいと思います。Pivotalは、オンプミレミス用の製品を提供しているソフトウェアベンダーですが、Pivotal Cloud Foundryを簡単に体験できるPaaS「Pivotal Web Services」も提供していますので、そちらを使ってみたいと思います。
IBM Bluemix
-
https://console.ng.bluemix.net より登録してログインします。
-
ダッシュボードより、Cloud Foundryアプリをクリック
-
Web - PHPをクリックし、続行
-
アプリ名(例: 1224phptest)を入力して、完了
-
しばらくすると、サンプルページ(例: http://1224phptest.mybluemix.net)が表示されます。
-
Cloud Foundry CLIをダウンロードし、インストールします。
-
スターター・コード(例: 1224phptest)のダウンロードし解凍します。**今回はこのサンプルアプリを少し編集して、他のPaaSでも使います。少しでもCloud FoundryベースのPaaSでは互換性があるんだなと感じてもらう為です。**16〜18行目を下記のコードに変更してください。
<p class='description'></p>
<span class="blue">SERVER_ADDR: </span>
<?php echo $_ENV['SERVER_ADDR']; ?>
それでは、早速CF
コマンドを使って操作していきます。CF
コマンドについてはGetting Started with the cf CLIを参照するといいと思います。
API endpointを設定し、ログインし、サンプルアプリをデプロイします。
IBM Bluemixは、APIのバージョンが2.40.0だとわかります。デプロイが終わったらブラウザーで,
1224phptest.mybluemix.netにアクセスします。正しくPHPアプリケーションがデプロイされているのがわかります。
$ cd 1224phptest //ダウンロードし解凍したディレクトリ
$ cf api https://api.ng.bluemix.net
$ cf api
API endpoint: https://api.ng.bluemix.net (API version: 2.40.0)
$ cf login -u [user name] -p [password]
$ cf push 1224phptest
Using manifest file .../devtree/1224phptest/manifest.yml
中略...
requested state: started
instances: 1/1
usage: 128M x 1 instances
urls: 1224phptest.mybluemix.net
package uploaded: Fri Dec 25 02:43:13 UTC 2015
stack: cflinuxfs2
buildpack: php_buildpack
state since cpu memory disk details
#0 running 2015-12-25 11:43:54 AM 0.0% 55.3M of 128M 124.3M of 1G
デプロイしたアプリケーションを確認します。
デフォルトのドメインmybluemix.net
で、アプリがデプロイされているのがわかります。
メモリが128M、インスタンスが1つ、ディスクが1Gで動いているのがわかります。
$ cf apps
Getting apps in org [org name] / space dev as [space name]...
OK
name requested state instances memory disk urls
1224phptest started 1/1 128M 1G 1224phptest.mybluemix.net
メモリサイズやインスタンス数を増やしたりしてみます。
数十秒で簡単にメモリサイズや、インスタンス数を増やせます。ブラウザーからリロードを繰り返すと、サーバーのIPアドレスが変更されているので、負荷分散も行われているのがわかります。
$ cf scale 1224phptest -i 4 -m 256M
This will cause the app to restart. Are you sure you want to scale 1224phptest?> y
中略...
$ cf apps
Getting apps in org [org name] / space dev as [org name]...
OK
name requested state instances memory disk urls
1224phptest started 4/4 256M 1G 1224phptest.mybluemix.net
isuciot1 stopped 0/1 512M 1G isuciot1.mybluemix.net
アプリケーションの削除
作成したアプリケーションは使わない場合必ず削除しておきましょう。
$ cf delete 1224phptest
Really delete the app 1224phptest?> y
Deleting app 1224phptest in org [org name] / space default as [space name]...
OK
User, Org, Space を確認します。
org, spaceを作成し、roleの設定などできますが、ここではデフォルトのままで使用します。
cf target
API endpoint: https://api.ng.bluemix.net (API version: 2.40.0)
User: [user name]
Org: [org name]
Space: [space name]
buildpackを確認します。
buildpackとは、Herokuが作った任意の言語やフレームワークを利用できるようにした仕組みです。2015/12/24現在、Bluemixには16のbuildpackが登録されているようです。
cf buildpacks
Getting buildpacks...
buildpack position enabled locked filename
liberty-for-java 1 true false buildpack_liberty-for-java_v2.3-20151208-1311-yp.zip
sdk-for-nodejs 2 true false buildpack_sdk-for-nodejs_v2.8-20151209-1403-yp.zip
noop-buildpack 3 true false noop-buildpack-20140311-1519.zip
java_buildpack 4 true false java-buildpack-v3.3.zip
ruby_buildpack 5 true false ruby_buildpack-cached-v1.6.7.zip
nodejs_buildpack 6 true false nodejs_buildpack-cached-v1.5.0.zip
go_buildpack 7 true false go_buildpack-cached-v1.6.2.zip
python_buildpack 8 true false python_buildpack-cached-v1.5.1.zip
php_buildpack 9 true false php_buildpack-cached-v4.1.5.zip
aspnet5-experimental 10 true false buildpack_aspnet5-experimental_v0.7-20151022-1257.zip
xpages_buildpack 11 true false xpages_buildpack_v9.0.1-bmix-pb-20151016-8000.zip
sdk-for-nodejs-v3beta 12 true false buildpack_sdk-for-nodejs_v3.0beta-20151211-2041-yp.zip
liberty-for-java-v1 13 true false buildpack_liberty-for-java_v1.22-20150824-1104-yp.zip
aspnet5-experimental_v0_6-20150916-1220 14 true false buildpack_aspnet5-experimental_v0.6-20150916-1220.zip
sdk-for-nodejs_v2_7-20151118-1003 15 true false buildpack_sdk-for-nodejs_v2.7-20151118-1003-yp.zip
liberty-for-java_v2_2-20151119-1720 16 true false buildpack_liberty-for-java_v2.2-20151119-1720-yp.zip
Bluemixで利用できるサービスを確認します。
2015/12/24現在、Bluemixでは123のサービスが登録されているので,
全てのサービスを表示すると時間がかかります。
$ cf marketplace
Getting services from marketplace in org [org name] / space dev as [space name]...
OK
service plans description
API Management Standard v2* Publish, manage, and consume APIs.
AdvancedMobileAccess Gold*, Bronze* Finely tune mobile apps with operational analytics, and ensure communications with back end systems are secure.
Analytics for Apache Hadoop Free IBM Analytics for Apache Hadoop is a quick and free option to try Apache Hadoop and BigInsights. For production use or proof of concept at scale, use the IBM BigInsights for Apache Hadoop service.
AppScan Dynamic Analyzer standard* A robust, practical security vulnerability assessment for your web applications.
AppScan Mobile Analyzer standard* A robust, practical security vulnerability assessment for your Android applications.
Application Security Manager asm-service-plan A practical way to assess the business risk of your web applications.
Auto-Scaling free Automatically increase or decrease the number of application instances based on a policy you define.
中略...
cleardb spark Highly available MySQL for your Apps.
以下省略...
$ cf marketplace -s cleardb
Getting service plan information for service cleardb as [org name]...
OK
service plan description free or paid
spark Great for getting started and developing your apps free
アプリケーションからDBに接続してみる。
MySQLインスタンスを作成し、phpmyadminというPHPアプリケーションをデプロイして後接続してみます。
MySQLデータベースはcleardb
を利用します。詳細情報を念のため、Webで確認します。DBサイズ500Mまで、Freeという事です。
$ git clone https://github.com/dmikusa-pivotal/cf-ex-phpmyadmin
$ cd cf-ex-phpmyadmin
$ cf create-service cleardb spark phpmyadmin-mysql
$ cf services
Getting services in org [org name]/ space dev as [space name]...
OK
name service plan bound apps last operation
phpmyadmin-mysql cleardb spark create succeeded
$ vi manifest.yml
下記を変更
name: phpmyadmin //アプリ名になります
host: phpmyadmin-host //ユニークな名前
domain: mybluemix.net //Bluemixデフォルトのドメイン名
services: phpmyadmin-mysql //作成したMySQLインスタンス
$ cf push
$ cf services
データベース接続確認
http://phpmyadmin-host.mybluemix.net にアクセスし、DB管理ポータルを確認します。
ユーザー名とパスワードは、phpmyadminの環境変数VCAP_SERVICES
のusername
とpassword
を参照してください。
$ cf env phpmyadmin
アプリケーションとサービスの削除
デプロイしたアプリケーションとサービスを削除しておきます。
$ cf apps //アプリケーション名の確認
$ cf services //サービス名の確認
$ cf unbind-service phpmyadmin phpmyadmin-mysql
$ cf delete-service phpmyadmin-mysql
$ cf delete phpmyadmin
$ cf apps //削除されたか確認
$ cf services //削除されたか確認
NTT Communication Cloudn PaaS
UIからもアプリケーションを作成できますが、Bluemixと同じようにcf
コマンドで操作したいと思います。基本的にBluemixでやったことと同じ操作をします。違いがある場合にコメントしていきたいと思います。
Cloudn PaaSでは、gud
と呼ばれるコマンドを使用して操作するようにありますが、cf
コマンドで問題なさそうですので、ここではcf
コマンドで操作します。
Cloudnでは、cf login
時に、メールアドレスや自分で設定したパスワードではなく、アクセスキーIDと秘密鍵で認証します。Cloudn管理ポータルの右上をクリックして、APIアクセスキー・秘密鍵管理をクリックして、サービス共通瀬キュションにあるアクセスキーIDと秘密鍵をメモっておきます。
では早速、Cloudnにアプリケーションをデプロイしていきましょう。
API endpointを設定し、ログインし、サンプルアプリをデプロイします。
Cloudn PaaSは、APIのバージョンが2.4.0だとわかります。デプロイが終わったらブラウザーで,
1224phptest.paas.jp-e1.cloudn-service.comにアクセスします。正しくPHPアプリケーションがデプロイされているのがわかります。
$ cd 1224phptest
$ cf api api.paas.jp-e1.cloudn-service.com
Setting api endpoint to api.paas.jp-e1.cloudn-service.com...
OK
API endpoint: https://api.paas.jp-e1.cloudn-service.com (API version: 2.4.0)
$ cf login -u [user name] -p [password]
$ vi manifest.yml
applications:
- path: .
memory: 128M
instances: 1
# domain: mybluemix.net //コメントアウト
name: 1224phptest
host: 1224phptest
disk_quota: 1024M
# buildpack: php_buildpack //コメントアウト
$ cf push
Using manifest file .../devtree/1224phptest/manifest.yml
中略...
requested state: started
instances: 1/1
usage: 128M x 1 instances
urls: 1224phptest.paas.jp-e1.cloudn-service.com
package uploaded: unknown
stack: lucid64
buildpack: PHP
state since cpu memory disk details
#0 running 2015-12-25 03:14:32 PM 0.0% 16M of 128M 74.2M of 1G
デプロイしたアプリケーションを確認します。
デフォルトのドメインpaas.jp-e1.cloudn-service.com
で、アプリがデプロイされているのがわかります。
メモリが128M、インスタンスが1つ、ディスクが1Gで動いているのがわかります。
$ cf apps
Getting apps in org [org name] / space default as [space name]...
OK
name requested state instances memory disk urls
1224phptest started 1/1 128M 1G 1224phptest.paas.jp-e1.cloudn-service.com
メモリサイズやインスタンス数を増やしたりしてみます。
数十秒で簡単にメモリサイズや、インスタンス数を増やせます。ブラウザーからリロードを繰り返すと、サーバーのIPアドレスが変更されているので、負荷分散も行われているのがわかります。
cf scale 1224phptest -i 4 -m 256M
This will cause the app to restart. Are you sure you want to scale 1224phptest?> y
中略...
cf apps
Getting apps in org [org name] / space dev as [org name]...
OK
name requested state instances memory disk urls
1224phptest started 4/4 256M 1G 1224phptest.paas.jp-e1.cloudn-service.com
アプリケーションの削除
作成したアプリケーションは使わない場合必ず削除しておきましょう。
$ cf delete 1224phptest
Really delete the app 1224phptest?> y
Deleting app 1224phptest in org [org name] / space default as [space name]...
OK
User, Org, Space を確認します。
org, spaceを作成し、roleの設定などできますが、ここではデフォルトのままで使用します。
$ cf target
API endpoint: https://api.paas.jp-e1.cloudn-service.com (API version: 2.4.0)
User: [user name]
Org: [org name]
Space: [space name]
buildpackを確認します。
buildpackとは、Herokuが作った任意の言語やフレームワークを利用できるようにした仕組みです。2015/12/24現在、Cloudn PaaSには6つのbuildpackが登録されているようです。
$ cf buildpacks
Getting buildpacks...
buildpack position enabled locked filename
cloudn-php 6 true false php_buildpack_v2015.11.1.zip
cloudn-java 1 true false java_buildpack_v2014.12.1.zip
cloudn-ruby 2 true false ruby_buildpack_v2015.03.1.zip
cloudn-node 3 true false nodejs_buildpack.zip
cloudn-go 4 true false go_buildpack.zip
cloudn-staticfile 5 true false staticfile_buildpack_v2015.08.1.zip
Cloudn PaaSで利用できるサービスを確認します。
2015/12/24現在、Cloudn PaaSでは4のサービスが登録されていることがわかります。
$ cf marketplace
Getting services from marketplace in org [org name] / space default as [space name]...
OK
service plans description
appmonitoring default App monitoring service
jobscheduler default Job scheduling service
mysql default MySQL database
postgresql default PostgreSQL database
TIP: Use 'cf marketplace -s SERVICE' to view descriptions of individual plans of a given service.
$ cf marketplace -s mysql //何故か、詳細を取得できないです。
Getting service plan information for service mysql as [space name]...
FAILED
Could not find service
アプリケーションからDBに接続してみる。
MySQLインスタンスを作成し、phpmyadminというPHPアプリケーションをデプロイして後接続してみます。
MySQLデータベースはmysql
を利用します。
$ cd cf-ex-phpmyadmin
$ cf create-service mysql default phpmyadmin-mysql
$ cf services
Getting services in org [org name]/ space dev as [space name]...
OK
name service plan bound apps last operation
phpmyadmin-mysql cleardb spark create succeeded
$ vi manifest.yml
下記を変更
name: phpmyadmin //アプリ名になります
host: phpmyadmin-host //ユニークな名前
domain: コメントアウト //Bluemixデフォルトのドメイン名
services: phpmyadmin-mysql //作成したMySQLインスタンス
$ cf push
データベース接続確認
http://phpmyadmin-host.paas.jp-e1.cloudn-service.com にアクセスし、DB管理ポータルを確認します。
ユーザー名とパスワードは、phpmyadminの環境変数VCAP_SERVICES
のusername
とpassword
を参照してください。
$ cf env phpmyadmin
アプリケーションとサービスの削除
デプロイしたアプリケーションとサービスを削除しておきます。
$ cf apps //アプリケーション名の確認
$ cf services //サービス名の確認
$ cf unbind-service phpmyadmin phpmyadmin-mysql
$ cf delete-service phpmyadmin-mysql
$ cf delete phpmyadmin
$ cf apps //削除されたか確認
$ cf services //削除されたか確認
Pivotal Web Services
UIからもアプリケーションを作成できますが、Bluemixと同じようにcf
コマンドで操作したいと思います。基本的にBluemixでやったことと同じ操作をします。違いがある場合にコメントしていきたいと思います。
では早速、Pivotal Web Servicesにアプリケーションをデプロイしていきましょう。
API endpointを設定し、ログインし、サンプルアプリをデプロイします。
Pivotal Web Servicesは、APIのバージョンが2.4.0だとわかります。デプロイが終わったらブラウザーで、
1224phptest.cfapps.ioにアクセスします。正しくPHPアプリケーションがデプロイされているのがわかります。
$ cd 1224phptest
$ cf api api.run.pivotal.io
Setting api endpoint to api.run.pivotal.io...
OK
API endpoint: https://api.run.pivotal.io (API version: 2.44.0)
Not logged in. Use 'cf login' to log in.
cf login -u <user name> -p <password>
$ vi manifest.yml
applications:
- path: .
memory: 128M
instances: 1
# domain: mybluemix.net //コメントアウト
name: 1224phptest
host: 1224phptest
disk_quota: 1024M
# buildpack: php_buildpack //コメントアウト
$ cf push
Using manifest file .../devtree/1224phptest/manifest.yml
中略...
requested state: started
instances: 1/1
usage: 128M x 1 instances
urls: 1224phptest.cfapps.io
package uploaded: Fri Dec 25 07:07:14 UTC 2015
stack: cflinuxfs2
buildpack: php_buildpack
state since cpu memory disk details
#0 running 2015-12-25 04:07:57 PM 0.3% 612K of 128M 151.5M of 1G
デプロイしたアプリケーションを確認します。
デフォルトのドメイン``cfapps.io`で、アプリがデプロイされているのがわかります。
メモリが128M、インスタンスが1つ、ディスクが1Gで動いているのがわかります。
$ cf apps
Getting apps in org [org name] / space default as [space name]...
OK
name requested state instances memory disk urls
1224phptest started 1/1 128M 1G 1224phptest.cfapps.io
メモリサイズやインスタンス数を増やしたりしてみます。
数十秒で簡単にメモリサイズや、インスタンス数を増やせます。ブラウザーからリロードを繰り返すと、サーバーのIPアドレスが変更されているので、負荷分散も行われているのがわかります。
$ cf scale 1224phptest -i 4 -m 256M
This will cause the app to restart. Are you sure you want to scale 1224phptest?> y
中略...
$ cf apps
Getting apps in org [org name] / space dev as [org name]...
OK
name requested state instances memory disk urls
1224phptest started 4/4 256M 1G 1224phptest.cfapps.io
アプリケーションの削除
作成したアプリケーションは使わない場合必ず削除しておきましょう。
$ cf delete 1224phptest
Really delete the app 1224phptest?> y
Deleting app 1224phptest in org [org name] / space default as [space name]...
OK
User, Org, Space を確認します。
org, spaceを作成し、roleの設定などできますが、ここではデフォルトのままで使用します。
$ cf target
API endpoint: https://api.run.pivotal.io (API version: 2.44.0)
User: [user name]
Org: [org name]
Space: [space name]
buildpackを確認します。
buildpackとは、Herokuが作った任意の言語やフレームワークを利用できるようにした仕組みです。2015/12/24現在、Pivotal Web Servicesには9つのbuildpackが登録されているようです。
$ cf buildpacks
Getting buildpacks...
buildpack position enabled locked filename
staticfile_buildpack 1 true false staticfile_buildpack-cached-v1.2.3.zip
java_buildpack 2 true false java-buildpack-v3.3.1.zip
ruby_buildpack 3 true false ruby_buildpack-cached-v1.6.9.zip
nodejs_buildpack 4 true false nodejs_buildpack-cached-v1.5.3.zip
go_buildpack 5 true false go_buildpack-cached-v1.7.0.zip
python_buildpack 6 true false python_buildpack-cached-v1.5.2.zip
php_buildpack 7 true false php_buildpack-cached-v4.3.0.zip
liberty_buildpack 8 true false liberty_buildpack.zip
binary_buildpack 9 true false binary_buildpack-cached-v1.0.1.zip
Pivotal Web Servicesで利用できるサービスを確認します。
2015/12/24現在、Pivotal Web Servicesでは24のサービスが登録されていることがわかります。
$ cf marketplace
service plans description
3scale free_appdirect, basic_appdirect*, pro_appdirect* API Management Platform
app-autoscaler bronze, gold Scales bound applications in response to load (beta)
blazemeter free-tier, basic1kmr*, pro5kmr* Performance Testing Platform
cedexisopenmix opx_global*, openmix-gslb-with-fusion-feeds* Openmix Global Cloud & Data Center Load Balancer
cedexisradar free-community-edition Free Website& Mobile App Performance Reports
cleardb spark, boost*, amp*, shock* Highly available MySQL for your Apps.
中略...
$ cf marketplace -s cleardb
Getting service plan information for service cleardb as [org name]...
OK
service plan description free or paid
spark Great for getting started and developing your apps free
boost Best for light production or staging your applications paid
amp For apps with moderate data requirements paid
shock Designed for apps where you need real MySQL reliability, power and throughput paid
アプリケーションからDBに接続してみる。
MySQLインスタンスを作成し、phpmyadminというPHPアプリケーションをデプロイして後接続してみます。
MySQLデータベースはcleardb
の無料プランspark
を利用します。
$ cd cf-ex-phpmyadmin
$ cf create-service cleardb spark phpmyadmin-mysql
$ $ cf services
Getting services in org [org name] / space development as [email]...
OK
name service plan bound apps last operation
phpmyadmin-mysql cleardb spark create succeeded
$ vi manifest.yml
下記を変更
name: phpmyadmin //アプリ名になります
host: phpmyadmin-host //ユニークな名前
domain: コメントアウト //デフォルトのドメイン名
services: phpmyadmin-mysql //作成したMySQLインスタンス
$ cf push
注意: ステージング中、git cloneが失敗したので、buildpackの行は削除した。
Failed to clone git repository at https://github.com/cloudfoundry/php-buildpack.git
Exit status 1
Staging failed: Exited with status 1
FAILED
StagingError
データベース接続確認
http://phpmyadmin-host.cfapps.io にアクセスし、DB管理ポータルを確認します。
ユーザー名とパスワードは、phpmyadminの環境変数VCAP_SERVICES
のusername
とpassword
を参照してください。
$ cf env phpmyadmin
アプリケーションとサービスの削除
デプロイしたアプリケーションとサービスを削除しておきます。
$ cf apps //アプリケーション名の確認
$ cf services //サービス名の確認
$ cf unbind-service phpmyadmin phpmyadmin-mysql
$ cf delete-service phpmyadmin-mysql
$ cf delete phpmyadmin
$ cf apps //削除されたか確認
$ cf services //削除されたか確認
コミュニティ
Cloud Foundryユーザー会、Bluemixユーザー会などに入っておくと有用な情報を入手することができますので、是非登録しておきましょう。
- PaaS勉強会
- Web
- Google Group
- Cloud Foundryユーザー会
- Web
- Bluemixユーザー会
参考
- Cloud Foundry
- Cloud Foundry Documentation
- PaaS基盤「Cloud Foundry V2」のアーキテクチャは、どうなっている?(前編)
- PaaS基盤「Cloud Foundry V2」のアーキテクチャは、どうなっている?(後編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(前編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(中編)
- PaaS基盤「Cloud Foundry V2」内部で使われるBuildpack、Wardenコンテナの仕組みとは?(後編)
- http://www.toughdev.com/articles.php?tag=Bluemix
- http://qiita.com/morikat/items/5c777708de4f4b272435
- http://www.toughdev.com/viewpost.php?id=379&t=1&v=1#s0