Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
microPCF を使ってみよう
宇梶弘晃 @ hiroakiukaji
NTT Lab.
Software Innovation Center
2016/02/10
About Me
名前: Hiroaki Ukaji
仕事: Cloud Foundry
皆さんに2つ質問です
Cloud Foundryを使ったことがある人?
Cloud Foundryを自分で動かしたことがある人?
私の予想
Cloud Foundryを・・・
※PaaS勉強会に限る
使ったことがある 動かしたことがある
60% 10%
比率の正解/不正解はともかく
Cloud Foundry を動かしてみたことがある人は少ない・・・
∵ Cloud Foundryを動かすのは大変!
そう言えば・・・
Cloud Foundryってどうやって動かすんだろう?
そもそも Cloud Foundry とは
= アプリを投げ込むとよしなに動かしてくれるCloud Foundry
(PaaS)
PaaS
source code
そもそも Cloud Foundry とは
別に謎システムが動いていわけではなく
アプリを自動で動かすのに必要なものがいるだけ
DEA
アプリを動かす人
Cloud
Controller
APIを提供する人
Router
アクセスを割り振る人
...
Cloud Foundry の動かし方
つまりこいつらを上手く動かせれば良い・・・けど
※注: 実はもっといます
Cloud Foundry の動かし方
Cloud Foundry の完全自力運用はとてもつらい(らしい)
増えゆくサーバ
あのコンポーネントは・・・どこ?
バージョン管理めんどい・・・
Cloud Foundry の動かし方
Cloud Foundry の完全自力運用はとてもつらい(らしい)
増えるサーバ
あのコンポーネントどこ?
バージョン管理めんどい・・・
分散システムの構成管理を一元化したい
BOSH
分散システム構成管理ツール
(元々はCloud Foundry構築専用)
・構成の一元管理
・VM の Lifecycle 管理
・バージョン管理
・etc…
全体構成も管理してくれる・・・
バージョンも管理してくれる・・・
これで ...
しかし・・・
BOSHは便利だが得てして学習コストが高い
※あくまで「便利なツール」という前提の上での話です
じゃぁ・・・
Q. せっかくの OSS PaaS なのに Cloud Foundry を
試すことはできないの?
じゃぁ・・・
Q. せっかくの OSS PaaS なのに Cloud Foundry を
試すことはできないの?A. いいえ、そんなことはありません。
Cloud Foundry All-in-One
Cloud Foundry を 1VM で簡単に動かせるツール
bosh-lite cf_nise_installer
手軽に
1VMで
Cloud Foundry を動かすためのツール
本日の目標
昨年末に新しく発表された All-in-One Cloud Foundry
“microPCF”
を使えるようになる
microPCF とは?
microPCFとは?
2015年12月に Pivotal 社が発表した
All-in-One Cloud Foundry 構築ツール
microPCFとは?
2015年12月に Pivotal 社が発表した
All-in-One Cloud Foundry 構築ツール
最新バージョン = v0.5.0 (※まだ Pre-release)
v0.1.1 First pre-re...
microPCFとは?
“simplest” と言うからにはよほどシンプルのはず
動かしてみましょう
必要な環境
 Vagrant 1.7+
• VirtualBox 5.0+
• VMWare Fusion 8+
• VMWare Workstation 11+
 Internet connection
 Cloud Foundry C...
