自定义仓库使用指导
背景信息
- 支持使用自定义仓库配置,支持镜像仓、二进制仓、chart仓的自定义配置。
- 支持镜像仓和chart仓的单向认证访问(containerd、helm对仓库的单向访问,且使用同一CA),二进制仓不涉及认证访问。
说明:
chart仓目前只有numa组件在addon中独立使用。
前提条件
-
需要用户提供自定义的镜像仓、二进制仓、chart仓。
- 请将所需所有镜像导入到私有镜像仓中(注意命名空间、镜像名称、镜像tag要上传正确)。
- 将所需的所有二进制文件导入到私有二进制。
- 将所需的所有chart包导入到私有chart仓中。
-
在引导节点上按约定,将仓库的根CA上传到指定路径/etc/openFuyao路径下,ca.crt文件权限为644。目录结构为/etc/openFuyao/ca.crt。
-
需要上传的介质列表详见附录部分。
使用限制
无。
操作步骤
-
引导节点初始化。
将bkeadm二进制工具上传到引导节点。 使用bke init完成引导节点的初始化。下面为初始化命令参考:
bke init \ # 1. 镜像仓 --otherRepo 192.168.100.17:443/openfuyao \ # 自定义镜像仓库(含端口+路径),注意命名空间推荐为openFuyao --domain my.harbor.com \ # 镜像仓库域名(与--otherRepo匹配,确保证书和访问一致性) --imageRepoPort 443 \ # 镜像仓库端口(显式指定端口号) --imageRepoCAFile /etc/openFuyao/ca.crt \ # 私有仓库CA证书(指定读取的证书路径) # 2. 二进制仓 --otherSource http://192.168.100.48:8080 \ # 3. 功能开关:关闭控制台安装 --installConsole=false \ # 不安装BKE自带控制台(默认关闭) --enableNTP=false \ # 不进行NTP同步服务操作 # 4. 其他 --confirm # 提前确认,不需要进行后续Y/N确认 -
通过bc创建管理集群/业务集群。
编辑bc,修改为自定义的镜像仓和二进制仓。chart仓在addon中的参数中进行修改。
httpRepo: #http仓库 domain: http.bocloud.k8s #不用修改 ip: 192.168.200.173 #修改为实际的http仓库ip port: "40080" #修改为实际的http仓库端口号 prefix: "" #默认为空 imageRepo: #image仓库 domain: deploy.bocloud.k8s #修改为实际的image仓域名 ip: 192.168.200.173 #修改为实际的image仓ip port: "40443" #修改为实际的image仓端口号 prefix: openfuyao #修改为实际的项目名同时编辑cct,添加containerd的配置。
registry: configPath: /etc/containerd/certs.d configs: "my.harbor.com": #镜像仓域名 capabilities: ["pull", "resolve"] host: my.harbor.com skipVerify: false plainHTTP: false tls: caFile: /etc/openFuyao/ca.crt insecureSkipVerify: false如需在bke安装集群过程中安装NUMA亲和插件,需要在bke-cluster的cr中修改addons的参数,示例如下:
name: numa-affinity-package param: openfuyaoRepo: [https://私有chart仓地址](https://xn--chart-qh2hr31cxdv49mee3b/) version: v0.0.2
附录:介质列表
镜像列表
-
用于搭建K3s集群的基础组件,架构均为
amd64、arm64。镜像地址 标签 描述 cr.openfuyao.cn/openfuyao/registry 2.8.1 镜像仓库(与基础镜像重复,统一复用) cr.openfuyao.cn/openfuyao/nginx_yum_repo 1.23.0-alpine YUM源代理服务(基于Nginx) cr.openfuyao.cn/openfuyao/chartmuseum v0.16.2 Helm Chart仓库服务 cr.openfuyao.cn/openfuyao/nfs-server-alpine 0.9.0 NFS存储服务(轻量Alpine版本) cr.openfuyao.cn/openfuyao/k3s v1.25.16-k3s4 K3s集群核心二进制镜像 cr.openfuyao.cn/openfuyao/mirrored-pause 3.6 容器暂停镜像(K3s容器生命周期管理) -
K8s核心组件镜像(needDownload: true)
覆盖K8s控制平面、网络、负载均衡等核心功能,架构均为
amd64、arm64。镜像地址 标签 描述 cr.openfuyao.cn/openfuyao/kubernetes/coredns v1.10.1 K8s DNS服务(CoreDNS) cr.openfuyao.cn/openfuyao/kubernetes/pause 3.9 K8s容器基础镜像(与K3s区分版本) cr.openfuyao.cn/openfuyao/kube-apiserver of-v1.33.1 K8s API服务器(openFuyao 定制版) cr.openfuyao.cn/openfuyao/kube-controller-manager of-v1.33.1 K8s控制器管理器(openFuyao 定制版) cr.openfuyao.cn/openfuyao/kube-scheduler of-v1.33.1 K8s调度器(openFuyao 定制版) cr.openfuyao.cn/openfuyao/kube-proxy of-v1.33.1 K8s网络代理(openFuyao 定制版) cr.openfuyao.cn/openfuyao/etcd of-v3.5.21 Etcd数据库(K8s集群存储,openFuyao 定制版) cr.openfuyao.cn/openfuyao/keepalived/keepalived 1.3.5 高可用 VIP服务(Keepalived) cr.openfuyao.cn/openfuyao/haproxy/haproxy 2.1.4 负载均衡服务(HAProxy) cr.openfuyao.cn/openfuyao/calico/cni v3.27.3 Calico CNI网络插件(容器网络接口) cr.openfuyao.cn/openfuyao/calico/node v3.27.3 Calico节点代理(网络策略执行) cr.openfuyao.cn/openfuyao/calico/kube-controllers v3.27.3 Calico控制器(网络资源管理) cr.openfuyao.cn/kubernetes/pause 3.9 K8s容器基础镜像(与K3s区分版本) -
bke工具本身。
镜像地址 标签 描述 cr.openfuyao.cn/openfuyao/cluster-api-provider-bke latest BKE集群API提供商(CAPI兼容) cr.openfuyao.cn/openfuyao/bke-manifests latest BKE资源清单镜像 cr.openfuyao.cn/openfuyao/cluster-api/cluster-api-controller v1.4.3 CAPI集群控制器 cr.openfuyao.cn/openfuyao/cluster-api/kubeadm-bootstrap-controller v1.4.3 CAPI Kubeadm引导控制器 cr.openfuyao.cn/openfuyao/cluster-api/kubeadm-control-plane-controller v1.4.3 CAPI Kubeadm控制平面控制器 -
扩展组件
4.1 Volcano调度扩展
架构均为
amd64、arm64,用于容器调度优化(如NUMA亲和、资源调度)。镜像地址 标签 描述 cr.openfuyao.cn/openfuyao/volcano-config-website latest Volcano配置页面 cr.openfuyao.cn/openfuyao/volcano-config-service latest Volcano配置服务 cr.openfuyao.cn/openfuyao/numa-affinity-webhook latest NUMA亲和性Webhook服务 cr.openfuyao.cn/openfuyao/numa-tuning-operator v25.03 NUMA资源调优Operator cr.openfuyao.cn/openfuyao/volcano/resource-exporter latest Volcano资源指标导出器 cr.openfuyao.cn/openfuyao/oauth-proxy latest OAuth认证代理(多组件复用) cr.openfuyao.cn/openfuyao/vc-scheduler latest Volcano调度器核心 docker.io/volcanosh/vc-webhook-manager v1.9.0 Volcano Webhook管理器(官方镜像) docker.io/volcanosh/vc-controller-manager v1.9.0 Volcano控制器管理器(官方镜像) docker.io/alpine/openssl 3.5.0 OpenSSL工具(基础依赖,Alpine 版本) cr.openfuyao.cn/openfuyao/kubectl-openfuyao latest openFuyao定制Kubectl工具
二进制文件列表
-
K8s核心操作工具。
用于K8s集群的命令行管理与节点运行,均提供
amd64/arm64双架构支持。组件名称 架构 文件类型 描述 kubectl-v1.33.1-amd64 amd64 单个二进制 K8s集群命令行工具(openFuyao定制v1.33.1版本) kubectl-v1.33.1-arm64 arm64 单个二进制 同上(适配ARM架构节点) kubelet-v1.33.1-amd64 amd64 单个二进制 K8s节点代理(维持节点与集群通信,v1.33.1版本) kubelet-v1.33.1-arm64 arm64 单个二进制 同上(适配ARM架构节点) etcdctl-v3.5.6-linux-amd64 amd64 单个二进制 Etcd数据库命令行工具(管理集群存储,v3.5.6版本) etcdctl-v3.5.6-linux-arm64 arm64 单个二进制 同上(适配ARM架构节点) -
容器运行时核心组件。
支撑容器启停与资源管理的底层二进制,含运行时主体与核心依赖。
组件名称 架构 文件类型 描述 containerd-v2.1.1-linux-amd64.tar.gz amd64 压缩包 容器运行时(核心组件,v2.1.1 版本,压缩包含二进制与配置) containerd-v2.1.1-linux-arm64.tar.gz arm64 压缩包 同上(适配ARM架构节点) runc-amd64 amd64 单个二进制 轻量级容器运行时(containerd依赖,创建/销毁容器) runc-arm64 arm64 单个二进制 同上(适配ARM架构节点) -
容器网络插件(CNI)。
用于配置容器网络(如网络隔离、跨节点通信),为压缩包格式(内含多个CNI插件二进制)。
组件名称 架构 文件类型 描述 cni-plugins-linux-amd64-v1.4.1.tgz amd64 压缩包 CNI网络插件集合(v1.4.1版本,含bridge、host-local等插件) cni-plugins-linux-arm64-v1.4.1.tgz arm64 压缩包 同上(适配ARM架构节点) -
包管理与配置处理工具。
用于Helm Chart管理、YAML/JSON解析等运维操作。
组件名称 架构 文件类型 描述 helm-v3.14.2-linux-amd64.tar.gz amd64 压缩包 Helm包管理工具(v3.14.2 版本,管理K8s应用Chart) helm-v3.14.2-linux-arm64.tar.gz arm64 压缩包 同上(适配ARM架构节点) yq_linux_amd64 amd64 单个二进制 YAML数据处理工具(查询/修改YAML文件,v4.43.1版本) yq_linux_arm64 arm64 单个二进制 同上(适配ARM架构节点) jq-linux-amd64 amd64 单个二进制 JSON数据处理工具(解析/ 过滤JSON,v1.7.1版本) jq-linux-arm64 arm64 单个二进制 同上(适配ARM架构节点) -
用于RPM包管理、NFS共享配置的辅助压缩包(内含相关二进制或脚本)。
组件名称 架构 文件类型 描述 rpm.tar.gz 通用(压缩包内含多架构) 压缩包 RPM 包管理相关工具集合(适配 RPM 系操作系统) nfsshare.tar.gz 通用(压缩包内含多架构) 压缩包 NFS 共享服务配置工具(实现集群存储共享) charts.tar.gz 必须要有 -
BKE 集群专属管理工具。
openFuyao BKE集群的初始化与运维工具,双架构支持。
组件名称 架构 文件类型 描述 bkeadm_linux_amd64 amd64 单个二进制 BKE集群管理工具(初始化、升级、运维集群) bkeadm_linux_arm64 arm64 单个二进制 同上(适配ARM架构节点)
注:cfssl工具在openFuyao核心组件中使用,联创场景未用上。
二进制文件全量列表
files:
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/kubernetes/kubernetes/releases/download/of-v1.33.1/bin/linux/arm64/
files:
- kubectl-v1.33.1-arm64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/kubernetes/kubernetes/releases/download/of-v1.33.1/bin/linux/amd64/
files:
- kubectl-v1.33.1-amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/kubernetes/kubernetes/releases/download/of-v1.33.1/bin/linux/arm64/
files:
- kubelet-v1.33.1-arm64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/kubernetes/kubernetes/releases/download/of-v1.33.1/bin/linux/amd64/
files:
- kubelet-v1.33.1-amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/containerd/containerd/releases/download/v2.1.1-origin/
files:
- containerd-v2.1.1-linux-amd64.tar.gz
- containerd-v2.1.1-linux-arm64.tar.gz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/containernetworking/plugins/releases/download/v1.4.1/
files:
- cni-plugins-linux-amd64-v1.4.1.tgz
- cni-plugins-linux-arm64-v1.4.1.tgz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/helm/releases/download/v3.14.2/
files:
- helm-v3.14.2-linux-amd64.tar.gz
- helm-v3.14.2-linux-arm64.tar.gz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/mikefarah/yq/releases/download/v4.43.1
files:
- yq_linux_arm64
- yq_linux_amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/jqlang/jq/releases/download/v1.7.1
files:
- jq-linux-arm64
- jq-linux-amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/cloudflare/cfssl/releases/download/v1.6.4
files:
- cfssl-certinfo_1.6.4_linux_arm64
- cfssl-certinfo_1.6.4_linux_amd64
- cfssl_1.6.4_linux_arm64
- cfssl_1.6.4_linux_amd64
- cfssljson_1.6.4_linux_arm64
- cfssljson_1.6.4_linux_amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/opencontainers/runc/releases/download/v1.1.12/
files:
- runc-arm64
- runc-amd64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/etcd-io/etcd/releases/download/v3.5.6/
files:
- etcdctl-v3.5.6-linux-amd64
- etcdctl-v3.5.6-linux-arm64
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/rpm/releases/download/v0.0.1/
files:
- rpm.tar.gz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/nfs/
files:
- nfsshare.tar.gz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/charts/releases/download/latest/
files:
- charts.tar.gz
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/openFuyao/bkeadm/releases/download/latest/
files:
- bkeadm_linux_amd64
- bkeadm_linux_arm64
chart包列表
目前只涉及到NUMA一个组件。
- address: https://openfuyao.obs.cn-north-4.myhuaweicloud.com/charts/releases/download/latest/
files:
- numa-affinity-package-0.0.0-latest.tgz