Get the App
SLTechnology News&Howtos  ›  Servers  › 

Integrated deployment of containerd and kubernetes

Shulou Source: shulou.com Published: 2022-06-02 04:47:33 10月05日 Update

Deployment environment # operating system: CentOS Linux release 7.6.1810 (Core) # kubelet version: v1.14." containerd version: 1.3." crictl version: v1.16." cni version: v0.8." working directory: / apps/k8s# binaries directory: / usr/local/bin/# cni directory: / apps/cni prepares required binaries wget https://github.com/kubernetes- Sigs/cri-tools/releases/download/v1.16.1/crictl-v1.16.1-linux-amd64.tar.gzwget https://github.com/containerd/containerd/releases/download/v1.3.0/containerd-1.3.0.linux-amd64.tar.gzwget https://github.com/containernetworking/plugins/releases/download/v0.8.2/cni-plugins-linux-amd64-v0.8.2.tgz unzips the download file to the appropriate directory tar-xvf Containerd-1.3.0.linux-amd64.tar.gzmv bin/* / usr/local/bin/tar-xvf crictl-v1.16.1-linux-amd64.tar.gzmv crictl / usr/local/bin/# cni extract mkdir-p / apps/cni/bin/tar-xvf cni-plugins-linux-amd64-v0.8.2.tgz-C / apps/cni/bin/ prepare configuration file # containerd configuration file prepare mkdir-p / apps/k8s/etc/containerdvi / apps [plugins.opt] path = "/ apps/k8s/containerd" [plugins.cri] stream_server_address = "127.0.0.1" stream_server_port = "10010" sandbox_image = "docker.io/juestnow/pause-amd64:3.1" max_concurrent_downloads = 20 [plugins.cri.containerd] snapshotter = "overlayfs" [plugins.cri.containerd.default_runtime] runtime_type = "io.containerd.runtime.v1.linux" runtime_engine = "" runtime_root = "" [plugins.cri.containerd.untrusted_workload_runtime] runtime_type = "" Runtime_engine = "" runtime_root = "" [plugins.cri.cni] bin_dir = "/ apps/cni/bin" conf_dir = "/ etc/cni/net.d" [plugins. "io.containerd.runtime.v1.linux"] shim = "containerd-shim" runtime = "runc" runtime_root = "" no_shim = false shim_debug = false [plugins. "io.containerd.runtime.v2.task"] platforms = [ "linux/amd64"]-# crictl configuration file prepares vim / etc/crictl.yaml-- -- runtime-endpoint: unix:///run/k8s/containerd/containerd.sock image-endpoint: unix:///run/k8s/containerd/containerd.sock timeout: 10 debug: false prepares the containerd startup file because the docker containerd.service file already exists because it was previously installed To ensure the normal operation of docker, the newly installed containerdk8svim / usr/lib/systemd/system/containerdk8s.service---- [Unit] Description=Lightweight KubernetesDocumentation= https://containerd.ioAfter=network-online is modified. .target [service] ExecStartPre=-/sbin/modprobe br_netfilterExecStartPre=-/sbin/modprobe overlayExecStartPre=-/bin/mkdir-p / run/k8s/containerdExecStart=/usr/local/bin/containerd\-c / apps/k8s/etc/containerd/config.toml\-a / run/k8s/containerd/containerd.sock\-- state / apps/k8s/run/containerd\-- root / apps/k8s/containerd KillMode=processDelegate=yesOOMScoreAdjust=-999LimitNOFILE=1024000 # decision capacity The number of files opened in the device can be set here to set LimitNPROC=1024000LimitCORE=infinityTasksMax=infinityTimeoutStartSec=0Restart=alwaysRestartSec= 5s [install] WantedBy=multi-user.target to start containerdsystemctl start containerdk8s.service settings to boot systemctl enable containerdk8s.service to verify whether the containerd deployment is normal crictl ps-acrictl imagescrictl pull busybox: 1.25.0 [root @ ingress-01 tmp] # crictl pull busybox:1.25.0crictl pull busybox:1.25.0Image is up to date for busybox@sha256:a59906e33509d14c036c8678d687bd4eec81ed7c4b8ce907b888c607f6a1e0e6# successfully pulled the container kubelet configuration file to support containerdvim / apps/ Kubernetes/conf/kubelet- -KUBELET_OPTS= "- bootstrap-kubeconfig=/apps/kubernetes/conf/bootstrap.kubeconfig\-- fail-swap-on=false\-- network-plugin=cni-- cni-conf-dir=/etc/cni/net.d-- cni-bin-dir=/apps/cni/bin\-- kubeconfig=/apps/kubernetes/conf/kubelet.kubeconfig\-- address=192.168.30 .36\-node-ip=192.168.30.36\-hostname-override=ingress-01\-cluster-dns=10.64.0.2\-cluster-domain=cluster.local\-authorization-mode=Webhook\-authentication-token-webhook=true\-client-ca-file=/apps/kubernetes/ssl/ K8s/k8s-ca.pem\-rotate-certificates=true\-cgroup-driver=cgroupfs\-allow-privileged=true\-healthz-port=10248\-healthz-bind-address=192.168.30.36\-cert-dir=/apps/kubernetes/ssl\-feature-gates=RotateKubeletClientCertificate=true RotateKubeletServerCertificate=true\-node-labels=node-role.kubernetes.io/k8s-ingress=true\-serialize-image-pulls=false\-enforce-node-allocatable=pods,kube-reserved System-reserved\-pod-manifest-path=/apps/work/kubernetes/manifests\-runtime-cgroups=/systemd/system.slice/kubelet.service\-kube-reserved-cgroup=/systemd/system.slice/kubelet.service\-system-reserved-cgroup=/systemd/system.slice\-root-dir=/apps/work/kubernetes/kubelet\ -- log-dir=/apps/kubernetes/log\-- alsologtostderr=true\-- logtostderr=false\-anonymous-auth=true\-- container-log-max-files=10\-- container-log-max-size=100Mi\-- container-runtime=remote\-- container-runtime-endpoint=unix:///run/k8s/ Containerd/containerd.sock\-containerd=unix:///run/k8s/containerd/containerd.sock\-runtime-request-timeout=15m\-image-gc-high-threshold=70\-image-gc-low-threshold=50\-kube-reserved=cpu=500m Memory=512Mi,ephemeral-storage=1Gi\-system-reserved=cpu=1000m,memory=1024Mi,ephemeral-storage=1Gi\-eviction-hard=memory.available

Tags: File container configuration directory preparation version success binary run authentication regret operating system character string manual traffic environment system network Xin an Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Huawei Linux Microsoft MySQL MariaDB