自动创建 Asgard 下一个组
Automate Asgard next group creation
有没有办法自动创建下一个 asgard 自动缩放组?我有要用于部署的 AMI 映像 ID。我浏览了他们的 API,我似乎不清楚如何做到这一点。有人有什么建议吗?
对于来到这里的任何人,我已经使用一些简单的 shell 脚本解决了这个问题。您可以用任何 REST api 或您想要的语言来包装它,但要点是
- 查询集群的准备端点并包括环境。这将为您提供当前的启动配置 + 该集群的所有 AMI 的列表
- 获取列表中的最后一个 ami,因为它按升序排序(最后一个 ami 是最新的)
- 设置您使用新 ami
提取的 prepare json 的 ami 字段
- Post新的json回到起始端点
function asgard(){
verb=
url="https://my.asgard.com/us-east-1/"
shift
http ${VERB} --verify=no "$url" -b
}
function next-ami(){
cluster=
prepare-ami $cluster true | \
jq ".environment.images | reverse | .[0]"
}
function prepare-ami(){
cluster=
includeEnv=
asgard GET "deployment/prepare/${cluster}?deploymentTemplateName=CreateAndCleanUpPreviousAsg&includeEnvironment=${includeEnv}"
}
function get-next-ami(){
cluster=
next=`next-ami ${cluster} | jq ".id"`
prepare-ami ${cluster} "false" | jq ".lcOptions.imageId |= ${next}"
}
function start-deployment(){
cluster=
payload=
echo $payload | asgard POST "deployment/start/${cluster}"
}
来源post:http://onoffswitch.net/scripting-deployment-clusters-asgard/
有没有办法自动创建下一个 asgard 自动缩放组?我有要用于部署的 AMI 映像 ID。我浏览了他们的 API,我似乎不清楚如何做到这一点。有人有什么建议吗?
对于来到这里的任何人,我已经使用一些简单的 shell 脚本解决了这个问题。您可以用任何 REST api 或您想要的语言来包装它,但要点是
- 查询集群的准备端点并包括环境。这将为您提供当前的启动配置 + 该集群的所有 AMI 的列表
- 获取列表中的最后一个 ami,因为它按升序排序(最后一个 ami 是最新的)
- 设置您使用新 ami 提取的 prepare json 的 ami 字段
- Post新的json回到起始端点
function asgard(){
verb=
url="https://my.asgard.com/us-east-1/"
shift
http ${VERB} --verify=no "$url" -b
}
function next-ami(){
cluster=
prepare-ami $cluster true | \
jq ".environment.images | reverse | .[0]"
}
function prepare-ami(){
cluster=
includeEnv=
asgard GET "deployment/prepare/${cluster}?deploymentTemplateName=CreateAndCleanUpPreviousAsg&includeEnvironment=${includeEnv}"
}
function get-next-ami(){
cluster=
next=`next-ami ${cluster} | jq ".id"`
prepare-ami ${cluster} "false" | jq ".lcOptions.imageId |= ${next}"
}
function start-deployment(){
cluster=
payload=
echo $payload | asgard POST "deployment/start/${cluster}"
}
来源post:http://onoffswitch.net/scripting-deployment-clusters-asgard/