cf cli命令
總結下經常使用到的一些命令
CloudFoundry cli 使用version7
- 登入
cf7 login -a api.sys.***.com -u username -p password
- 部署應用,-f 指定應用配置檔案路徑,-p指定應用jar包路徑
cf7 push -f "myapp.yml" -p "myapp.jar"
- scale 修改應用記憶體-m,磁碟-d,例項數-i
#修改應用myapp為5個instance
cf7 scale myapp -i 5
修改應用記憶體為1G
cf7 scale myapp -m 1G
- 刪除應用,-r 刪除route,-f 強制刪除
cf7 delete myapp -rf
- 檢視應用日誌,拉取到本地
cf7 logs --recent myapp > myapp.log
- 一般使用space區別環境
#顯示所有space
cf7 spaces
切換到空間A
cf7 target -s spaceA
- 一般使用org 區分應
#顯示所有org
cf7 orgs
#切換到組織A
cf7 target -o orgA
- 列出當前space,org 下所有的應用
cf7 apps
- 顯示應用程式的執行狀況和狀態
cf7 app myqpp
- 應用啟停
#restage,修改應用配置後重啟應用,使配置生效
cf7 restage myapp
#restart,重啟應用
cf7 restart myapp
cf7 start myqpp
cf7 stop myapp
- 應用配置
#顯示應用所有配置
cf7 env myqpp
# 為應用 myqpp 設定環境變數
cf7 set-env myqpp env1 env_value
#去除環境變數
cf7 unset myqpp env1
#獲取應用配置檔案
cf7 create-app-manifest myapp
- route
#顯示當前space路由
cf7 routes
# 顯示應用路由
cf7 route myapp
#建立路由,當前路由:example.com
# myapp.example.com
cf7 create-route example.com --hostname myapp
#對映應用路由
# myhost.example.com
cf7 map-route my-app example.com --hostname myhost
常用service建立及使用
#列出可用服務
cf7 marketplace
#顯示已建立的service
cf7 services
#顯示srvice詳細資訊
cf7 service my_vault
#繫結應用和服務
cf7 bind-service myapp my_vault
vault
使用vault儲存密碼等敏感資訊
#建立vault服務
cf7 create-service vault-marketplace share my_vault
#為服務例項建立金鑰
cf7 create-service-key my_vault my_key
#顯示服務金鑰資訊,vault可透過此資訊進行登入。
cg7 service-key my_vault my_key
ELK
配置ELK儲存應用日誌檔案
# ELK使用的是自己提供的服務例項,
service名字叫 ELK-logging,ELK接入地址為10.217.0.0:6666
cf7 create-user-provided-service ELK-logging -l syslog://10.217.0.0:6666
AutoScaler
實現應用自動伸縮
#建立AutoScale 服務
cf7 creat-service autoscaler autoscaler-free-plan my_autoscaler
#給myapp繫結使用autoscaler,-p 指定autoscaler配置檔案
cf7 bind-service myapp my_autoscaler -p "scaling.yml"
scaling.yml示例:
{
"instance_min_count": 2,
"instance_max_count": 4,
"scaling_rules": [
{
"metric_type": "cpu",
"threshold": 20,
"operator": "<",
"adjustment": "-1"
},
{
"metric_type": "cpu",
"threshold": 80,
"operator": ">",
"adjustment": "+1"
},
{
"metric_type": "throughput",
"threshold": 20,
"operator": "<",
"adjustment": "-1"
},
{
"metric_type": "throughput",
"threshold": 80,
"operator": ">",
"adjustment": "+1"
},
{
"metric_type": "responsetime",
"threshold": 100,
"operator": "<",
"adjustment": "-1"
},
{
"metric_type": "responsetime",
"threshold": 200,
"operator": ">",
"adjustment": "+1"
}
]
}
參考官方文件:CloudFoundry