2016-10-27 24 views

回答

0

在此圖中,您將看到Apps(不是用於持久數據的服務)。通過應用程序,您可以非常動態地添加實例和內存應用程序是無狀態的。

enter image description here

請更多信息閱讀twelve-factor app約HOWTO開發應用CF.

在現代,軟件通常作爲一項服務交付:稱爲 網絡應用程序或軟件即服務。這個十二因素應用程序是一個用於構建軟件即服務應用程序的 方法。

對於服務(持久數據),您必須選擇一個計劃。例如,如果您使用small並且您需要更多連接/存儲(例如large),則無法使用一個命令進行升級。

$ cf m -s mariadb 
Getting service plan information for service mariadb as admin... 
OK 

service plan description          free or paid 
small   Maximum 10 concurrent connections, 1GB storage  paid 
medium   Maximum 15 concurrent connections, 8GB storage  paid 
large   Maximum 100 concurrent connections, 16GB storage paid 

您需要

  • 轉儲數據庫(使用服務連接器上的本地設備插件和mysqldump
  • 創建新服務(cf cs mariadb large ...
  • 將數據恢復到新的服務(服務連接器和mysql客戶端)
  • 刪除舊服務(cf ds -f...

目前沒有「一鍵式」升級。

2

要添加到陀格列博夫的回答是:

有朝一鍵升級,一個簡單的方法:Push2Cloud。

使用自定義工作流程可以自動執行與CloudFoundry的每次交互。我們提供了兩個工作流,遷移的Redis和MongoDB實例/泊塢窗圖片:

同樣的方法也將爲瑪利亞DB工作。如果您有興趣實施工作流程,請在主Push2Cloud倉庫上打開一個問題。

0

下面是MongoDB的一個分步指南:連接到舊DB

  1. 停止應用程序(以確保數據的一致性)
  2. 創建舊mongodb的服務密鑰(cf create-service-key <mongodb-name> migration
  3. 檢索服務密鑰: cf service-key <mongodb-name> migration
  4. cf ssh成在相同的空間DB任何應用程式:cf ssh <app-name> -L 13000:<mongodb-host>:<mongodb-port>(從服務密鑰的主機和端口)
  5. 的CRE以下命令dentials都可以在服務密鑰中找到您在步驟3 檢索打開一個新的終端窗口和運行mongodump --host 127.0.0.1:13000 --authenticationDatabase <mongodb-database> --username <mongodb-username> --password <mongodb-password> --db <mongodb-database> --out=dbbackup/dump
  6. cf create-service(與cf m -s mongodb列表中提供的計劃)
  7. 創建服務創建新的數據庫新的數據庫,並從上述
  8. 關閉隧道檢索和新的數據庫創建一個新的與主機和端口
  9. Run鍵mongorestore --host 127.0.0.1:13000 --authenticationDatabase <new-mongodb-database> --username <new-mongodb-username> --password <new-mongodb-password> --db <new-mongodb-database> <path-to-dump-file>
相關問題