系统要求

服务机器

服务机器托管服务器产品的核心,包括面向用户的网站,API引擎,数据存储和Nomad Job Scheduler。最好使用孤立机器。

目前,Circleci Server仅支持X86_64架构。

下表定义了服务机器CPU,RAM和磁盘空间要求:

每日活动Circleci用户数量 中央处理器 内存 磁盘空间 NIC速度

<50

8个核心

32GB.

100GB.

1Gbps.

50-250

12个核心

64GB.

200GB.

1Gbps.

251-1000.

16个核心

128GB.

500GB.

10Gbps.

1001-5000.

20个核心

256GB.

1TB.

10Gbps.

5000+

24个核心

512GB.

2TB.

10Gbps.

游牧民族客户

Nomad客户机运行Nomad Server计划的Circleci作业。每个客户端的最小CPU,RAM和磁盘空间要求如下:

  • CPU:4核心

  • RAM:32GB.

  • 磁盘空间:100GB

  • NIC速度:1Gbps

对于AWS安装Circleci服务器,Nomad客户端的推荐实例类型是m5.2xlarge.(8个VCPU @ 2.4GHz,32GB RAM)。

目前,Nomad客户端只支持X86_64架构。

您可以选择更大的实例类型以适合每个客户端的工作。为了帮助在这种选择中,考虑当Nomad确定作业是否适合客户端时,每个CPU将其分配1024MHz,并且容量是核心人数*时钟速度。使用此方法,最大容量m5.2xlarge.将会19200MHz.,这将意味着9.6个职位可以在该客户上运行(如果没有限制因素)。在实践中,游牧民族将为某些CPU自身重新定位,并且由于CPU:RAM比率,可用的RAM是控制有多少作业可以运行的限制因素。

沉重使用的建议

EBS将在某些IO操作之后油门IOPS,因此具有默认服务器配置的重载使用(M5.2xlarge具有200-GIB GP2根卷),可以看到与性能相关的问题,例如慢作业,缓慢旋转和作业最糟糕的案例超时。

要了解沉重用法的意思:

  • 如果爆发附加到Nomad客户端的存储度量标准急剧下降,这是一个符号,即工作负载足以受到影响。看看AWS EBS指标文件有关详细信息。

  • 我们有一个来自客户的报告,该报告将在37.5分钟内使用500 MB / s的连续磁盘I / O在默认存储配置中使用突发信用。

此问题的建议解决方法如下:

  • 使用大于1 TIB的EBS卷。大型EBS卷永远不会消耗IO积分。

  • 使用* 5d实例类型,并使用附加的实例存储用于Docker相关的文件(即/ var / lib / docker)。

选择Nomad客户数量

下表定义了要作为最佳实践可用的Nomad客户端的数量。根据您的系统的需求上下缩放:

每日活动Circleci用户数量 Nomad客户端计算机数量

<50

1-5

50-250

5-10

250-1000.

10-15

5000+

15+

服务器端口

每台计算机类型都列出了Circleci 2.0安装所需的所有端口。

服务机器

端口号码 协议 方向 来源/目的地 使用 笔记

80

TCP.

inound.

终端用户

http web应用程序流量

443.

TCP.

inound.

终端用户

https web app流量

7171.

TCP.

inound.

终端用户

工件访问

8081.

TCP.

inound.

终端用户

工件访问

22.

TCP.

inound.

管理人员

s

8800.

TCP.

inound.

管理人员

管理控制台

8125.

UDP.

inound.

游牧民族客户

指标

8125.

UDP.

inound.

NOMAD服务器

指标

仅在使用外部化的Nomad服务器时

8125.

UDP.

inound.

所有数据库服务器

指标

只有使用外部数据库

4647.

TCP.

双向

游牧民族客户

内部沟通

8585

TCP.

双向

游牧民族客户

内部沟通

7171.

TCP.

双向

游牧民族客户

内部沟通

3001

TCP.

双向

游牧民族客户

内部沟通

80

TCP.

双向

