簡介?
Kubernetes 從 v1.20 開始棄用 Docker,并推薦用戶切換到基于容器運行時接口(CRI)的容器引擎,如 containerd、cri-o 等。
目前使用的環(huán)境中使用了 Kubernetes v1.22.3,containerd 1.4.3,containerd 在配置私服配置上與直接使用 docker 有一定區(qū)別。
今天簡單聊一下如何配置私服,默認(rèn)使用 dockerhub 官方鏡像registry:v2
和harbor
配置的私服為 http,未做配置時 k8s 拉鏡像時會以 https 協(xié)議訪問。
假定已創(chuàng)建好的私服地址為http://10.211.55.2:5000
,進行如下修改
編輯 worker 節(jié)點上/etc/containerd/config.toml
,查找plugins."io.containerd.grpc.v1.cri".registry.mirrors
配置
相關(guān)配置中調(diào)整為如下內(nèi)容
[plugins."io.containerd.grpc.v1.cri".registry]
[plugins."io.containerd.grpc.v1.cri".registry.auths]
[plugins."io.containerd.grpc.v1.cri".registry.configs]
[plugins."io.containerd.grpc.v1.cri".registry.configs."k8s-harbor:10001".tls]
insecure_skip_verify = true
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."k8s-harbor:10001"]
endpoint = ["http://k8s-harbor:10001"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://registry.cn-hangzhou.aliyuncs.com"]
參考 [plugins."io.containerd.grpc.v1.cri".registry.mirrors."10.211.55.2:5000"] 行添加私服配置,使用該配置可以直接配置相關(guān) endpoint 為 http 地址。
重啟 containerd,使配置生效
systemctl restart containerd
這時候,使用 crictl pull 命令就可以獲取 http 協(xié)議私服上的鏡像了。
但是使用ctr命令還是不行,原因:?
ctr does not read the /etc/containerd/config.toml config file,?this config is used by cri, which means kubectl or crictl would use it.文章來源:http://www.zghlxwxcb.cn/news/detail-654789.html
ctr命令拉取http格式的鏡像地址方式:
$. ctr image pull --plain-http <image>
# eg:
$. ctr i pull --plain-http k8s-harbor:10001/my-project/spring-boot-k8s:0.0.1-SNAPSHOT
k8s 使用 containerd 運行時配置 http 私服 - 簡書文章來源地址http://www.zghlxwxcb.cn/news/detail-654789.html
到了這里,關(guān)于k8s 使用 containerd 運行時配置 http 私服的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!