BOSH-lite で 1VM Cloud Foundry
岩嵜 雄大 @ i_yudai
NTT Laboratory
Software Innovation Center
2013-10-25
Outline

 1VM Cloud Foundry の歴史
 BOSH-lite の概要
 Cloud Foundry のデプロイ実践

2
1VM Cloud Foundry の 歴史
Cloud Foundry v1 時代

 Micro Cloud Foundry
– All-in-One VM イメージ

4
Cloud Foundry v2 時代
 Micro Cloud Foundry は提供なし
 cf-vagrant-installer from Altoros
• Vagrant & Chef ベース

• “cf-vagrant-in...
幻の Warden CPI と BOSH-lite の登場

 古くから存在は確認されていた
– https://groups.google.com/a/cloudfoundry.org/d/msg/bos
h-dev/dnSJemZayjo...
BOSH-lite の概要
BOSH-lite の概要
 BOSH Warden CPI + Vagrant
– https://github.com/cloudfoundry/bosh/tree/warden-cpi
– https://github.com/clou...
BOSH-Lite の構成
ホストマシン
BOSH CLI

BOSH Lite

Vagrant VM
(Micro BOSH 相当)
Warden VM
NATS

Director
Warden CPI でコンテナを生成

Warden ...
BOSH-lite の利点
 ラップトップ上でも動く BOSH 環境
– 1VM 6GB のメモリ

 すべての操作が BOSH 互換
– AWS や OpenStack への移行が容易

 最新の cf-release が使用できる
–...
Cloud Foundry のデプロイ
BOSH-lite の起動
 Vagrantは v 1.3.4 以降をインストールしておく
– http://www.vagrantup.com/
# 環境の準備
$ gem install bosh_cli –-pre # 1.5.0.pr...
cf-release の準備

 通常の BOSH と同じ操作を行う

#
$
$
$

cf-release のクローン
cd ~
git clone https://github.com/cloudfoundry/cf-release.g...
Stemcell のアップロード
 Warden CPI 用の Stemcell を使用する

$ wget http://bosh-jenkins-gems-warden.s3.amazonaws.com/stemcells/latestb...
Spiff のインストール
 Deployment Manifest の生成ツール
– https://github.com/vito/spiff
– Go 環境が必要
# Mac の Homebrew で入れる場合
$ brew insta...
Deployment Manifest の生成と Deploy

# Deployment Manifest を生成
$ cf-release/generate_deployment_manifest warden ¥
bosh-lite/de...
Deploy 結果
 17VM
$ bosh vms
+------------------------------------+---------+---------------+-------------+
| Job/index
| S...
Upcoming SlideShare
Loading in...5
×

BOSH-lite で 1VM Cloud Foundry

3,835

Published on

Cloud Foundry v2 環境を BOSH-lite を使用して Vagrant VM 上に構築する方法を解説します。

Published in: Technology, Business
2 Comments
5 Likes
Statistics
Notes
No Downloads
Views
Total Views
3,835
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
49
Comments
2
Likes
5
Embeds 0
No embeds

No notes for slide

