一、制作背景
使用kubespray工具kubernetes高可用集群,由于当前环境是属于专网环境,无法上外网,即无法通过外网来获取docker官方yum源或阿里云yum源来安装docker服务,这里需要将docker服务进行本地yum源构建,让其它主机可以通过内部docker服务的yum源地址来安装docker服务。
二、制作步骤
2.1、局域网主机安装Nginx
说明:这里使用Nginx来提供yum源仓库下文件载服务的,默认根目录为/usr/share/nginx/html。Nginx服务ip和端口为:192.168.1.23:80,在根目录下创建localyum/packages来存放docekr离线安装包。在当前环境中,Nginx已经安装好了,这里就不介绍了。
[root@k8s-sdjw-download-23 ~]
2.2、docker离线安装包下载
说明:找一台能够访问外网的主机下载docker安装包,通过命令行,将安装包到/home/localyum/dockerrpm目录下。
1、配置docker官方yum源
[root@k8s-sdjw-outside-24 ~]
[root@k8s-sdjw-outside-24 ~]
[root@k8s-sdjw-outside-24 ~]
[root@k8s-sdjw-outside-24 ~]
2、查看当前yum源支持的docker版本 说明:当前k8s-v1.22.8默认安装的docker版本为20.10.11。
[root@k8s-sdjw-outside-24 ~]
[root@k8s-sdjw-outside-24 ~]
2.3、createrepo离线安装包下载
说明:找一台能够访问外网的主机下载createrepo安装包,通过命令行,将安装包到/home/localyum/createrepo目录下。 1、下载createrepo安装包
[root@k8s-sdjw-outside-24 ~]
2、将createrepo离线rpm安装包拷贝到局域网主机,即当前环境中的k8s-sdjw-download-23主机上的/usr/share/nginx/html/localyum/packages目录下。如下图所示:
2.4、局域网主机安装createrepo
说明:将k8s-sdjw-outside-24主机上的createrepo离线rpm安装包拷贝到k8s-sdjw-download-23主机上的/home/localyum/createrepo,没有该目录,可创建。通过如下方式安装。也可以通过rpm -ivh进行安装,但是一定要按照依赖关系进行安装。
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 createrepo]
2.5、创建docker.repo并进行配置
删除/etc/yum.repos.d/目录下面的文件,创建docker.repo并进行配置,这里为了避免误删,将yum.repos.d目录进行备份。/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7这个地址要根服务器保持一致。
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 ~]
[docker-ce-20.10.11]
name=docker-ce-20.10.11
baseurl=http://192.168.1.23/localyum
enabled=1
gpgcheck=0
2.6、设置本地源
说明:设置本地源,输入yum repolist看是否可以看到自己构建的本地源
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 ~]
[root@k8s-sdjw-download-23 ~]
2.7、安装docker测试
说明:如下图所示,则表明docker离线安装以及本地yum源构建成功。
总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:企业级K8s集群运维实战
|