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 最佳实践的更多相关文章

  1. nginx使用ssl模块配置支持HTTPS访问,腾讯云申请免费证书

    开始我尝试用 let's encrypt 让http 变 https 官方:https://github.com/certbot/certbot 参考:https://www.cnblogs.com/ ...

  2. 腾讯云CVM之间配置免密钥登录

    背景: 1客户A和B俩台主机之间需要实现免密钥登录,已绑定腾讯云申请的密钥对 系统:centos7.3 A:192.168.0.100 B:192.168.0.84 A主机的私钥文件:aaa B主机的 ...

  3. 腾讯云微计算实践:从Serverless说起,谈谈边缘计算的未来

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:黄文俊,腾讯云高级产品经理,曾经历过企业级存储.企业级容器平台等产品的架构与开发,对容器.微服务.无服务器.DevOps等都有浓厚兴趣. ...

  4. 腾讯云CVM服务器怎么建网站

    腾讯云云服务器CVM站在用户的角度看就相当于一台计算机,虽然实际上它是一个虚拟服务器,是一个大的云端服务器集群虚拟出来的一个虚拟服务器,在使用上直接当做一个实际的服务器即可.那么,对于一个新手菜鸟来说 ...

  5. 【get√】golang中实现从腾讯云CVM查询网卡流量的两种方法

    公众号文章链接 主要参考了以下位置的资料: 云服务器监控接口 腾讯云go-sdk example 方法一:使用腾讯云go-sdk go.mod文件中增加这样一行: github.com/tencent ...

  6. 腾讯云CVM使用记录--使用root权限

    1.su root 指令 ,执行下列命令获取root权限: sudo /bin/su - root 注意:严禁执行password命令,root密码默认不能被修改.

  7. Aggregated APIServer 构建云原生应用最佳实践

    作者 张鹏,腾讯云容器产品工程师,拥有多年云原生项目开发落地经验.目前主要负责腾讯云 TKE 云原生 AI 产品的开发工作. 谢远东,腾讯高级工程师,Kubeflow Member.Fluid(CNC ...

  8. qGPU on TKE - 腾讯云发布下一代 GPU 容器共享技术

    背景 qGPU 是腾讯云推出的 GPU 共享技术,支持在多个容器间共享 GPU卡,并提供容器间显存.算力强隔离的能力,从而在更小粒度的使用 GPU 卡的基础上,保证业务安全,达到提高 GPU 使用率. ...

  9. Aeraki Mesh正式成为CNCF沙箱项目,腾讯云携伙伴加速服务网格成熟商用

    6月,由腾讯云主导,联合百度.灵雀云.腾讯音乐.滴滴.政采云等多家合作伙伴发起的服务网格开源项目 Aeraki Mesh 通过了全球顶级开源基金会云原生计算基金会(CNCF)技术监督委员会评定,正式成 ...

随机推荐

  1. 设计Weekday类 代码参考

    #include <iostream> using namespace std; class Weekday { private: int num; public: void SetDay ...

  2. 第一次写js轮播图

    仿小米首页轮播图(注意事项) 布局部分 1.用ul包裹li再包裹a的形式来装图片,建立focus类: <div class="focus"> <ul> &l ...

  3. 容器技术之Dockerfile(二)

    前文我们聊到了什么是dockerfile,它的主要作用以及dockerfile的一些基本指令的使用方法,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13019 ...

  4. Java实现 蓝桥杯 算法提高 合并石子

    算法提高 合并石子 时间限制:2.0s 内存限制:256.0MB 问题描述 在一条直线上有n堆石子,每堆有一定的数量,每次可以将两堆相邻的石子合并,合并后放在两堆的中间位置,合并的费用为两堆石子的总数 ...

  5. Java实现 LeetCode 300 最长上升子序列

    300. 最长上升子序列 给定一个无序的整数数组,找到其中最长上升子序列的长度. 示例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,10 ...

  6. Java实现 LeetCode 200 岛屿数量

    200. 岛屿数量 给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量.一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的.你可以假设网格的四个边均被水包围. ...

  7. Java实现选择排序和冒泡排序

    1 问题描述 给定一个可排序的n元素序列(例如,数字.字符和字符串),将它们按照非降序方式重新排列. 2 解决方案 2.1 选择排序原理简介 选择排序开始的时候,我们从第一个元素开始扫描整个列表,找到 ...

  8. java实现输入信用卡号码

    /* 当你输入信用卡号码的时候,有没有担心输错了而造成损失呢?其实可以不必这么担心, 因为并不是一个随便的信用卡号码都是合法的,它必须通过 Luhn 算法来验证通过. 该校验的过程: 1.从卡号最后一 ...

  9. PAT 数字黑洞

    给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有“数字黑洞 ...

  10. tensorflow2.0学习笔记第二章第三节

    2.3激活函数sigmoid函数 f(x)= 1/(1 + e^-x)tf.nn.sigmoid(x)特点:(1)求导后的数值在0-0.25之间,链式相乘之后容易使得值趋近于0,形成梯度消失 (2)输 ...