摘要:執行后,開始啟動,最終出現下圖就說明成功了共啟動了個模塊。需要兩個文件和一個文件夾我在我的機子上找到這些文件,分別拷貝到相應的目錄,就了。安裝完后,執行上面的步驟都執行下,出現圖中的信息,說明安裝成功了,現在就可以在上面部署應用了。
作者:egg
博客:http://blog.csdn.net/zhangerqing(轉載請說明出處)
一、環境需求
官方系統環境要求:
Setup?a?VM?with?a?pristine?Ubuntu?10.04?Server?64-bit?image
Setup?your?VM?with?1G?or?more?of?memory
要求是server版的,但是我們實驗裝的是desktop版的,也能正常運行。
注意:千萬不要在不符合環境的機器上安裝,否則會嘗盡苦頭,各種問題,而且適合cloudfoundry無關的,很多都是一些系統庫缺失,所以,一定要選擇ubuntu10.04 64bit。雖然最終也能安裝成功,但是大大浪費時間!
二、步驟
步驟很簡單,不需要我們做太多,因為cloudfoundry自帶安裝腳本,我們只需要執行就行了,先安裝curl工具:
sudo?apt-get?install?curl
接下來執行:
bash?<(curl?-s?-k?-B??https://raw.github.com/cloudfoundry/vcap/master/dev_setup/bin/vcap_dev_setup)
系統會自動開始download所需的一切,中間會遇到一些地方需要輸入密碼,所以在安裝開始后,需要經常盯著,不過這個安裝過程比較耗時,下載完還有很多需要編譯的東西,所以就算是很順利,完全沒有報錯,也得三個小時,但是我安裝的幾次都是多于三個小時,因為中途總會有一些問題。
三、可能遇到的問題及解決辦法及注意事項
可能會報下面錯誤而停止:
1、Giving?up.?Cannot?connect?to?the?web.?Check?your?proxy?settings?if?you?are?behind?a?proxy.
2、Error?executing?action?`install`?on?resource?"gem_package[sinatra]"
3、Error?executing?action?`install`?on?resource?"gem_package[rack]"
4、Error?executing?action?`create`?on?resource?"deployment_remote_file[/var/cache/dev_setup/rabbitmq-server-with-plugins-generic-unix-2.8.7.tar.gz]"
....
統一的解決方法:重新執行
bash?<(curl?-s?-k?-B?https://raw.github.com/cloudfoundry/vcap/master/dev_setup/bin/vcap_dev_setup)
原因是ruby的源rubygems.org被托管于amazons?EC2(有人這樣說),所有有時會被墻,但是只要碰到問題,重新執行上面的安裝腳本就行。不用擔心重新執行會完全重新開始,有些下載過的或者已經編譯過的東西,就不會再去重復執行了。
5、Processing?deployment_remote_file[/var/cache/dev_setup/otp_src_R14B01.tar.gz]?action?create?(erlang::default?line?12)
Error?executing?action?`create`?on?resource?"deployment_remote_file[/var/cache/dev_setup/otp_src_R14B01.tar.gz]"
這個是我遇到的一個手動解決的問題,是我重復執行上述腳本后仍然不能解決的問題,根據上下文描述,這個過程是將otp_src_R14B01.tar.gz文件部署到/var/cache/dev_setup/下,后來我在自己的機子上找到該文件,發現足足64M,怪不得會timeout,估計是因為網絡環境,我之前成功安裝過三次,都沒有遇到這個問題。所以我手動將otp_src_R14B01.tar.gz拷貝到了/var/cache/dev_setup/下,重新執行上述那個安裝腳本,最后成功了。
6、如果最初執行安裝腳本的時候用的是root權限(sudo方式),那么在以后使用的時候,啟動或者停止cloudfoundry都需要root權限,其實安裝的時候并不需要root權限,普通的./執行就OK了,所以我們為了方便,就別用sudo方式安裝了。
7、默認的安裝路徑在當前用戶的根路徑下,安裝完在根路徑下會出現cloudfoundry文件夾。
最后安裝完,如果顯示:
就說明安裝成功了!
切換到用戶目錄下的:cloudfoundry/vcap/dev_setup/bin目錄下,執行:./vcap_dev?start即可啟動cloudfoundry了,同樣除了start還有stop、restart等命令。執行./vcap_dev?start?后,開始啟動,最終出現下圖:就說明成功了!
共啟動了18個模塊。
四、vmc的安裝
安裝完后,需要安裝vmc,直接:gem?install?vmc,會報錯:
就是關于vmc0.4.7依賴multi_json1.4.0的問題,默認在執行gem?install?vmc時,會先安裝multi_json這個包,但是安裝的是1.5.0,所以我們需要刪除1.5.0版本的,安裝1.4.0的。需要兩個文件和一個文件夾:
我在我的機子上找到這些文件,分別拷貝到相應的目錄,就OK了。
multi_json-1.4.0對應放在/usr/lib/ruby/gems/1.8/gems下
multi_json-1.4.0.gemspec放在/usr/lib/ruby/gems/1.8/specifications下
multi_json-1.4.0.gem放在/usr/lib/ruby/gems/1.8/cache下
基本沒有問題了,繼續執行gem?install?vmc就可以了。
有時候網絡不穩定還會報下面的錯:
ERROR:??http://rubygems.org/?does?not?appear?to?be?a?repository
ERROR:??could?not?find?gem?vmc?locally?or?in?a?repository
重新執行,直到完成安裝。
安裝完vmc后,執行:vmc?target?api.vcap.me
上面的步驟都執行下,出現圖中的信息,說明安裝成功了,現在就可以在上面部署應用了。
五、在其他機子上執行已經安裝好的鏡像
啟動虛擬機后,start?cloudfoundry,但是發現,只有cloud?controller模塊不能啟動,其他的都能起。問題原因:cloudfoundry里面的很多配置文件都將ip寫死了。在~/cloudfoundry/.deployment/devbox/config下的很多文件中,都將ip直接寫在文件里。
解決辦法:
1、修改上述文件夾里的所有需要修改的文件,這個比較費工夫,不過用sed腳本也快。
2、設置虛擬機里的ip為初始環境的ip,需要修改虛擬機的/etc/network/下的interfaces文件,在里面增加網卡對應的ip等信息,我將interfaces文件的內容改為:
這樣,cloudfoundry就可以完全啟動了。但是,這樣手動更改了虛擬機里的ip會造成虛擬機不能訪問網絡。因此我們需要去vmware?workstation里修改信息,使外網和內網映射好。在Edit->Virtual?Network?Settings里面的NAT標簽里設置成一致的就行了。此時,我們既可以正常啟動cloudfoundry,也可以訪問網絡。
注意:
如果我們使用vmware?player的話,是沒有辦法設置網絡的,所以,上面的操作,需要使用workstation,我在操作的過程中還遇到一個問題,就是我開始用vmware?player?9.0,所以當我將鏡像導出后,在VMware?Workstation?6.0?上無法打開,只能進行鏡像轉換,這里用到官方提供的一個工具:VMware?vCenter?Converter?Standalone?Client,將9.0的鏡像直接轉換成6.0的。
六、遠程訪問
因為我們目前是將cloudfoundry安裝在虛擬機里的,虛擬機里是靜態ip,沒法通過SSH工具訪問,所以我們需要做端口重定向,來保證大家都可以使用,具體步驟比較簡單:
Edit->Virtual?Network?Settings->NAT->Edit->Port?Forwarding->Add一個就行了,輸入主機端口、虛機ip、虛機端口就行了。接下來就可以通過SSH工具訪問了。
(如果虛擬機改成橋接模式,則無需重定向,因為虛機里也可以分配到動態IP,這樣的話,想讓cloudfoundry跑起來困難了,需要去修改很多地方的IP)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/4015.html
引子 今年4月份,VMware突然發布了業內第一個開源的PaaS——CloudFoundry。幾個關鍵字:開源、PaaS、VMware,如果你對云計算感興趣,就沖著它的ApacheV2協議,如果不去GitHub拿它的代碼好好研讀一下,真有點對不起自己。筆者當時就是以這樣的心態去研究它的代碼,并把它部署在我們labs里面。發布至今的這幾個月里,筆者一直關注它的演進,并從它的架構設計中獲益良多,...
續與回顧 本文第一部分介紹了CloudFoundry的整體架構,并在最后花了一點篇幅簡介CloudFoundry的代碼組織情況,以便于讀者自己去研究源代碼。筆者認為開源項目較大的好處在于:當你讀懂源代碼、理解總體架構后,能夠成竹在胸,并吸收為己用(有點類似武俠小說中的北冥神功)。為己用就是本篇要說的內容:我們使用CloudFoundry搭建自己的私有PaaS平臺。 在介紹CloudFoundry之...
摘要:在科技業,時代變遷帶來的劇變同樣十分明顯,從傳統時代到云計算時代,數據不再只是沉睡的寶藏,數據庫的作用和價值正變得尤為突出。真因為如此,順應云計算時代而生的成為公司歷史上發展最快的服務,在過去兩年間,通過其數據庫遷移服務遷移了超過個數據庫。19世紀,愛馬仕還是一家專門制作各種精美馬具的作坊,但到了20世紀,汽車逐漸取代馬車,愛馬仕不得不從馬具轉向皮具,從而成就了這一世界級奢侈品品牌;1975...
摘要:上面主要是將新的多了些什么。在新版本的設計中,他們使用腳本來代替原先的腳本。可以看到在新的架構中多出了很多組件。他究竟是如何操作的呢首先,我們必須準備好系統例如。當剛剛推出的時候,包含了應用運行時啟動,停止等簡單命令。 CloudFoundry距離發布已經一年多了。在這一年里CloudFoundry不論是社區還是代碼日臻成熟,擁有了眾多合作伙伴。現在他邁開了更大的腳步,新的CloudFou...
摘要:第章部署應用程序的靈活打包選項在部署應用程序時提供了大量的選擇,你可以將應用程序部署到各種云平臺容器映像例如或虛擬真實機器上。本節介紹一些更常見的部署場景。 第VI章. 部署 Spring Boot 應用程序 Spring Boot的靈活打包選項在部署應用程序時提供了大量的選擇,你可以將Spring Boot應用程序部署到各種云平臺、容器映像(例如Docker)或虛擬/真實機器上。 本...
閱讀 2831·2023-04-26 02:23
閱讀 1570·2021-11-11 16:55
閱讀 3149·2021-10-19 11:47
閱讀 3352·2021-09-22 15:15
閱讀 1975·2019-08-30 15:55
閱讀 1033·2019-08-29 15:43
閱讀 1288·2019-08-29 13:16
閱讀 2188·2019-08-29 12:38