GitHub 金宝博娱乐官网网址Enterprise / Github.com(无论哪种适用)

Webhooks / API访问

443.

TCP.

双向

GitHub 金宝博娱乐官网网址Enterprise / Github.com(无论哪种适用)

Webhooks / API访问

80

TCP.

出境

AWS API端点

API访问

只有在AWS上运行

443.

TCP.

出境

AWS API端点

API访问

只有在AWS上运行

5432.

TCP.

出境

PostgreSQL服务器

PostgreSQL数据库连接

只有使用外部数据库。端口是用户定义的,假设默认PostgreSQL端口。

27017

TCP.

出境

MongoDB服务器

MongoDB数据库连接

只有使用外部数据库。端口是用户定义的,假设默认MongoDB端口。

5672

TCP.

出境

RabbitMQ服务器

rabbitmq连接

只有使用外部化rabbitmq

6379.

TCP.

出境

redis服务器

redis连接

只有在使用外化的redis

4647.

TCP.

出境

NOMAD服务器

Nomad Server连接

仅在使用外部化的Nomad服务器时

443.

TCP.

出境

CloudWatch终点

指标

只有在使用AWS CloudWatch

游牧民族客户

端口号码 协议 方向 来源/目的地 使用 笔记

64535-65535

TCP.

inound.

终端用户

ssh进入构建功能

80

TCP.

inound.

管理人员

Circleci管理API访问

443.

TCP.

inound.

管理人员

Circleci管理API访问

22.

TCP.

inound.

管理人员

s

22.

TCP.

出境

GitHub 金宝博娱乐官网网址Enterprise / Github.com(无论哪种适用)

从github下载代码。

4647.

TCP.

双向

服务机器

内部沟通

8585

TCP.

双向

服务机器

内部沟通

7171.

TCP.

双向

服务机器

内部沟通

3001

TCP.

双向

服务机器

内部沟通

443.

TCP.

出境

云存储提供商

文物存储

只有使用外部伪影存储

53.

UDP.

出境

内部DNS服务器

DNS解析

这是为了确保您的作业可以解决正确操作所需的所有DNS名称。

github企金宝博娱乐官网网址业/ github.com

端口号码 协议 方向 来源/目的地 使用 笔记

22.

TCP.

inound.

服务机器

git访问

22.

TCP.

inound.

游牧民族客户

git访问

80

TCP.

inound.

游牧民族客户

API访问

443.

TCP.

inound.

游牧民族客户

API访问

80

TCP.

双向

服务机器

Webhooks / API访问

PostgreSQL服务器

端口号码 协议 方向 来源/目的地 使用 笔记

5432.

TCP.

双向

PostgreSQL服务器

postgreSQL复制

只有使用外部数据库。端口是用户定义的,假设默认PostgreSQL端口。

MongoDB服务器

端口号码 协议 方向 来源/目的地 使用 笔记

27017

TCP.

双向

MongoDB服务器

MongoDB复制

只有使用外部数据库。端口是用户定义的,假设默认MongoDB端口。

RabbitMQ服务器

端口号码 协议 方向 来源/目的地 使用 笔记

5672

TCP.

inound.

服务机器

rabbitmq连接

只有使用外部化rabbitmq

5672

TCP.

双向

RabbitMQ服务器

rabbitmq镜像

只有使用外部化rabbitmq

redis服务器

端口号码 协议 方向 来源/目的地 使用 笔记

6379.

TCP.

inound.

服务机器

redis连接

只有在使用外化的redis

6379.

TCP.

双向

redis服务器

redis复制

只有使用外部化REDIS,并使用REDIS复制(可选)

NOMAD服务器

端口号码 协议 方向 来源/目的地 使用 笔记

4646.

TCP.

inound.

服务机器

Nomad Server连接

仅在使用外部化的Nomad服务器时

4647.

TCP.

inound.

服务机器

Nomad Server连接

仅在使用外部化的Nomad服务器时

4648.

TCP.

双向

NOMAD服务器

Nomad服务器内部通信

仅在使用外部化的Nomad服务器时