k8s——集群环境问题合集
创建集群
集群环境问题合集
重置master节点
kubeadm reset -f
# -f 强制重置 可选
重置node节点
# 当你的master节点重置后,node节点需要重新加入集群
kubeadm reset -f
# -f 强制重置 可选
# 同时需要删除 `rm -rf /var/lib/kubelet`
# `rm -rf /etc/cni` 两个文件
初始化的时候不指定node的cidr
- 初始化的时候不指定node的cidr报错
[root@master wangluo]# kubectl describe -n kube-flannel pod kube-flannel-ds-l64tb
# 发现事件
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 90s default-scheduler Successfully assigned kube-flannel/kube-flannel-ds-l64tb to node
******省略******
Normal Started 43s (x4 over 87s) kubelet Started container kube-flannel
Warning BackOff 5s (x7 over 84s) kubelet Back-off restarting failed container kube-flannel in pod kube-flannel-ds-l64tb_kube-flannel(6c977410-3384-4379-acda-363a569f194e)
# 报错,查看日志
[root@master wangluo]# kubectl logs -n kube-flannel kube-flannel-ds-l64tb
****省略******
de" pod cidr not assigned
I0601 03:27:19.632977 1 main.go:432] Stopping shutdownHandler...
[root@master wangluo]# kubectl logs -n kube-flannel kube-flannel-ds-l64tb |grep -i error
Defaulted container "kube-flannel" out of: kube-flannel, install-cni-plugin (init), install-cni (init)
E0601 03:27:19.632749 1 main.go:343] Error registering network: failed to acquire lease: node "node" pod cidr not assigned
#解决方案 重新初始化
# 如果重新初始化之后,node节点notready
# 重启docker 和containerd
[root@master wangluo]# kubectl get no
NAME STATUS ROLES AGE VERSION
master Ready control-plane 19m v1.28.10
node NotReady <none> 18m v1.28.10
# 在node节点上重启两个服务
[root@node ~]# systemctl restart docker
[root@node ~]# systemctl restart containerd
集群网络问题
# 从网上拉取的flannel.yaml中net-config.json的cidr是10.244.0.0/16,但是集群中cidr是10.88.0.0/24,所以会报错
[root@master wangluo]# kubectl get po -n kube-flannel
NAME READY STATUS RESTARTS AGE
kube-flannel-ds-frnjq 0/1 CrashLoopBackOff 3 (48s ago) 94s
kube-flannel-ds-lh7nt 0/1 CrashLoopBackOff 3 (44s ago) 94s
# CrashLoopBackOff 这个状态表示
# 表示Pod中的容器因为某种原因而退出(crash)
# 并且kubelet正在尝试重新启动该容器。
# 但是,由于某种原因(如配置错误、应用程序错误、资源限制等)
# 容器在启动后立即再次崩溃。
# kubelet会按照其重启策略(默认为Always)
# 继续尝试重新启动容器,
# 但每次尝试都以失败告终,
# 形成了一个循环。
# /etc/cni/net.d/10-flannel.conflist
# 是flannel的配置文件
解决思路
如果pod的状态是CrashLoopBackOff,则需要检查pod中的容器是否因为某种原因而崩溃。
- 看日志
- 看事件
k8s——集群环境问题合集的更多相关文章
- Redis cluster 集群命令合集
目录 一.常用命令 二.操作命令 三.redis-trib.rb脚本 一.常用命令 打印集群的信息 CLUSTER INFO 列出集群当前已知的所有节点(node),以及这些节点的相关信息. CLUS ...
- k8s集群部署rabbitmq集群
1.构建rabbitmq镜像 RabbitMQ提供了一个Autocluster插件,可以自动创建RabbitMQ集群.下面我们将基于RabbitMQ的官方docker镜像,添加这个autocluste ...
- Couchbase集群和Redis集群解析
Couchbase集群和Redis集群解析 首先,关于一些数据库或者是缓存的集群有两种结构,一种是Cluster;一种是master-salve. 关于缓存系统一般使用的就是Redis,Redis是开 ...
- Kubernetes集群之清除集群
清除K8s集群的Etcd集群 操作服务器为:192.168.1.175/192.168.1.176/192.168.1.177,即etcd集群的三台服务器.以下以192.168.1.175为例子. 暂 ...
- MongoDB之分片集群与复制集
分片集群 1.1.概念 分片集群是将数据存储在多台机器上的操作,主要由查询路由mongos.分片.配置服务器组成. ●查询路由根据配置服务器上的元数据将请求分发到相应的分片上,本身不存储集群的元数据, ...
- 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
- Redis集群(五):集群搭建
一.本文目的 演示在一台机器上搭建3主3从的redis集群,通过演示了解redis集群的搭建,使用和注意事项 二.搭建说明 1.同一台机器搭建3主3从的伪集群 ...
- rabbitMQ集群部署以及集群之间同步
MQ集群部署 期待的部署架构 其中,一个机房有两台机器部署MQ,并组成集群,有一个机房的MQ集群作为中心集群,其他机房的MQ集群将消息同步到中心MQ集群中. 安装erlang,略.. 安装rabbit ...
- 搭建mongodb集群(副本集+分片)
搭建mongodb集群(副本集+分片) 转载自:http://blog.csdn.net/bluejoe2000/article/details/41323051 完整的搭建mongodb集群(副本集 ...
- 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...
随机推荐
- 百度unit闲聊机器人
import json import random import requests # client_id 为官网获取的AK, client_secret 为官网获取的SK client_id = & ...
- Qt 从 QTransform 逆向解出 Translate/Scale/Rotate(平移/缩放/旋转)分析
QTransform 用于图形绘制,它定义了如何平移(translate).缩放(scale).切变(shear).旋转(rotate)或投射(project)坐标系.注意:QTransform 是作 ...
- 第二課:Mirth培養興趣之旅 ——由定時刷庫接口編程講起
1.准备工作 1.1 本机安装vs2019:(https://visualstudio.microsoft.com/zh-hans/) 1.2 本机安装win64的MariaDB 10.3.27版本数 ...
- 力扣564(java)-寻找最近的回文数(困难)
题目: 给定一个表示整数的字符串 n ,返回与它最近的回文整数(不包括自身).如果不止一个,返回较小的那个. "最近的"定义为两个整数差的绝对值最小. 示例 1: 输入: n = ...
- Serverless 场景排查问题利器 : 函数实例命令行操作
简介:实例命令行功能的推出希望能消除用户使用 Serverless 的"最后一公里",直接将真实的函数运行环境展现给用户. 背景介绍 全托管的 Serverless 计算平台能给 ...
- 5分钟搞定Loki告警多渠道接入
简介: Loki是受Prometheus启发的水平可扩展.高可用.多租户日志聚合系统.用户既可以将Loki告警直接接入SLS开放告警,也可以先将Loki接入Grafana或Alert Manager ...
- [TP5] ThinkPHP 默认模块和单模块的设置方式
由于默认是采用多模块的支持,所以多个模块的情况下必须在URL地址中标识当前模块, 如果只有一个模块的话,可以进行模块绑定,方法是应用的入口文件中添加如下代码: // 绑定当前访问到index模块 de ...
- 通过 KoP 将 Kafka 应用迁移到 Pulsar
通过 KoP 将 Kafka 应用迁移到 Pulsar 版权声明:原文出自 https://github.com/streamnative/kop ,由 Redisant 进行整理和翻译 目录 通过 ...
- jqGrid--动态列
前台部门 <select id="xuenian" name="xuenian" class="form-control">&l ...
- 全网最详细SpringCloud-高级篇
SpringCloud-高级篇 高级篇包含微服务保护(流量控制,系统保护,熔断降级,服务授权).分布式事务.多级缓存.Redis集群.可靠消息服务 学习安排 技术分类 1.微服务保护 ①初识Senti ...