草庐IT

Kubeadm初始化报错:[ERROR CRI]: container runtime is not running:

问题:[root@master:~]kubeadminit--image-repositoryregistry.aliyuncs.com/google_containers--pod-network-cidr=10.244.0.0/16-[init]UsingKubernetesversion:v1.24.1[preflight]Runningpre-flightcheckserrorexecutionphasepreflight:[preflight]Somefatalerrorsoccurred:    [ERRORCRI]:containerruntimeisnotrunning:out

云原生|kubernetes|使用cri-docker部署基于kubeadm-1.25.4的集群

前言:kubernetes的部署从1.24版本开始后,弃用docker-shim,也就是说部署1.24版本后的集群不能使用docker-ce了。比较清晰的解决方案有两个,一是使用containerd,这个是一个新的支持cri标准的shim,一个是使用cri-docker这样的中间插件形式,一头通过CRI跟kubelet交互,另一头跟dockerapi交互,从而间接的实现了kubernetes以docker作为容器运行时。但是这种架构缺点也很明显,调用链更长,效率更低。那么,cri-docker虽然有效率低下的缺点,但很明显这个更加符合原来的docker使用习惯。说人话就是部署简单,学习成本不会

2. Kubernetes 1.24 安装( cri 使用 containerd 或 cri-docker )

基于Ubuntu22.04除非特别标注,其余步骤master和worker节点都需要操作准备工作修改Ubuntu镜像https://developer.aliyun.com/mirror/ubuntu?spm=a2c6h.13651102.0.0.2e611b11BvTeZL备份默认/etc/apt/sources.list修改/etc/apt/sources.list修改后更新sudoaptupdate&&sudoaptupgrade主机名解析主机名成解析编辑三台服务器的/etc/hosts文件,添加下面内容根据自己情况配置,这里我有一台master节点对应192.168.90.100,no

使用 CRI-O 容器引擎

本文参考自:UsingtheCRI-OContainerEngineCRI-O是一个开源的、社区驱动的容器引擎。其主要目标是取代Docker服务作为Kubernetes实施的容器引擎。随着 Kubernetesv1.24对dockershim的弃用,CRI-O将成为Kubernetes容器引擎的不二之选。CRI-O容器引擎为运行与开放容器标准 (OCI)兼容的运行时提供了一个稳定、更安全和高性能的平台。使用CRI-O容器引擎可以借助使用符合OCI的运行时(如runc、默认OCI运行时或KataContainers)来启动容器和Pod。CRI-O的稳定性来自于它是与Kubernetes的主要和次

使用 CRI-O 容器引擎

本文参考自:UsingtheCRI-OContainerEngineCRI-O是一个开源的、社区驱动的容器引擎。其主要目标是取代Docker服务作为Kubernetes实施的容器引擎。随着 Kubernetesv1.24对dockershim的弃用,CRI-O将成为Kubernetes容器引擎的不二之选。CRI-O容器引擎为运行与开放容器标准 (OCI)兼容的运行时提供了一个稳定、更安全和高性能的平台。使用CRI-O容器引擎可以借助使用符合OCI的运行时(如runc、默认OCI运行时或KataContainers)来启动容器和Pod。CRI-O的稳定性来自于它是与Kubernetes的主要和次

配置cri-docker使kubernetes1.24以docker作为运行时

镜像下载、域名解析、时间同步请点击阿里云开源镜像站从kubernetes1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为kubernetes的容器运行时了,即从kubernetesv1.24开始不再使用docker了。但是如果想继续使用docker的话,可以在kubelet和docker之间加上一个中间层cri-docker。cri-docker是一个支持CRI标准的shim(垫片)。一头通过CRI跟kubelet交互,另一头跟dockerapi交互,从而间接的实现

配置cri-docker使kubernetes1.24以docker作为运行时

镜像下载、域名解析、时间同步请点击阿里云开源镜像站从kubernetes1.24开始,dockershim已经从kubelet中移除,但因为历史问题docker却不支持kubernetes主推的CRI(容器运行时接口)标准,所以docker不能再作为kubernetes的容器运行时了,即从kubernetesv1.24开始不再使用docker了。但是如果想继续使用docker的话,可以在kubelet和docker之间加上一个中间层cri-docker。cri-docker是一个支持CRI标准的shim(垫片)。一头通过CRI跟kubelet交互,另一头跟dockerapi交互,从而间接的实现

【K8S 八】使用containerd作为CRI

Kubernetes和Docker在容器云生态中霸主地位相争由来已久。其争斗的结果之一:自Kubernetes1.24以后,K8S就不再原生支持docker了,其表现如下:(看完下面的内容,肯定会感觉没有使用docker方便,但这是趋势,要慢慢适应)启动kubelet会报错我们都知道containerd来自于docker,后被docker捐献给了云原生计算基金会(CloudNativeComputingFoundation,CNCF)。在RHEL上通过YUM部署containerd的过程中,表现为需要加载docker-ce.repo镜像源。通过在线方式安装的containerd的配置文件只有一

【K8S 八】使用containerd作为CRI

Kubernetes和Docker在容器云生态中霸主地位相争由来已久。其争斗的结果之一:自Kubernetes1.24以后,K8S就不再原生支持docker了,其表现如下:(看完下面的内容,肯定会感觉没有使用docker方便,但这是趋势,要慢慢适应)启动kubelet会报错我们都知道containerd来自于docker,后被docker捐献给了云原生计算基金会(CloudNativeComputingFoundation,CNCF)。在RHEL上通过YUM部署containerd的过程中,表现为需要加载docker-ce.repo镜像源。通过在线方式安装的containerd的配置文件只有一

如何在 Ubuntu 22.04 上安装 CRI-O 容器运行时

CRI-O是Kubernetes的开源轻量级容器运行时。它是使用 开放容器组织OpenContainerInitiative(OCI)兼容运行时的Kubernetes 容器运行时接口ContainerRuntimeInterface(CRI)的实现。在运行Kubernetes时,它是Docker的完美替代品。在本指南中,我们将逐步演示如何在Ubuntu22.04LTS上安装CRI-O。先决条件在开始之前,这是你需要的:具有SSH访问权限的Ubuntu22.04实例在实例上配置的sudo用户快速稳定的互联网连接有了这个,让我们开始吧。步骤1:更新系统并安装依赖立即登录你的服务器实例,并按如下方式