1执行下面的命令修改上一篇中yaml文件来实现定制化安装devops

kubectl edit cm -n kubesphere-system ks-installer

主要是将devops几个配置由False改为True

然后使用下面的命令查看安装日志

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f

 整个安装持续时间视个人网络环境而定,通常需要十来分钟。如果出现某个pod 镜像拉取失败,参照下面文章的教程,重新拉取镜像,删除失败的pod让其重建。

可以通过下面的命令,检查网络环境,从哪个镜像库拉的,则地址换为对应的镜像库地址即可

nslookup registry-1.docker.io

如果出现下面的提示,则网络正常

[root@k8s-node3 ~]# nslookup registry-1.docker.io
Server:        192.168.31.1
Address:    192.168.31.1#53

Non-authoritative answer:
Name:    registry-1.docker.io
Address: 173.244.217.42
Name:    registry-1.docker.io
Address: 2a03:2880:f127:83:face:b00c:0:25de

待所有关于devops和alert的pod都处于Running状态,则devops构建建成功。

查看,在主页集群状态-->Monitoring-->DevOps,如果没有问题DevOps选项卡会变成绿色,我这里是因为这个pod构建失败,再往里深究是这个镜像joosthofman/wget:1.0拉不下来。

上网查了下才了解到,目前joosthofman/wget:1.0 镜像在国内网络环境下无法直接从 Docker Hub 拉取,原因可能包括镜像已被删除、设为私有或网络限制等。

因此可尝试自行构建一个功能等价的镜像,并将其保存为 tar 包以供使用。以下是具体步骤:

🛠️ 构建等价的 wget 镜像

  1. 创建 Dockerfile

    在工作目录下创建一个名为 Dockerfile 的文件,内容如下:

    FROM alpine:3.18 RUN apk add --no-cache wget

  2. 构建镜像

    在终端中执行以下命令构建镜像:

    docker build -t joosthofman/wget:1.0 . 
  3. 保存镜像为 tar 包

    将构建好的镜像保存为 tar 包:

    docker save -o joosthofman-wget-1.0.tar joosthofman/wget:1.0 

    此操作将在当前目录下生成一个名为 joosthofman-wget-1.0.tar 的文件。

  4. 在目标机器上加载镜像

    joosthofman-wget-1.0.tar 文件传输到目标机器后,执行以下命令加载镜像:

    docker load -i joosthofman-wget-1.0.tar 

    加载完成后,您可以通过 docker images 命令验证镜像是否成功导入。

最后查看devops 相关pods,都处于Running或者Completed状态了,kubeSphere上查看Devops变成绿色可行状态了

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