BOSH-lite で 1VM Cloud Foundry

  1. 1. BOSH-lite で 1VM Cloud Foundry 岩嵜 雄大 @ i_yudai NTT Laboratory Software Innovation Center 2013-10-25
  2. 2. Outline  1VM Cloud Foundry の歴史  BOSH-lite の概要  Cloud Foundry のデプロイ実践 2
  3. 3. 1VM Cloud Foundry の 歴史
  4. 4. Cloud Foundry v1 時代  Micro Cloud Foundry – All-in-One VM イメージ 4
  5. 5. Cloud Foundry v2 時代  Micro Cloud Foundry は提供なし  cf-vagrant-installer from Altoros • Vagrant & Chef ベース • “cf-vagrant-installer hasn't been updated for some time (submodules)”  cf_nise_installer from NTT • Bare metal と Vagrant VM をサポート • 最新の cf-release に追従
  6. 6. 幻の Warden CPI と BOSH-lite の登場  古くから存在は確認されていた – https://groups.google.com/a/cloudfoundry.org/d/msg/bos h-dev/dnSJemZayjo/m60nd8umm6IJ  8月ぐらいに BOSH-lite が公開され実 用化され、最近実用レベルに
  7. 7. BOSH-lite の概要
  8. 8. BOSH-lite の概要  BOSH Warden CPI + Vagrant – https://github.com/cloudfoundry/bosh/tree/warden-cpi – https://github.com/cloudfoundry/bosh-lite – Vagrant VM 上に Lite Director を構築 • Micro BOSH 相当 • VirtualBox、VMware Fusion、AWSに対応 – VM 内に Warden CPI で子 VM 生成 • Warden CPI を使用したコンテナ VM
  9. 9. BOSH-Lite の構成 ホストマシン BOSH CLI BOSH Lite Vagrant VM (Micro BOSH 相当) Warden VM NATS Director Warden CPI でコンテナを生成 Warden VM DEA Warden VM Postgres Warden VM Router Warden VM UAA Warden VM CCNG Warden VM Log Warden VM Login
  10. 10. BOSH-lite の利点  ラップトップ上でも動く BOSH 環境 – 1VM 6GB のメモリ  すべての操作が BOSH 互換 – AWS や OpenStack への移行が容易  最新の cf-release が使用できる – cf-services-release などの混在も可能
  11. 11. Cloud Foundry のデプロイ
  12. 12. BOSH-lite の起動  Vagrantは v 1.3.4 以降をインストールしておく – http://www.vagrantup.com/ # 環境の準備 $ gem install bosh_cli –-pre # 1.5.0.pre $ vagrant plugin install vagrant-omnibus # bosh-lite のクローン git clone https://github.com/cloudfoundry/bosh-lite.git # $ $ $ Vagrant VM 起動の準備 cd bosh-lite bundle librarian-chef install # Lite Director VM の起動 $ vagrant up # 起動した BOSH をターゲット(User/Password は admin/admin) $ bosh target 192.168.50.4 # IP は固定 12
  13. 13. cf-release の準備  通常の BOSH と同じ操作を行う # $ $ $ cf-release のクローン cd ~ git clone https://github.com/cloudfoundry/cf-release.git cd cf-release # サブモジュールのチェックアウト $ ./update # $ # $ 最新のコードでリリースを作成する bosh –n create release 生成したリリースを BOSH にアップロード bosh upload release
  14. 14. Stemcell のアップロード  Warden CPI 用の Stemcell を使用する $ wget http://bosh-jenkins-gems-warden.s3.amazonaws.com/stemcells/latestbosh-stemcell-warden.tgz $ bosh upload stemcell latest-bosh-stemcell-warden.tgz
  15. 15. Spiff のインストール  Deployment Manifest の生成ツール – https://github.com/vito/spiff – Go 環境が必要 # Mac の Homebrew で入れる場合 $ brew install go bzr # go get に bzr が必要 # (bzr の実行ファイルがうまく生成されないことがある?) $ cd /usr/loca/bin $ ln -s ../share/python/bzr bzr $ export GOPATH=~/go $ export PATH=~/go/bin:$PATH $ go get github.com/vito/spiff 正しくインストールされたか確認 $ spiff
  16. 16. Deployment Manifest の生成と Deploy # Deployment Manifest を生成 $ cf-release/generate_deployment_manifest warden ¥ bosh-lite/deployment-stub.yml > deployment.yml # Director の UUID を Manifest にセット $ vi deployment.yml # UUID に bosh status で表示される値を入力 # Deployment をセット $ bosh deployment deployment.yml # Deploy $ bosh deploy
  17. 17. Deploy 結果  17VM $ bosh vms +------------------------------------+---------+---------------+-------------+ | Job/index | State | Resource Pool | IPs | +------------------------------------+---------+---------------+-------------+ | api_z1/0 | running | large_z1 | 10.244.1.10 | | ha_proxy_z1/0 | running | router_z1 | 10.244.0.34 | | hm_z1/0 | running | medium_z1 | 10.244.1.14 | | loggregator_trafficcontroller_z1/0 | running | small_z1 | 10.244.0.10 | | loggregator_trafficcontroller_z2/0 | running | small_z2 | 10.244.2.10 | | loggregator_z1/0 | running | small_z1 | 10.244.0.14 | | loggregator_z2/0 | running | small_z2 | 10.244.2.14 | | login_z1/0 | running | medium_z1 | 10.244.1.6 | | logs_z1/0 | running | medium_z1 | 10.244.0.2 | | logs_z2/0 | running | medium_z2 | 10.244.2.2 | | nats_z2/0 | running | medium_z2 | 10.244.2.6 | | postgres_z1/0 | running | large_z1 | 10.244.0.30 | | router_z1/0 | running | router_z1 | 10.244.0.22 | | router_z2/0 | running | router_z2 | 10.244.2.22 | | runner_z1/0 | running | runner_z1 | 10.244.0.26 | | taskmaster_z1/0 | running | runner_z1 | 10.244.1.18 | | uaa_z1/0 | running | large_z1 | 10.244.1.2 | +------------------------------------+---------+---------------+-------------+ VMs total: 17
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×