关于百度网站是多少,中国菲律宾南海开战,怎么制作游戏?,wordpress自动备份更换k8s容器运行时环境为docker
k8s-V1.24之后容器运行时默认是containerd#xff0c;若想改为熟悉的docker作为运行时#xff0c;需要做以下操作 在每个节点安装containerd、docker; 每个节点安装cri-docker#xff1b; 调整kubelet配置并重启验证。 1.安装docker、con…更换k8s容器运行时环境为docker
k8s-V1.24之后容器运行时默认是containerd若想改为熟悉的docker作为运行时需要做以下操作 在每个节点安装containerd、docker; 每个节点安装cri-docker 调整kubelet配置并重启验证。 1.安装docker、containerd服务
# 安装docker和containerd
# 二进制包下载地址https://download.docker.com/linux/static/stable/x86_64/
# wget https://download.docker.com/linux/static/stable/x86_64/docker-24.0.2.tgz
#解压
tar xf docker-*.tgz
#拷贝二进制文件
cp docker/* /usr/bin/
#创建containerd的service文件,并且启动
cat /etc/systemd/system/containerd.service EOF
[Unit]
Descriptioncontainerd container runtime
Documentationhttps://containerd.io
Afternetwork.target local-fs.target
[Service]
ExecStartPre-/sbin/modprobe overlay
ExecStart/usr/bin/containerd
Typenotify
Delegateyes
KillModeprocess
Restartalways
RestartSec5
LimitNPROCinfinity
LimitCOREinfinity
LimitNOFILE1048576
TasksMaxinfinity
OOMScoreAdjust-999
[Install]
WantedBymulti-user.target
EOF
# 设置开机自启
systemctl enable --now containerd.service
systemctl status containerd.service
#准备docker的service文件
cat /etc/systemd/system/docker.service EOF
[Unit]
DescriptionDocker Application Container Engine
Documentationhttps://docs.docker.com
Afternetwork-online.target firewalld.service docker.socket containerd.service
Wantsnetwork-online.target
Requiresdocker.socket containerd.service
[Service]
Typenotify
ExecStart/usr/bin/dockerd -H fd:// --containerd/run/containerd/containerd.sock
ExecReload/bin/kill -s HUP $MAINPID
TimeoutSec0
RestartSec2
Restartalways
StartLimitBurst3
StartLimitInterval60s
LimitNOFILEinfinity
LimitNPROCinfinity
LimitCOREinfinity
TasksMaxinfinity
Delegateyes
KillModeprocess
OOMScoreAdjust-500
[Install]
WantedBymulti-user.target
EOF
#准备docker的socket文件
cat /etc/systemd/system/docker.socket EOF
[Unit]
DescriptionDocker Socket for the API
[Socket]
ListenStream/var/run/docker.sock
SocketMode0660
SocketUserroot
SocketGroupdocker
[Install]
WantedBysockets.target
EOF
#创建docker组
groupadd docker
#启动docker
systemctl enable --now docker.socket systemctl enable --now docker.service
#验证
docker info
# 配置加速器
mkdir /etc/docker/ -pv
cat /etc/docker/daemon.json EOF
{exec-opts: [native.cgroupdriversystemd],registry-mirrors: [https://docker.m.daocloud.io,https://docker.mirrors.ustc.edu.cn,http://hub-mirror.c.163.com],max-concurrent-downloads: 10,log-driver: json-file,log-level: warn,log-opts: {max-size: 10m,max-file: 3},data-root: /var/lib/docker
}
EOF
systemctl daemon-reload
systemctl stop docker
systemctl restart docker
2.安装cri-docker
# 由于1.24以及更高版本不支持docker所以安装cri-docker,kubelet可以通过cri-docker间接编排容器
# 下载cri-docker
# wget https://mirrors.chenby.cn/https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.3/cri-dockerd-0.3.3.amd64.tgz
# 解压cri-docker
tar xvf cri-dockerd-*.amd64.tgz
cp -r cri-dockerd/ /usr/bin/
chmod x /usr/bin/cri-dockerd/cri-dockerd
# 写入启动配置文件
cat /usr/lib/systemd/system/cri-docker.service EOF
[Unit]
DescriptionCRI Interface for Docker Application Container Engine
Documentationhttps://docs.mirantis.com
Afternetwork-online.target firewalld.service
Wantsnetwork-online.target
Requirescri-docker.socket
[Service]
Typenotify
ExecStart/usr/bin/cri-dockerd/cri-dockerd --network-plugincni --pod-infra-container-imageregistry.aliyuncs.com/google_containers/pause:3.7
ExecReload/bin/kill -s HUP $MAINPID
TimeoutSec0
RestartSec2
Restartalways
StartLimitBurst3
StartLimitInterval60s
LimitNOFILEinfinity
LimitNPROCinfinity
LimitCOREinfinity
TasksMaxinfinity
Delegateyes
KillModeprocess
[Install]
WantedBymulti-user.target
EOF
# 写入socket配置文件
cat /usr/lib/systemd/system/cri-docker.socket EOF
[Unit]
DescriptionCRI Docker Socket for the API
PartOfcri-docker.service
[Socket]
ListenStream%t/cri-dockerd.sock
SocketMode0660
SocketUserroot
SocketGroupdocker
[Install]
WantedBysockets.target
EOF
# 进行启动cri-docker
systemctl daemon-reload
systemctl enable cri-docker --now
systemctl restart cri-docker
systemctl status cri-docker
3.调整kubelet配置并重启验证
#注释掉原来的配置改为--container-runtime-endpointunix:///run/cri-dockerd.sock \
cat /etc/systemd/system/kubelet.service
[Unit]
DescriptionKubernetes Kubelet
Documentationhttps://github.com/GoogleCloudPlatform/kubernetes
[Service]
WorkingDirectory/var/lib/kubelet
ExecStartPre/bin/mount -o remount,rw /sys/fs/cgroup
ExecStart/opt/kube/bin/kubelet \--config/var/lib/kubelet/config.yaml \
# --container-runtime-endpointunix:///run/containerd/containerd.sock \--container-runtime-endpointunix:///run/cri-dockerd.sock \--hostname-override10.10.10.3 \--kubeconfig/etc/kubernetes/kubelet.kubeconfig \--root-dir/var/lib/kubelet \--v2
Restartalways
RestartSec5
[Install]
WantedBymulti-user.target
systemctl daemon-reload
systemctl restart kubelet
# 验证
[root10-3 down]# kubectl get node -owide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
10.10.10.3 Ready master 26h v1.27.16 10.10.10.3 none openEuler 22.03 (LTS-SP3) 5.10.0-182.0.0.95.oe2203sp3.x86_64 docker://24.0.5
k8s-node01 Ready node 8h v1.27.16 10.10.10.4 none openEuler 22.03 (LTS-SP3) 5.10.0-182.0.0.95.oe2203sp3.x86_64 docker://24.0.5#删除节点上的历史容器
crictl rm -f crictl ps -aq