文章目錄
- How to deploy Cloudfoundry with Bosh-lite on Ubuntu 14.04
-
- 1.1 安裝依賴的軟體包
- 安裝Ruby環境
- 安裝Vagrant
- 安裝VirtualBox
- 準備bosh-lite環境
-
- 安裝Bosh CLI
- 安裝manifest merge工具
- Checkout bosh-lite和cf-release
- 啟動VirtualBox虛拟機
- 把bosh指向目前的bosh-lite的Director
- 部署CloudFoundry
-
- 生成CloudFoundry部署描述檔案(deployment manifest)
- 上傳Stemcell
- 上傳CloudFoundry Release
- 部署CloudFoundry
- 驗證CloudFoundry部署
How to deploy Cloudfoundry with Bosh-lite on Ubuntu 14.04
這裡主控端為Ubuntu14.04,虛拟機采用VirtualBox
1.1 安裝依賴的軟體包
sudo apt-get install build-essential libxml2-dev libsqlite3-dev libxslt1-dev libpq-dev libmysqlclient-dev
安裝Ruby環境
$ git clone git://github.com/sstephenson/rbenv.git $HOME/.rbenv
$ git clone https://github.com/sstephenson/ruby-build.git $HOME/.rbenv/plugins/ruby-build
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
$ rbenv install 2.2.4
$ rbenv global 2.2.4
$ gem sources --remove https://rubygems.org/
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
$ gem install bundle
$ gem install nokogiri -- --use-system-libraries
安裝Vagrant
$ wget https://releases.hashicorp.com/vagrant/1.8.1/vagrant_1.8.1_x86_64.deb
$ dpkg –i vagrant_1.8.1_x86_64.deb
驗證vagrant
$ vagrant –version
Vagrant 1.8.1
安裝VirtualBox
$ wget http://download.virtualbox.org/virtualbox/5.0.16/virtualbox-5.0_5.0.16-105871~Ubuntu~trusty_amd64.deb
$ dpkg –i virtualbox-5.0_5.0.16-105871~Ubuntu~trusty_amd64.deb
驗證virtualbox是否安裝成功
$ VBoxManage –version
5.0.16r105871
準備bosh-lite環境
安裝Bosh CLI
$ gem install bosh_cli
安裝manifest merge工具
Spiff是CloudFoundry基金會開發的一款用來合并bosh部署檔案的工具,詳見https://github.com/cloudfoundry-incubator/spiff
$ wget https://github.com/cloudfoundry-incubator/spiff/releases/download/v1.0.7/spiff_linux_amd64.zip
$ unzip spiff_linux_amd64.zip –d /usr/bin
Checkout bosh-lite和cf-release
bosh-lite和cf-release和兩個代碼庫必須放在同一級目錄下
$ mkdir ~/workspace
$ git clone https://github.com/cloudfoundry/bosh-lite
$ git clone https://github.com/cloudfoundry/cf-release
啟動VirtualBox虛拟機
$ cd ~/workspace/bosh-lite
$ vagrant up –provider=virtualbox
(啟動成功以後可以用vagrant status檢視虛拟機狀态)
$ vagrant global-status
啟動後的bosh-lite虛拟機配置了兩塊網卡,一塊用來連接配接cloudfoundry網絡,使用10.244.0.0/19;一塊用來和主控端通信,使用192.168.50.4,是以在主控端需要添加通路cloudfoundry網絡的路由
$ route add –net 10.244.0.0/19 gw 192.168.50.4
(如果配置了HTTP或者HTTPS的代理,請先運作下面這條指令)
$ export no_proxy=192.168.50.4,xip.io,bosh-lite.com
把bosh指向目前的bosh-lite的Director
$ bosh target 192.168.50.4 lite (這裡login的使用者名密碼都是admin)
驗證bosh狀态
$ bosh status
至此bosh-lite環境準備完畢。
部署CloudFoundry
生成CloudFoundry部署描述檔案(deployment manifest)
$ cd ~/workspace/cf-release
$ ./scripts/update (下載下傳所有的子子產品submodule)
$ ./scripts/generate-bosh-lite-dev-manifest (生成部署描述檔案)
上傳Stemcell
Stemcell類似于虛拟機鏡像,部署cloudfoundry之前需要使用bosh上傳相應平台的stemcell. 所有的stemcell都可以在 bosh.io找到
$ wget https://s3.amazonaws.com/bosh-warden-stemcells/bosh-stemcell-3147-warden-boshlite-ubuntu-trusty-go_agent.tgz
$ bosh upload stemcell bosh-stemcell-3147-warden-boshlite-ubuntu-trusty-go_agent.tgz
上傳CloudFoundry Release
Release是所有的需要部署的檔案的集合(包括二進制和配置檔案)。各個版本以及最新的releases都可以在bosh.io上找到
$ wget http://bosh.io/releases/github.com/cloudfoundry/cf-release?version=234
部署CloudFoundry
$ bosh deploy
驗證CloudFoundry部署
$ bosh vms