在Spotinst,我们与牧场主使您能够运行容器现场实例。
在这种集成,您将定义牧场主环境而Spotinst底层基础设施供应。这就是为什么你需要写一个命令(在我们启动服务器的启动脚本),注册实例作为一个主机在牧场主。对重要的细节见下文。集成使用牧场主的标签功能。
注:利用本机集成Spotinst &牧场主你必须运行牧场主版本牧场主/服务器:v0.46.0-rc1或以上。
步骤1:创建一个API密匙在牧场主
步骤2:创建一个Elastigroup Spotinst之内
- 在用户数据部分,而不是使用命令你复制前一节:
运行sudo码头工人- d——特权- v /var/run/docker.sock: / var /运行/码头工人。袜子牧场主/代理:v0.8.2 http://rancher.spotinst.com/v1/scripts/1F68A2DE49C324F22ABE: 1447257600000: v4W9vNzpG3GYr0mF6o4
- 修改如下:
- 添加这个标志将标签牧场主主机:
- e CATTLE_HOST_LABELS = " spotinst。instanceId = curl http://169.254.169.254/latest/meta-data/instance-id”
- 最后一个命令在用户数据部分,您应该看到如下:
# !/bin/bash #如果不存在,安装码头工人wget问:https://get.docker.com/ |上海#开始牧场主代理#“spotinst设置CATTLE_HOST_LABELS。instanceId”Spotinst集成所需的工作。sudo码头工人- e CATTLE_HOST_LABELS = " spotinst运行。instanceId = curl http://169.254.169.254/latest/meta-data/instance-id”- d——特权- v /var/run/docker.sock: / var /运行/码头工人。袜子牧场主/代理:版本http://rancher.domain.com: 8080 / v1 /脚本/令牌
- 如果你想添加多个标签的主机我们这样:
sudo码头工人- e CATTLE_HOST_LABELS = " spotinst运行。instanceId = curl http://169.254.169.254/latest/meta-data/instance-id &tagkey = name&tagkey2 =名称”- d——特权- v /var/run/docker.sock: / var /运行/码头工人。袜子牧场主/代理:版本http://rancher.domain.com: 8080 / v1 /脚本/令牌
- 注意:如果您使用的是牧场主OS:您可能想要使用以下cloud-init脚本:
# cloud-config write_files:路径:/etc/rc.本地权限:“0755”老板:根内容:| # !/bin/bash因为我在{1 . .20}做码头工人信息& &休息睡眠1 #开始牧场主代理完成#“spotinst设置CATTLE_HOST_LABELS。instanceId”Spotinst集成所需的工作。sudo码头工人- d - e CATTLE_HOST_LABELS = " spotinst运行。instanceId = wget问:——http://169.254.169.254/latest/meta-data/instance-id”——特权- v /var/run/docker.sock: / var /运行/码头工人。袜子牧场主/代理:v0.8.2 http://rancher.domain.com: 8080 / v1 /脚本/(令牌)
- 添加这个标志将标签牧场主主机:
- 在第三方部分选择牧场主输入以下:
- 牧场主人——你的牧场主url(例如。http://myRancher.myDomain: 8080 / v1)
- 访问密钥和秘密密钥(您刚刚创建的在上面的前一步- >在步骤1中)

- 实例启动时您应该看到他们贴上“spotinst.instanceId”。

从安全原因,请确保牧场主人安全组开放专门为白名单Spotinst avilable服务器IP地址:Spotinst Whitelabeled IPs
这是所有人!
现在,每当Spotinst将执行替换一个实例,它会自动与牧场主API
- 运行容器搬迁到不同的主机。
- 删除和清除失败的主机。
当然,如果你有任何问题,请不要犹豫与我们萍在cs@spotinst.com。






