目录
目标
当容器运行时为containerd时,学会如何根据Harbor上的镜像创建Pod。其中主要涉及到升级containerd版本、利用docker往Harbor传递镜像,containerd与Harbor关键配置信息。
版本
Kubernets v1.25.0
containerd 1.6.22
Harbor v2.3.0
官方文档
Kubernetes中文文档https://kubernetes.io/zh-cn/docs/home/
步骤
第一步:查询K8s各个节点上容器运行时(CONTAINER-RUNTIME)的类型。发现三个节点容器运行时containerd类型。
第二步:如果containerd版本过低,先备份系统镜像再做containerd版本升级。
第三步:将三个节点上的containerd卸载。
yum remove containerd.io -y
第四步:给三个节点安装containerd,我安装的containerd1.6.22版本。
yum install containerd.io-1.6.22* -y
第五步:进入/etc/containerd目录,并将该目录下的文件都删除(注意,这里会删除docker)。如果没有则创建。
第六步:在/etc/containerd下创建config.toml,内容如下。注意:文件中的IP和账号密码要改成和Harbor一致。
disabled_plugins = []
imports = []
oom_score = 0
plugin_dir = ""
required_plugins = []
root = "/var/lib/containerd"
state = "/run/containerd"
temp = ""
version = 2
[cgroup]
path = ""
[debug]
address = ""
format = ""
gid = 0
level = ""
uid = 0
[grpc]
address = "/run/containerd/containerd.sock"
gid = 0
max_recv_message_size = 16777216
max_send_message_size = 16777216
tcp_address = ""
tcp_tls_ca = ""
tcp_tls_cert = ""
tcp_tls_key = ""
uid = 0
[metrics]
address = ""
grpc_histogram = false
[plugins]
[plugins."io.containerd.gc.v1.scheduler"]
deletion_threshold = 0
mutation_threshold = 100
pause_threshold = 0.02
schedule_delay = "0s"
startup_delay = "100ms"
[plugins."io.containerd.grpc.v1.cri"]
device_ownership_from_security_context = false
disable