天天看點

How to deploy cloudfoundry with bosh-lite on ubuntu14.04How to deploy Cloudfoundry with Bosh-lite on Ubuntu 14.04

文章目錄

  • 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