イメージ
Your Laptop
Vagrant
VirtualBox
cf CLI
イメージ
Your Laptop
Vagrant
VirtualBox
cf CLI
CF in Ubuntu VMup
イメージ
Your Laptop
Vagrant
VirtualBox
cf CLI
CF in Ubuntu VM
deploy
microPCF(v0.5.0) のインストール手順
$ wget https://github.com/pivotal-cf/micropcf/releases/download/
v0.5.0/Vagrantfile-v0.5.0.base...
microPCF(v0.5.0) のインストール手順
$ wget https://github.com/pivotal-cf/micropcf/releases/download/
v0.5.0/Vagrantfile-v0.5.0.base...
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'micropcf/base' could not be fou...
しばらく待つと・・・
Ubuntu の VM が起動
※ちゃんとsnapshotも撮っておきましょう
API を target
$ cf api api.local.micropcf.io --skip-ssl-validation
Setting api endpoint to api.local.micropcf.io...
OK
API ...
Login
$ cf login
API endpoint: https://api.local.micropcf.io
Email> admin
Password> admin
Authenticating...
OK
user: admin...
完了!
$ cf apps
Getting apps in org micropcf-org / space micropcf-space as admin...
OK
No apps found
以上で環境構築は終わりです
実際に使ってみまし...
簡単なアプリをデプロイ
$ tree
.
├── index.html
└── manifest.yml
0 directories, 2 files
試しに簡単なアプリをデプロイをしてみましょう
※要はただの
“Hello World” in...
簡単なアプリをデプロイ
<!DOCTYPE html>
<html>
<body>
Hello, microPCF!!!
</body>
</html>
試しに簡単なアプリをデプロイをしてみましょう
index.html
---
applica...
簡単なアプリをデプロイ
$ cf push
$ cf push でデプロイ
$ cf push
(一部略)
Starting app hello-staticfile in org micropcf-org / space micropcf-space as admin...
Downloading staticfil...
$ cf push
(一部略)
Starting app hello-staticfile in org micropcf-org / space micropcf-space as admin...
Downloading staticfil...
簡単なアプリをデプロイ
アプリが動きました!
http://hello-staticfile.local.micropcf.io/
ここまでのおさらい
1. Vagrantfile のダウンロード
2. $ vagrant up の実行
3. ログイン
の 3 step で Cloud Foundry のお試し環境を作れました
他の All-in-One Cloud Foundry との比較
他のAll-in-One Cloud Foundry との比較
bosh-lite VS cf_nise_installer VS microPCF
VMWare
2013/08
yudai
2014/04
Pivotal
2015/12
bosh-lite VS cf_nise_installer VS microPCF
bosh-lite cf_nise_installer microPCF
手順
多い
(20step/2h)
少ない
(3step/1h)
少ない
(3ste...
bosh-lite VS cf_nise_installer VS microPCF
bosh-lite cf_nise_installer microPCF
手順
多い
(20step/2h)
少ない
(3step/1h)
少ない
(3ste...
bosh-lite VS cf_nise_installer VS microPCF
bosh-lite cf_nise_installer microPCF
手順
多い
(20step/2h)
少ない
(3step/1h)
少ない
(3ste...
bosh-lite VS cf_nise_installer VS microPCF
bosh-lite cf_nise_installer microPCF
手順
多い
(20step/2h)
少ない
(3step/1h)
少ない
(3ste...
bosh-lite VS cf_nise_installer VS microPCF
bosh-lite cf_nise_installer microPCF
手順
多い
(20step/2h)
少ない
(3step/1h)
少ない
(3ste...
まとめ
 Cloud Foundryをお試し運用するなら
All-in-One がおすすめ
 新ツール microPCF は
・簡単な手順で
・少ないリソースで
Cloud Foundryをお試し運用できる
参考
本発表資料作成時の参考資料です
是非併せて御覧下さい
自前 CF 環境を整えようyet another all-in-one Cloud Foundry
BOSH-lite で 1VM Cloud Foundry
Nächste SlideShare
Wird geladen in …5
×

microPCFを使ってみよう

1.248 Aufrufe

Veröffentlicht am

第31回 PaaS 勉強会の発表資料です。

Veröffentlicht in: Ingenieurwesen
  • Als Erste(r) kommentieren

microPCFを使ってみよう

  1. 1. microPCF を使ってみよう 宇梶弘晃 @ hiroakiukaji NTT Lab. Software Innovation Center 2016/02/10
  2. 2. About Me 名前: Hiroaki Ukaji 仕事: Cloud Foundry
  3. 3. 皆さんに2つ質問です
  4. 4. Cloud Foundryを使ったことがある人?
  5. 5. Cloud Foundryを自分で動かしたことがある人?
  6. 6. 私の予想 Cloud Foundryを・・・ ※PaaS勉強会に限る 使ったことがある 動かしたことがある 60% 10%
  7. 7. 比率の正解/不正解はともかく Cloud Foundry を動かしてみたことがある人は少ない・・・ ∵ Cloud Foundryを動かすのは大変!
  8. 8. そう言えば・・・ Cloud Foundryってどうやって動かすんだろう?
  9. 9. そもそも Cloud Foundry とは = アプリを投げ込むとよしなに動かしてくれるCloud Foundry (PaaS) PaaS source code
  10. 10. そもそも Cloud Foundry とは 別に謎システムが動いていわけではなく アプリを自動で動かすのに必要なものがいるだけ DEA アプリを動かす人 Cloud Controller APIを提供する人 Router アクセスを割り振る人 Health Manager 状態監視をする人 UAA 認証を管理する人 Loggregator ログを集める人
  11. 11. Cloud Foundry の動かし方 つまりこいつらを上手く動かせれば良い・・・けど ※注: 実はもっといます
  12. 12. Cloud Foundry の動かし方 Cloud Foundry の完全自力運用はとてもつらい(らしい) 増えゆくサーバ あのコンポーネントは・・・どこ? バージョン管理めんどい・・・
  13. 13. Cloud Foundry の動かし方 Cloud Foundry の完全自力運用はとてもつらい(らしい) 増えるサーバ あのコンポーネントどこ? バージョン管理めんどい・・・ 分散システムの構成管理を一元化したい
  14. 14. BOSH 分散システム構成管理ツール (元々はCloud Foundry構築専用) ・構成の一元管理 ・VM の Lifecycle 管理 ・バージョン管理 ・etc… 全体構成も管理してくれる・・・ バージョンも管理してくれる・・・ これで Cloud Foundry動かせる!
  15. 15. しかし・・・ BOSHは便利だが得てして学習コストが高い ※あくまで「便利なツール」という前提の上での話です
  16. 16. じゃぁ・・・ Q. せっかくの OSS PaaS なのに Cloud Foundry を 試すことはできないの?
  17. 17. じゃぁ・・・ Q. せっかくの OSS PaaS なのに Cloud Foundry を 試すことはできないの?A. いいえ、そんなことはありません。
  18. 18. Cloud Foundry All-in-One Cloud Foundry を 1VM で簡単に動かせるツール bosh-lite cf_nise_installer 手軽に 1VMで Cloud Foundry を動かすためのツール
  19. 19. 本日の目標 昨年末に新しく発表された All-in-One Cloud Foundry “microPCF” を使えるようになる
  20. 20. microPCF とは?
  21. 21. microPCFとは? 2015年12月に Pivotal 社が発表した All-in-One Cloud Foundry 構築ツール
  22. 22. microPCFとは? 2015年12月に Pivotal 社が発表した All-in-One Cloud Foundry 構築ツール 最新バージョン = v0.5.0 (※まだ Pre-release) v0.1.1 First pre-release v0.2.0 cf v226 対応 v0.3.0 footprint削減 v0.4.0 box size 8GB → 5.5GB v0.4.1 NW周りの機能拡張 box size 5.5GB → 3.5GB v0.5.0 cf v228 対応
  23. 23. microPCFとは? “simplest” と言うからにはよほどシンプルのはず
  24. 24. 動かしてみましょう
  25. 25. 必要な環境  Vagrant 1.7+ • VirtualBox 5.0+ • VMWare Fusion 8+ • VMWare Workstation 11+  Internet connection  Cloud Foundry CLI +
  26. 26. イメージ Your Laptop Vagrant VirtualBox cf CLI
  27. 27. イメージ Your Laptop Vagrant VirtualBox cf CLI CF in Ubuntu VMup
  28. 28. イメージ Your Laptop Vagrant VirtualBox cf CLI CF in Ubuntu VM deploy
  29. 29. microPCF(v0.5.0) のインストール手順 $ wget https://github.com/pivotal-cf/micropcf/releases/download/ v0.5.0/Vagrantfile-v0.5.0.base $ mv Vagrantfile-v0.5.0.base Vagrantfile $ vagrant up まずは Vagrantfile を Download してきて $ vagrant up
  30. 30. microPCF(v0.5.0) のインストール手順 $ wget https://github.com/pivotal-cf/micropcf/releases/download/ v0.5.0/Vagrantfile-v0.5.0.base $ mv Vagrantfile-v0.5.0.base Vagrantfile $ vagrant up あとは待つだけ!
  31. 31. $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Box 'micropcf/base' could not be found. Attempting to find and install... default: Box Provider: virtualbox default: Box Version: 0.34.0 ==> default: Loading metadata for box 'micropcf/base' default: URL: https://atlas.hashicorp.com/micropcf/base ==> default: Adding box 'micropcf/base' (v0.34.0) for provider: virtualbox default: Downloading: https://atlas.hashicorp.com/micropcf/boxes/base/versions/0.34.0/providers/virtualbox.box ==> default: Successfully added box 'micropcf/base' (v0.34.0) for 'virtualbox'! ==> default: Importing base box 'micropcf/base'... ==> default: Matching MAC address for NAT networking... ==> default: Checking if box 'micropcf/base' is up to date... ==> default: Setting the name of the VM: workspace_default_1454490175496_52031 ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat default: Adapter 2: hostonly ==> default: Forwarding ports... default: 22 => 2222 (adapter 1) ==> default: Running 'pre-boot' VM customizations... ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... default: Vagrant insecure key detected. Vagrant will automatically replace default: this with a newly generated keypair for better security. default: Inserting generated public key within guest... default: Removing insecure key from the guest if it's present... default: Key inserted! Disconnecting and reconnecting using new SSH key... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... ==> default: Configuring and enabling network interfaces... ==> default: Running provisioner: shell... default: Running: inline script ==> default: stdin: is not a tty ==> default: Waiting for services to start... ==> default: MicroPCF is now running. ==> default: To begin using MicroPCF, please run: ==> default: cf api api.local.micropcf.io --skip-ssl-validation ==> default: cf login ==> default: Email: admin ==> default: Password: admin ※初回は vagrant box (3.5GB) を DL するので 時間がかかる・・・ 2回目以降は2〜3分で起動します。
  32. 32. しばらく待つと・・・ Ubuntu の VM が起動 ※ちゃんとsnapshotも撮っておきましょう
  33. 33. API を target $ cf api api.local.micropcf.io --skip-ssl-validation Setting api endpoint to api.local.micropcf.io... OK API endpoint: https://api.local.micropcf.io (API version: 2.47.0) Not logged in. Use 'cf login' to log in. API の 向き先を決めてから・・・
  34. 34. Login $ cf login API endpoint: https://api.local.micropcf.io Email> admin Password> admin Authenticating... OK user: admin password: admin でログイン
  35. 35. 完了! $ cf apps Getting apps in org micropcf-org / space micropcf-space as admin... OK No apps found 以上で環境構築は終わりです 実際に使ってみましょう ← まだ何も deploy していないのでアプリは 0 個
  36. 36. 簡単なアプリをデプロイ $ tree . ├── index.html └── manifest.yml 0 directories, 2 files 試しに簡単なアプリをデプロイをしてみましょう ※要はただの “Hello World” in HTML なアプリです
  37. 37. 簡単なアプリをデプロイ <!DOCTYPE html> <html> <body> Hello, microPCF!!! </body> </html> 試しに簡単なアプリをデプロイをしてみましょう index.html --- applications: - name: hello-staticfile buildpack: staticfile_buildpack manifest.yml
  38. 38. 簡単なアプリをデプロイ $ cf push $ cf push でデプロイ
  39. 39. $ cf push (一部略) Starting app hello-staticfile in org micropcf-org / space micropcf-space as admin... Downloading staticfile_buildpack... Downloaded staticfile_buildpack (2.4M) Creating container Successfully created container Downloading app package... Downloaded app package (250B) Staging... -------> Buildpack version 1.3.0 Downloaded [file:///tmp/buildpacks/c0c5c5b5e08bd4e125c760d54f11e0ea/dependencies/https___pivotal-buildpacks.s3.amazonaws.com_concourse-binaries_nginx_nginx-1.9.9- linux-x64.tgz] grep: Staticfile: No such file or directory -----> Using root folder -----> Copying project files into public/ -----> Setting up nginx grep: Staticfile: No such file or directory Exit status 0 Staging complete Uploading droplet, build artifacts cache... Uploading droplet... Uploading build artifacts cache... Uploaded build artifacts cache (128B) Uploaded droplet (2.4M) Uploading complete 1 of 1 instances running App started OK App hello-staticfile was started using this command `sh boot.sh` Showing health and status for app hello-staticfile in org micropcf-org / space micropcf-space as admin... OK requested state: started instances: 1/1 usage: 1G x 1 instances urls: hello-staticfile.local.micropcf.io last uploaded: Wed Feb 3 09:42:16 UTC 2016 stack: cflinuxfs2 buildpack: staticfile_buildpack state since cpu memory disk details #0 running 2016-02-03 06:42:27 PM 0.0% 0 of 1G 0 of 1G
  40. 40. $ cf push (一部略) Starting app hello-staticfile in org micropcf-org / space micropcf-space as admin... Downloading staticfile_buildpack... Downloaded staticfile_buildpack (2.4M) Creating container Successfully created container Downloading app package... Downloaded app package (250B) Staging... -------> Buildpack version 1.3.0 Downloaded [file:///tmp/buildpacks/c0c5c5b5e08bd4e125c760d54f11e0ea/dependencies/https___pivotal-buildpacks.s3.amazonaws.com_concourse-binaries_nginx_nginx-1.9.9- linux-x64.tgz] grep: Staticfile: No such file or directory -----> Using root folder -----> Copying project files into public/ -----> Setting up nginx grep: Staticfile: No such file or directory Exit status 0 Staging complete Uploading droplet, build artifacts cache... Uploading droplet... Uploading build artifacts cache... Uploaded build artifacts cache (128B) Uploaded droplet (2.4M) Uploading complete 1 of 1 instances running App started OK App hello-staticfile was started using this command `sh boot.sh` Showing health and status for app hello-staticfile in org micropcf-org / space micropcf-space as admin... OK requested state: started instances: 1/1 usage: 1G x 1 instances urls: hello-staticfile.local.micropcf.io last uploaded: Wed Feb 3 09:42:16 UTC 2016 stack: cflinuxfs2 buildpack: staticfile_buildpack state since cpu memory disk details #0 running 2016-02-03 06:42:27 PM 0.0% 0 of 1G 0 of 1G ※約20秒 アプリを 自動的に 動かして・・・ URLを発行
  41. 41. 簡単なアプリをデプロイ アプリが動きました! http://hello-staticfile.local.micropcf.io/
  42. 42. ここまでのおさらい 1. Vagrantfile のダウンロード 2. $ vagrant up の実行 3. ログイン の 3 step で Cloud Foundry のお試し環境を作れました
  43. 43. 他の All-in-One Cloud Foundry との比較
  44. 44. 他のAll-in-One Cloud Foundry との比較 bosh-lite VS cf_nise_installer VS microPCF VMWare 2013/08 yudai 2014/04 Pivotal 2015/12
  45. 45. bosh-lite VS cf_nise_installer VS microPCF bosh-lite cf_nise_installer microPCF 手順 多い (20step/2h) 少ない (3step/1h) 少ない (3step/30min) 構成 複数コンテナで 擬似分散構成 プロセス全部入り プロセス全部入り cf の version 自由に選択可能 v161 〜 v211 (自身のverに紐付く) v226 〜 v228 (自身のverに紐付く) リソース RAM: 8GB (公式Doc推奨値) RAM: 2GB (公式Doc推奨値) RAM: 1.5GB (測定値)
  46. 46. bosh-lite VS cf_nise_installer VS microPCF bosh-lite cf_nise_installer microPCF 手順 多い (20step/2h) 少ない (3step/1h) 少ない (3step/30min) 構成 複数コンテナで 擬似分散構成 プロセス全部入り プロセス全部入り cf の version 自由に選択可能 v161 〜 v211 (自身のverに紐付く) v226 〜 v228 (自身のverに紐付く) リソース RAM: 8GB (公式Doc推奨値) RAM: 2GB (公式Doc推奨値) RAM: 1.5GB (測定値) かかる手間は bosh-lite > cf_nise_installer ≧ microPCF
  47. 47. bosh-lite VS cf_nise_installer VS microPCF bosh-lite cf_nise_installer microPCF 手順 多い (20step/2h) 少ない (3step/1h) 少ない (3step/30min) 構成 複数コンテナで 擬似分散構成 プロセス全部入り プロセス全部入り cf の version 自由に選択可能 v161 〜 v211 (自身のverに紐付く) v226 〜 v228 (自身のverに紐付く) リソース RAM: 8GB (公式Doc推奨値) RAM: 2GB (公式Doc推奨値) RAM: 1.5GB (測定値) 作りは bosh-lite cf_nise_installer, microPCF 擬似分散構成 1VMに集約 → →
  48. 48. bosh-lite VS cf_nise_installer VS microPCF bosh-lite cf_nise_installer microPCF 手順 多い (20step/2h) 少ない (3step/1h) 少ない (3step/30min) 構成 複数コンテナで 擬似分散構成 プロセス全部入り プロセス全部入り cf の version 自由に選択可能 v161 〜 v211 (自身のverに紐付く) v226 〜 v228 (自身のverに紐付く) リソース RAM: 8GB (公式Doc推奨値) RAM: 2GB (公式Doc推奨値) RAM: 1.5GB (測定値) release選択の自由は bosh-lite cf_nise_installer, microPCF 自由 制約あり → →
  49. 49. bosh-lite VS cf_nise_installer VS microPCF bosh-lite cf_nise_installer microPCF 手順 多い (20step/2h) 少ない (3step/1h) 少ない (3step/30min) 構成 複数コンテナで 擬似分散構成 プロセス全部入り プロセス全部入り cf の version 自由に選択可能 v161 〜 v211 (自身のverに紐付く) v226 〜 v228 (自身のverに紐付く) リソース RAM: 8GB (公式Doc推奨値) RAM: 2GB (公式Doc推奨値) RAM: 1.5GB (測定値) 必要メモリは bosh-lite > cf_nise_installer ≧ microPCF (?)
  50. 50. まとめ  Cloud Foundryをお試し運用するなら All-in-One がおすすめ  新ツール microPCF は ・簡単な手順で ・少ないリソースで Cloud Foundryをお試し運用できる
  51. 51. 参考 本発表資料作成時の参考資料です 是非併せて御覧下さい 自前 CF 環境を整えようyet another all-in-one Cloud Foundry BOSH-lite で 1VM Cloud Foundry

×