Elastigroup詹金斯插件对谷歌的云平台抢占的vm

阅读时间:3分钟

詹金斯支持主/从模式,建设项目委托给多个从节点的工作负载,允许单个詹金斯安装主机大量的项目,或提供构建/测试所需不同的环境。这篇文章描述了主/从模式和如何使用它。

我们很高兴介绍新Spotinst Elastigroup谷歌云平台抢占的vm詹金斯插件

Spotinst詹金斯的插件可以帮助你做更多的与詹金斯设置允许您指定的自动配置和规模谷歌计算引擎抢占的VM作为奴隶的数量取决于上下工作完成。
通过利用Spotinst插件你可以访问这些资源雷竞技rabet官网100%正常运行时间70年%节约成本

它是如何工作的

Elastigroup詹金斯流(3)Spotinst詹金斯的插件自动上下尺度实例基于队列的就业人数。节点被配置运行启动脚本和作为奴隶节点连接到主和立即开始运行工作。

如何开始

1。生成一个Spotinst API访问令牌

登录到你的Spotinst控制台然后去设置- >个人访问令牌- >生成

屏幕截图2016-06-05 4.51.48点

一旦生成API访问令牌,詹金斯内复制并保存供以后使用控制台。

屏幕截图2016-06-05 4.52.01点

2。创建一个Elastigroup适当的启动脚本

现在,创建一个Elastigroup与适当的区域,图像,实例类型和下面的启动脚本

  • # ! / bin / bash
  • install_deps () {
  • log_info“安装依赖”
  • #安装deps。
  • =1美元
  • 美元的包;
  • 安装= $ (美元的包)
  • not_found= $(回声“expr指数“美元安装”“没有美元包”)
  • 如果[- z美元安装)& & (“not_found美元”= =“0”];然后
  • log_info“安装包”
  • 如果[- f /etc/redhat-release] | | (- f /etc/system-release);然后
  • yum安装- y美元的包
  • elif[- f /etc/arch-release];然后
  • “安装- y美元的包
  • elif[- f /etc/gentoo-release];然后
  • 出现安装- y美元的包
  • elif[- f /etc/SuSE-release];然后
  • zypp安装- y美元的包
  • elif[- f /etc/debian_version];然后
  • apt-get安装- y美元的包
  • fi
  • log_info“美元成功安装包”
  • fi
  • 完成
  • }
  • 即INSTANCE_ID=“curl http://169.254.169.254/latest/meta-data/instance-id”
  • JENKINS_MASTER_IP=“IP:端口”
  • #安装Java如果尚未安装
  • install_deps“jre”
  • #詹金斯奴隶JAR文件
  • curl http:// $ {JENKINS_MASTER_IP} / jnlpJars /奴隶。jar与产出/ tmp / slave.jar
  • #詹金斯奴隶JAR
  • java jar / tmp /奴隶。jar -jnlpUrl http:// $ {JENKINS_MASTER_IP} /电脑/ ${即INSTANCE_ID} / slave-agent。jnlp &

我们建议使用一个Linux CentOS的形象

3所示。安装Spotinst詹金斯插件并添加你的Spotinst API令牌和Elastigroup ID

登录到您的詹金斯控制台,并安装Spotinst可用插件的插件列表中
一旦您已经安装了插件,导航到主“詹金斯管理”>“配置系统”页面,然后向下滚动到Spotinst部分。接下来,添加API的令牌你在上一步中生成的。然后点击“验证令牌”,确保令牌是有效的

IMG_2016-08-31 14:51:00

一旦你设置Spotinst令牌,向下滚动底部附近的云区和点击“添加一个新的云”按钮。然后,选择“Spotinst”选择。
现在,你应该指定“Elastigroup ID”“空闲的几分钟前终止”

IMG_2016-08-31 14:51:09

你应该设置为利用Spotinst詹金斯插件!詹金斯主会自动启动新的实例通过Spotinst API,未使用的,将终止实例。

最好的问候,
Spotinst团队。

Baidu
map