Cloud Foundry 是開放源碼的 PaaS 解決方案,支援多種程式語言、開發框架及資料庫等服務,而且更容易開發、測試及佈署。本系列文章將從零開始,和學習者一起開啟雲端應用程式開發的大門。
簡易安裝及設定 VCAP 伺服器。
安裝 VCAP 的過程需要在 Linux Server 操作,因此具有比較高的技術門檻。不過,Cloud Foundry 提供相當簡便的 Shell Scripts 安裝程式,可以配合在 Ubuntu Linux Server 系統中簡化安裝操作流程。
vcap_dev_setup 是 VCAP 的安裝程式,從 GitHub 專案網站可以下載,執行後就會開始一連串自動化的安裝程序;在過程中會自動下載安裝所需的檔案,請確保網路連線暢通、並避免機器不正常關閉或終止安裝程式。以下是操作的指令示範:
::
wget https://raw.github.com/cloudfoundry/vcap/master/dev_setup/bin/vcap_dev_setup
chmod a+x vcap_dev_setup
./vcap_dev_setup
安裝完成後需要先登出,再重新登入一次、或重新開機,這樣 VCAP 的設定才會重新載入,接著就可以啟動 vcap_dev 服務。
::
~/cloudfoundry/vcap/dev_setup/bin/vcap_dev start
建議在學習階段先使用虛擬機器安裝 VCAP,如此一來在安裝過程中,每個步驟執行成功後,可以立刻建立 SNAPSHOT 將階段狀態保存起來,方便後續發生問題可以還原。未來需要增加 PaaS 的節點時,也只需要將虛擬機器複製一份,省下每次都要重新安裝 VCAP 的麻煩。
Cloud Foundry 提供一組 vcap.me
的網域名稱,讓 VCAP 安裝者可以方便進行測試;若使用 ping 或 nslookup 查詢這個網域,可以發現它其實對應到 localhost(127.0.0.1)。
::
$ nslookup vcap.me
Non-authoritative answer:
Name: vcap.me
Address: 127.0.0.1
通常我們並不會直接使用 VCAP 伺服器開發應用程式,例如我們可能在一台開發用的機器(192.168.0.100),需要將應用程式發佈到安裝 VCAP 伺服器的虛擬機器(192.168.0.101);Cloud Foundry 建議的作法,是利用 ssh 指令建立通道。
以下的指令將 localhost 的 80 或 8080 連接埠對應到虛擬機器,john@192.168.0.101 是此範例的 Ubuntu Server 登入帳號及區網 IP 位址(若 80 連接埠已經被其他程式佔用,可以改為 8080 或其它數字)。
::
sudo ssh -L 80:192.168.0.101:80 john@192.168.0.101 -N
接下來,就可以將目標伺服器(target)切換為 vcap.me,例如:
::
vmc target api.vcap.me
使用 vmc push
等指令,就可以將應用程式發佈到以 VCAP 建立的 PaaS 服務。