弹性配置为构建提速 - CODING & 腾讯云 CVM 最佳实践
CODING 中提供了内置云主机用来执行持续集成(CI)中的构建计划,能够胜任大部分构建任务。但如果碰上了大型项目的构建,或者需要在本地服务器生成构建成果,单个计算资源就显得有点捉急了。针对这一部分需求,CODING 现已支持接入第三方计算资源作为构建节点,甚至可以接入多个服务器共同作为构建节点池,打造专属的计算集群。
下面将会以腾讯云 CVM 为例,演示如何在 CODING 持续集成中接入自己的计算资源。
开通安全组
在购买了腾讯云 CVM后,第一件要做的事情就是开放相应的安全组策略,入站和出站规则都需要设置。

登录服务器
在【操作】中点击登录,按照提示输入 root 密码。如果忘记密码可以在【更多】>【密码/密钥】中点击【重置密码】后再次输入即可。

做完上述操作并成功登录服务器后,可以选择 Docker 或 cci-agent 两种方式将服务器接入至构建节点池。如果想使用与 CODING 官方提供的运行节点一致的环境,请选择使用 Docker 运行构建节点。如果想使用节点上自带的环境,譬如需要使用 MacOS 上的 Xcode 编译 iOS 应用,请选择 cci-agent 方式进行接入。
接入构建节点池
使用 Docker(推荐)
使用 Docker 的前提是服务器上已经安装了 Docker。需要注意的是,部分 openVZ 虚拟化的服务器因内核较低,无法成功安装 Docker,当然我们的腾讯云 CVM 是没有这个问题的。下面使用 curl 命令安装 Docker。
curl -fsSL https://get.docker.com/ | sh
待 Docker 安装完成后,前往 CODING 进入【项目】>【持续集成】>【构建节点】,在构建节点页复制配置命令。

等待一小会,等镜像构建完成后便会提示构建成功。

在 CODING 构建节点页也可以看到新注册上线的服务器。

手动接入 cci-agent
在 CODING 的构建节点页一键生成初始化命令,并在服务器中运行该命令。

执行 cci-agent 启动命令。
./cci-agent up -d

配置完成后会出现在节点池中。

在安装过程中,节点状态会不断变化。关于节点的状态说明:
- 闲置:构建节点此时空闲。
- 占用:构建节点已被分配到构建任务中使用。
- 准备中:构建节点正在准备构建环境。
- 开启:只有处于开启状态的节点才能被分配使用,如果关闭节点不会影响正在运行的构建任务。
- 删除:节点将会脱离 CODING 持续集成服务,但只会删除工作空间和相关的配置信息,之前产生的全局缓存文件仍会保留。
使用自定义节点
计算资源接入成功后,在【构建计划】>【设置】中选择使用自定义节点。

