在建立檔案類型和指令碼類型的部署物時,需要在命令內容框中輸入相應的執行命令或指令碼內容,如果執行命令或指令碼資訊中需要調用服務執行個體的具體配置參數,可以通過調用命令來實現。本文介紹如何使用調用命令。
背景資訊
使用者完成服務執行個體的部署後,計算巢會將服務執行個體的輸入參數和輸出參數儲存在營運編排服務(Operation Orchestration Service,簡稱OOS)的參數倉庫中,以便使用者查看和管理這些參數,且方便服務商調用參數。關於參數倉庫,請參見參數概述。
調用參數
服務商在建立檔案類型和指令碼類型的部署物時,如果需要調用服務執行個體中的某些參數,可以在建立部署物介面的命令框中,通過{{ xxx }}
命令調用服務執行個體中的某些參數,計算巢會自動識別{{ xxx }}
中的內容,並替換成相應的參數。
當需要調用服務執行個體的輸入參數時,命令格式為
{{ parameters_xxx }}
。該命令格式中的xxx表示模板中定義的輸入參數。當需要調用服務執行個體的輸出參數時,命令格式為
{{ outputs_xxx }}
。該命令格式中的xxx表示模板中定義的輸出參數。
調用參數樣本
調用參數樣本如下。
ROS模板
服務商建立服務時,定義的參數模板。
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": {
"zh-cn": "此模板為單一實例自訂鏡像模板樣本,支援選擇已有基礎資源配置,支援配置ECS的付費模式為預付費或者後付費",
"en": "This template supports single-instance with custom image, including scenarios using existing and creating ECS by prepaid or postpaid model"
},
"Parameters": {
"VpcId": {
"Default": null,
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
"Type": "String",
"Description": {
"zh-cn": "請選擇已有的VPC<br><b><font color='blue'>如找不到VPC,請切換地區。</font></b>",
"en": "Please select the existing VPC. <br><b><font color='blue'>If you can't find the VPC, please switch Regions.</font></b>"
},
"Label": {
"zh-cn": "現有VPC的執行個體ID",
"en": "Existing VPC ID"
}
}
........
},
"Outputs": {
"InstanceIds": {
"Value": {
"Fn::GetAtt": [
"ECSInstances",
"InstanceIds"
]
}
}
}
........
}
輸入調用命令
建立部署物時,輸入調用參數的命令。調用服務執行個體中VpcId和InstanceIds參數配置的值。
計算巢會自動將調用命令中的VpcId和InstanceIds替換成服務執行個體中該參數配置的值。例如,服務執行個體中的VpcId值為:vpc-bp19b73artdf07gmkxxxx,InstanceIds值為:i-bp1b7gbbybdnvafuxxx。運行調用命令時,計算巢會將調用命令中的 {{parameters_VpcId}} 和 {{outputs_InstanceIds}} 替換成上述值。
則以上命令在執行時,相當於執行如下命令。
echo vpc-bp19b73artdf07gmkxxxx
echo [ "i-bp1b7gbbybdnvafuxxx"]