创建集群

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中的容器是否因为某种原因而崩溃。

  1. 看日志
  2. 看事件

k8s——集群环境问题合集的更多相关文章

  1. Redis cluster 集群命令合集

    目录 一.常用命令 二.操作命令 三.redis-trib.rb脚本 一.常用命令 打印集群的信息 CLUSTER INFO 列出集群当前已知的所有节点(node),以及这些节点的相关信息. CLUS ...

  2. k8s集群部署rabbitmq集群

    1.构建rabbitmq镜像 RabbitMQ提供了一个Autocluster插件,可以自动创建RabbitMQ集群.下面我们将基于RabbitMQ的官方docker镜像,添加这个autocluste ...

  3. Couchbase集群和Redis集群解析

    Couchbase集群和Redis集群解析 首先,关于一些数据库或者是缓存的集群有两种结构,一种是Cluster;一种是master-salve. 关于缓存系统一般使用的就是Redis,Redis是开 ...

  4. Kubernetes集群之清除集群

    清除K8s集群的Etcd集群 操作服务器为:192.168.1.175/192.168.1.176/192.168.1.177,即etcd集群的三台服务器.以下以192.168.1.175为例子. 暂 ...

  5. MongoDB之分片集群与复制集

    分片集群 1.1.概念 分片集群是将数据存储在多台机器上的操作,主要由查询路由mongos.分片.配置服务器组成. ●查询路由根据配置服务器上的元数据将请求分发到相应的分片上,本身不存储集群的元数据, ...

  6. 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  7. Redis集群(五):集群搭建

    一.本文目的        演示在一台机器上搭建3主3从的redis集群,通过演示了解redis集群的搭建,使用和注意事项     二.搭建说明        1.同一台机器搭建3主3从的伪集群   ...

  8. rabbitMQ集群部署以及集群之间同步

    MQ集群部署 期待的部署架构 其中,一个机房有两台机器部署MQ,并组成集群,有一个机房的MQ集群作为中心集群,其他机房的MQ集群将消息同步到中心MQ集群中. 安装erlang,略.. 安装rabbit ...

  9. 搭建mongodb集群(副本集+分片)

    搭建mongodb集群(副本集+分片) 转载自:http://blog.csdn.net/bluejoe2000/article/details/41323051 完整的搭建mongodb集群(副本集 ...

  10. 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

随机推荐

  1. ActiveMQ c# 系列——进阶实例(三)

    前言 前面介绍了基本的消费者和生产者,那么看下他们之间有什么其他的api. 正文 消费者设置等待时间 生产者生产了5条消息 改一下消费者. static void Main(string[] args ...

  2. 【转】Java程序员常用工具类库 - 目录

    原文地址:http://rensanning.iteye.com/blog/1553076 有人说当你开始学习Java的时候,你就走上了一条不归路,在Java世界里,包罗万象,从J2SE,J2ME,J ...

  3. opensips使用drouting进行路由

    操作系统 :CentOS 7.6_x64 opensips版本:2.4.9 drouting是Dynamic Routing(动态路由)的缩写,该模块可为特定呼叫选择(基于多个条件)最佳网关.今天整理 ...

  4. 什么是好的错误消息? 讨论一下Java系统中的错误码设计

    简介:一个好的Error Message主要包含三个部分:Context: 什么导致了错误?发生错误的时候代码想做什么?The error itself: 到底是什么导致了失败?具体的原因和当时的数据 ...

  5. e签宝:借助钉钉宜搭变革传统项目管理模式,交付效率显著提升

    ​简介:通过钉钉宜搭,e签宝在半个月内搭建了项目交付管理平台,提升了项目管理的效率和质量,推进了团队核心业务的信息化建设.e签宝在有效梳理了各环节的工作进度.质量.成本.职权后,通过宜搭平台保障了内外 ...

  6. 编译优化 | LLVM代码生成技术详解及在数据库中的应用

    简介: 作者:长别 1. 前言 随着IT基础设施的发展,现代的数据处理系统需要处理更多的数据.支持更为复杂的算法.数据量的增长和算法的复杂化,为数据分析系统带来了严峻的性能挑战.近年来,我们可以在数据 ...

  7. [Roblox] 从障碍跑入门构建基础平台游戏_罗布乐思

      对于障碍跑来说,底板部分是可以不需要的 这样掉下障碍物就结束游戏,Baseplate 可以在右侧资源管理器 选中后Delete. SpawnLocation 标记玩家在游戏开始时或重新开始后在世界 ...

  8. WPF 对接 Vortice 绘制 WIC 图片

    本文告诉大家如何通过 Vortice 在 Direct2D 里面绘制图片,图片的来源是 WIC 加载出的图片 在上一篇博客 WPF 对接 Vortice 调用 WIC 加载图片 告诉了大家如何对接 V ...

  9. 在 VisualStudio 给文件起一个带分号的文件名会怎样

    小伙伴都知道在 Windows 下是支持文件名使用分号的,而写过 Roslyn 的小伙伴都知道,在 csproj 项目里面使用分号分割数组.那么在 VS 里面将一个文件名添加分号会如何?下面让咱写写看 ...

  10. 2018-12-26-WPF-开启-ScrollViewer-的触摸滚动

    title author date CreateTime categories WPF 开启 ScrollViewer 的触摸滚动 lindexi 2018-12-26 14:24:26 +0800 ...