保存修改后,触发构建任务后就可以在自己的计算资源集群中执行持续集成任务了。使用自定义节点不会占用 CODING 团队配额,不受并行上限限制。并且服务器集群规模越大,构建大型项目的速度也会越快。
弹性配置为构建提速 - CODING & 腾讯云 CVM 最佳实践的更多相关文章
- nginx使用ssl模块配置支持HTTPS访问,腾讯云申请免费证书
开始我尝试用 let's encrypt 让http 变 https 官方:https://github.com/certbot/certbot 参考:https://www.cnblogs.com/ ...
- 腾讯云CVM之间配置免密钥登录
背景: 1客户A和B俩台主机之间需要实现免密钥登录,已绑定腾讯云申请的密钥对 系统:centos7.3 A:192.168.0.100 B:192.168.0.84 A主机的私钥文件:aaa B主机的 ...
- 腾讯云微计算实践:从Serverless说起,谈谈边缘计算的未来
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:黄文俊,腾讯云高级产品经理,曾经历过企业级存储.企业级容器平台等产品的架构与开发,对容器.微服务.无服务器.DevOps等都有浓厚兴趣. ...
- 腾讯云CVM服务器怎么建网站
腾讯云云服务器CVM站在用户的角度看就相当于一台计算机,虽然实际上它是一个虚拟服务器,是一个大的云端服务器集群虚拟出来的一个虚拟服务器,在使用上直接当做一个实际的服务器即可.那么,对于一个新手菜鸟来说 ...
- 【get√】golang中实现从腾讯云CVM查询网卡流量的两种方法
公众号文章链接 主要参考了以下位置的资料: 云服务器监控接口 腾讯云go-sdk example 方法一:使用腾讯云go-sdk go.mod文件中增加这样一行: github.com/tencent ...
- 腾讯云CVM使用记录--使用root权限
1.su root 指令 ,执行下列命令获取root权限: sudo /bin/su - root 注意:严禁执行password命令,root密码默认不能被修改.
- Aggregated APIServer 构建云原生应用最佳实践
作者 张鹏,腾讯云容器产品工程师,拥有多年云原生项目开发落地经验.目前主要负责腾讯云 TKE 云原生 AI 产品的开发工作. 谢远东,腾讯高级工程师,Kubeflow Member.Fluid(CNC ...
- qGPU on TKE - 腾讯云发布下一代 GPU 容器共享技术
背景 qGPU 是腾讯云推出的 GPU 共享技术,支持在多个容器间共享 GPU卡,并提供容器间显存.算力强隔离的能力,从而在更小粒度的使用 GPU 卡的基础上,保证业务安全,达到提高 GPU 使用率. ...
- Aeraki Mesh正式成为CNCF沙箱项目,腾讯云携伙伴加速服务网格成熟商用
6月,由腾讯云主导,联合百度.灵雀云.腾讯音乐.滴滴.政采云等多家合作伙伴发起的服务网格开源项目 Aeraki Mesh 通过了全球顶级开源基金会云原生计算基金会(CNCF)技术监督委员会评定,正式成 ...
随机推荐
- JavaScript几种继承方式的总结
1.原型链继承 直接将子类型的原型指向父类型的实例,即"子类型.prototype = new 父类型();",实现方法如下: //父类构造函数 function father(n ...
- 利用Nginx设置跨域的方式
1.服务端可控,添加响应头 2.服务端不可控.通过Nginx反向代理 3.服务端不可控.通过Nginx反向代理添加响应头 第一种方法.服务端可控时,可以在服务器端添加响应头(前端+后端解决) 浏览器地 ...
- burpsuite 2.0beta体验
这里有破解版:http://ximcx.cn/post-110.html 一直再用1.7x版本,2.0的还没怎么用过 移除了 Scanner 和spider 选项卡,全部整理到Dashboard里 代 ...
- day07 作业
作业(必做题):#1. 使用while循环输出1 2 3 4 5 6 8 9 10count=0while count<11: if count==7: count+=1 continue pr ...
- Rocket - diplomacy - AddressDecoder
https://mp.weixin.qq.com/s/UHGq74sEd9mcG5Q3f-g3mA 介绍AddressDecoder的实现. 1. 基本定义 每个Port包含多 ...
- Rocket - diplomacy - NodeImp
https://mp.weixin.qq.com/s/HgUpTCh0D94Uymj5qQk-ag 介绍NodeImp相关基础类的实现. 1. 类图 节点实现(NodeImp ...
- jchdl - GSL实例 - Add
https://mp.weixin.qq.com/s/6xcYYdYZTBPTf25xFluzBQ 使用FullAdder级联实现加法器 参考链接: https://github.com/wj ...
- Vuex原理实现
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 思考问题 Vuex 只在更实例引入了,那么 ...
- 安装xlrd包的时候,总是报错:ERROR: Could not install packages due to an EnvironmentError: HTTPConnectionPool (host='127.0.0.1', port=8888):。。。
安装xlrd包的时候,总是报错:ERROR: Could not install packages due to an EnvironmentError: HTTPConnectionPool (ho ...
- maven工程打胖瘦jar包插件
<plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <versio ...