网站关键词用热门的还是冷门,网站一键建设,哪些网站是做外贸生意的,wordpress 外部页面关于CRI-O
Kubernetes最初使用Docker作为默认的容器运行时。然而#xff0c;随着Kubernetes的发展和OCI标准的确立#xff0c;社区开始寻找更专门化的解决方案#xff0c;以减少复杂性和提高性能。CRI-O的主要目标是提供一个轻量级的容器运行时#xff0c;它可以直接运行O…关于CRI-O
Kubernetes最初使用Docker作为默认的容器运行时。然而随着Kubernetes的发展和OCI标准的确立社区开始寻找更专门化的解决方案以减少复杂性和提高性能。CRI-O的主要目标是提供一个轻量级的容器运行时它可以直接运行OCI容器镜像并与Kubernetes无缝集成。
1. 主要特性
轻量级相比于其他容器运行时CRI-O的代码库更小依赖更少从而减小了安全风险和维护成本。符合OCI标准CRI-O完全支持OCI标准这意味着它可以运行任何符合OCI规范的容器镜像。Kubernetes集成CRI-O专为Kubernetes设计并与Kubernetes的CRIContainer Runtime Interface完全兼容确保了与Kubernetes的无缝集成。可扩展性通过插件架构CRI-O可以灵活地扩展其功能以适应不同的需求。
2. 架构
KubeletKubernetes的Kubelet组件通过CRI与CRI-O通信。CRI-O守护进程CRI-O守护进程负责处理来自Kubelet的请求并管理容器的生命周期。OCI运行时CRI-O使用底层的OCI运行时如runc来创建和管理容器。
3. 主要组件
CRI-O守护进程这是CRI-O的核心它负责处理CRI请求并调用底层的OCI运行时。OCI运行时例如runc它是一个遵循OCI标准的低级别容器运行时负责容器的实际创建和管理。存储插件CRI-O支持多种存储驱动用于管理容器的文件系统层。网络插件通过CNIContainer Network Interface插件CRI-O可以与各种网络方案集成。
安装前准备
同《kubernetes集群部署环境准备及master节点部署二》
安装CRI-O
1、配置第三方镜像源
cat EOF | tee /etc/yum.repos.d/cri-o.repo
[cri-o]
nameCRI-O
baseurlhttps://pkgs.k8s.io/addons:/cri-o:/prerelease:/main/rpm/
enabled1
gpgcheck1
gpgkeyhttps://pkgs.k8s.io/addons:/cri-o:/prerelease:/main/rpm/repodata/repomd.xml.key
EOF
2、安装CRI-O
yum -y install cri-o
3、配置开机启动
systemctl enable crio
4、配置CRI-O配置私有仓库和pause_image
vi /etc/crio/crio.conf.d/10-crio.conf [crio.image]
insecure_registries [192.168.XX.XX
]pause_image192.168.XX.XX/kubeadm/pause:3.9
signature_policy /etc/crio/policy.json
5、启动CRI-O
systemctl start crio
安装kubeadm、kubelet、kubectl
同《kubernetes集群部署环境准备及master节点部署二》
Node加入集群
按照《kubernetes集群部署环境准备及master节点部署二》中“初始化kubernetes master节点”-“3、初始化master节点”中提示加入即可
kubeadm join 192.168.XX.190:6443 --token abcdef.0123456789abcdef \--discovery-token-ca-cert-hash sha256:cd24961c8aafeff6a2fcc8cbadf2525cafec0ecb1b8afea866a23409ebeefcba
但是如果需要进行定制化配置则需要通过初始化文件启动Node并加入集群。
1、自定义Node初始化文件如下红色字体分别配置master地址、criSocket和node名称。 ~]# cat kubeadm-join.default.yaml apiVersion: kubeadm.k8s.io/v1beta3 caCertPath: /etc/kubernetes/pki/ca.crt discovery: bootstrapToken: apiServerEndpoint: k8s130-node190:6443 token: abcdef.0123456789abcdef unsafeSkipCAVerification: true timeout: 5m0s tlsBootstrapToken: abcdef.0123456789abcdef kind: JoinConfiguration nodeRegistration: criSocket: unix:///var/run/crio/crio.sock imagePullPolicy: IfNotPresent name: k8s130-node191 taints: null 2、初始化并加入集群
~]# kubeadm join --config kubeadm-join.default.yaml |tee kubeadm-join.log
打印如下内容说明加入集群成功 安装之后处理
1、验证执行kubectl get node命令node状态显示Ready。 kubectl get node NAME STATUS ROLES AGE VERSION k8s130-node190 Ready control-plane 7h57m v1.30.2 k8s130-node191 Ready none 7h53m v1.30.2 2、执行如下命令成功创建kube-proxy和calico-node等Pod状态为Running。 kubectl get po -o wide -n kube-system|grep node191 下一篇《kubernetes集群部署node节点部署和cri-docker运行时安装四》