如果发现Kubernetes拉取镜像比较慢或者拉取不到,那么可以通过设置代理服务器的方式,进行加速。

当然前提是,从代理服务器到Kuebernetes镜像站点的网络要比较畅通,代理服务器上已经安装了代理服务软件,如squid等等。

步骤如下,Kubernetes版本1.28.4 , 操作系统Debian 12:

1.运行

mkdir /etc/systemd/system/containerd.service.d/

创建并编辑文件/etc/systemd/system/containerd.service.d/http-proxy.conf,保存下列内容:

[Service]
Environment="HTTP_PROXY=http://username:password@proxy-server-ip:port"
Environment="HTTPS_PROXY=http://username:password@proxy-server-ip:port"
Environment="NO_PROXY=localhost,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,aliyuncs.com,.svc,.cluster.local,.ewhisper.cn,<nodeCIDR>,<APIServerInternalURL>,<serviceNetworkCIDRs>,<etcdDiscoveryDomain>,<clusterNetworkCIDRs>,<platformSpecific>,<REST_OF_CUSTOM_EXCEPTIONS>"

其中http://username:password@proxy-server-ip:port,是代理服务器的ip和服务端口号,以及代理认证的账号和密码。如果不需要账号密码,那么可以省略username:password@。

2. 重启containerd服务,运行

systemctl daemon-reload
systemctl restart containerd.service

3. 在每个节点上都重复上述步骤,完成部署

4. 测试一下,运行

 ctr image pull quay.io/quay/busybox:latest

如果能够正常拉取镜像,设置就成功了。

5. 另外,说一下apt设置代理服务器的方法。

创建文件/etc/apt/apt.conf.d/proxy.conf,保存下列内容:

Acquire::http::Proxy "http://username:password@proxy-IP-address:proxyport/";
Acquire::https::Proxy "http://username:password@proxy-IP-address:proxyport/";

然后测试一下

apt install neofetch

能够软件包能够正常安装,那么就设置成功了。

6. 还有, helm 和curl设置代理服务器的办法

运行

export HTTP_PROXY=http://username:password@proxy-server-ip:port
export HTTPS_PROXY=http://username:password@proxy-server-ip:port
export NO_PROXY=localhost,127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,aliyuncs.com,.svc,.cluster.local,.ewhisper.cn

再把这段代码放到 .bashrc里面,这样每次登录的时候就会自动运行了。

参考:

https://www.cnblogs.com/east4ming/p/16898399.html

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注