1. 基础网络配置优化
/etc/sysconfig/network-scripts/ifcfg-<interface_name>
(如ifcfg-ens33
),设置BOOTPROTO=static
、IPADDR
(如192.168.1.100)、NETMASK
(如255.255.255.0)、GATEWAY
(如192.168.1.1)、DNS1=8.8.8.8
、DNS2=8.8.4.4
,并启用ONBOOT=yes
;修改后重启网络服务(sudo systemctl restart network
)以确保配置生效。/etc/resolv.conf
文件,添加高性能DNS服务器(如nameserver 8.8.8.8
、nameserver 8.8.4.4
),提升域名解析速度,避免因DNS延迟导致的网络请求阻塞。2. 内核参数调优
修改/etc/sysctl.conf
文件,调整以下关键参数以提升网络性能:
net.ipv4.tcp_fin_timeout=30
:缩短TCP连接关闭后的TIME_WAIT状态时长(默认60秒),释放端口资源;net.ipv4.tcp_tw_reuse=1
:允许复用处于TIME_WAIT状态的TCP连接,减少新建连接的开销;net.ipv4.tcp_max_syn_backlog=8192
:增加SYN队列长度,应对高并发连接请求;net.ipv4.ip_local_port_range=10000 65000
:扩大本地端口范围,支持更多并发外出连接;net.core.somaxconn=65535
:增大TCP监听队列的最大长度,避免连接被拒绝;net.ipv4.tcp_rmem=4096 87380 6291456
、net.ipv4.tcp_wmem=4096 65536 6291456
:分别调整TCP接收/发送缓冲区的初始值、默认值和最大值,提升数据传输效率。sudo sysctl -p
使参数生效。3. 防火墙规则配置
使用firewalld
(推荐)或iptables
开放Jenkins默认端口(8080)及所需端口(如代理节点通信端口),并限制不必要的端口访问:
sudo firewall-cmd --permanent --add-port=8080/tcp
(若修改了默认端口,替换为对应端口号);sudo firewall-cmd --reload
;sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080" accept'
)。4. Jenkins特定网络设置优化
/etc/sysconfig/jenkins
文件,将JENKINS_PORT
的值从8080改为其他端口(如8090),减少默认端口的扫描攻击风险;修改后重启Jenkins服务(sudo systemctl restart jenkins
)。/etc/sysconfig/jenkins
文件,优化JVM堆内存设置(如JENKINS_JAVA_OPTIONS="-Xms2g -Xmx4g -XX:MaxPermSize=512m"
),根据服务器内存大小调整(建议堆内存占服务器内存的1/2-1/3),避免因内存不足导致的频繁GC和网络请求延迟。5. 分布式构建与代理节点
通过配置代理节点(Slave)将构建任务分发到多台机器,减轻主节点的网络和计算压力:
slave1
),选择“Permanent Agent”类型;/home/jenkins/slave
)、启动方法(推荐“SSH”或“JNLP”);6. 插件与依赖管理
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
),缩短插件安装时间。7. 网络监控与调优
使用Jenkins性能监控插件(如“Performance Plugin”)或系统工具(如netstat
、ss
、iftop
)定期监控网络连接状态、带宽使用情况及构建任务的网络耗时,识别瓶颈(如某节点网络延迟高、某插件频繁发起网络请求)并进行针对性优化。