1. 前言
具體執行步驟按照下面文檔中執行,本文只是就安裝中遇到的一些問題進行記錄
2. 安裝過程
2.1 準備iaas環境
全程基本沒什麼問題,最後使用rvm安裝ruby的時候按照這個文章中的步驟執行
爲了防止之後出現缺少ubuntu package的錯誤,使用下面的命令安裝需要的包
sudo apt-get -y install libsqlite3-dev genisoimage
2.2 安裝bosh
2.2.1 安裝micro bosh
在最開始的執行這一句的時候出現了錯誤
gem install bosh_deployer
錯誤提示是未安裝gem包nokogiri-1.5.5 .gem,解決方法是到網上下載此包(注意版本),然後用命令
gem install pathofgem
進行本地安裝,此gem包的下載地址爲http://rubygems.org/gems/nokogiri/versions而且因爲我們有自己內部的版本,所以,從第4步到第5步不需要執行。
因爲之後的命令需要在確定的目錄中執行,所以先執行
cd $TEMPEST_ROOT/bosh/deployer/deployments
然後編輯micro bosh的配置文件vim micro_deploy/micro_bosh.yml
bosh micro deployment micro_deploy
bosh micro deploy $TEMPEST_ROOT/stemcells/micro-bosh-stemcell-vsphere-0.6.4.tgz
2.2.2 安裝bosh
用下面命令修改bosh cli的目標,注意在此要填micro bosh所在虛擬機的地址
$ bosh target 10.60.98.124:25555
用下面的命令上傳stemcell
bosh upload stemcell $TEMPEST_ROOT/stemcells/bosh-stemcell-vsphere-0.6.7.tgz
因爲我們已經有現成的release,直接跳過3到8步,直接執行第9步,而且是通過yml文件上傳的
cd $TEMPEST_ROOT/bosh-release
bosh upload release dev_releases/bosh-tempest-11.1-dev.yml
bosh deployment $TEMPEST_ROOT/deployments/bosh-deployments/bosh.yml
cd $TEMPEST_ROOT/deployments
bosh deploy
bosh vms
要記住清單中director節點的ip,這在之後的安裝中要用到2.2.3 部署cloud foundry
這裏我們按照下面的步驟執行
修改bosh_cli的目標爲上一步中記錄的director節點ip
bosh target 10.60.98.117:25555
bosh upload stemcell $TEMPEST_ROOT/stemcells/bosh-stemcell-vsphere-0.6.7.tgz
上傳release
cd $TEMPEST_ROOT/cf-release
bosh upload release ./dev_releases/appcloud-128.1-dev.yml
編輯部署文件,路徑爲$TEMPEST_ROOT/deployments/cf/cf.yml
然後進行部署
bosh deployment $TEMPEST_ROOT/deployments/cf/cf.yml
bosh deploy
bosh deployments
bosh vms
安裝後因爲缺少SSL證書,我們需要修改CC節點中的配置文件,文件路徑爲/var/vcap/jobs/cloud_controller/config/cloud_controller.yml
將uaa中的url改爲http
2.2.4 測試應用
我們在測試機上安裝VMC
gem install vmc
vmc target api.cf.yoururl
vmc register
在我們安裝CF的配置文件cf.yml中cc中有定義admin的郵箱,用此郵箱註冊可以管理其他用戶然後push應用進行測試
要使用dashboard進行查看還需要一些步驟,我們要安裝uaac,uaac源碼頁面爲https://github.com/cloudfoundry/cf-uaac
git clone https://github.com/cloudfoundry/cf-uaac.git
然後到文件夾目錄下執行以下命令bundle install
gem build cf-uaac.gemspec
gem install cf-uaac*.gem
然後使用以下命令對用戶進行註冊
uaac target http://uaa.<YOURtarget>.com
uaac token client get dashboard --secret <copy-paste the secret from UAA production clients google doc>
uaac member add dashboard.user <username1> <username2> ... <usernameN>
uaac token delete
然後就可以在瀏覽器中輸入http://dashboard.<your domain name> 來查看集羣狀態
3. 注意事項
1. 在測試中發現ubuntu10.04物理機的瀏覽器無法打開dashboard,12.04可以正確打開,虛擬機也沒有問題
2. 我們在安裝中使用vCenter所在的虛擬機做DNS server,操作系統是WinServre2008,在添加域名主機對應記錄時在Host的Name標籤中填入“*”,這樣就可以訪問到api.<your domain name>等域名