创建集群

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. 百度unit闲聊机器人

    import json import random import requests # client_id 为官网获取的AK, client_secret 为官网获取的SK client_id = & ...

  2. Qt 从 QTransform 逆向解出 Translate/Scale/Rotate(平移/缩放/旋转)分析

    QTransform 用于图形绘制,它定义了如何平移(translate).缩放(scale).切变(shear).旋转(rotate)或投射(project)坐标系.注意:QTransform 是作 ...

  3. 第二課:Mirth培養興趣之旅 ——由定時刷庫接口編程講起

    1.准备工作 1.1 本机安装vs2019:(https://visualstudio.microsoft.com/zh-hans/) 1.2 本机安装win64的MariaDB 10.3.27版本数 ...

  4. 力扣564(java)-寻找最近的回文数(困难)

    题目: 给定一个表示整数的字符串 n ,返回与它最近的回文整数(不包括自身).如果不止一个,返回较小的那个. "最近的"定义为两个整数差的绝对值最小. 示例 1: 输入: n = ...

  5. Serverless 场景排查问题利器 : 函数实例命令行操作

    ​简介:实例命令行功能的推出希望能消除用户使用 Serverless 的"最后一公里",直接将真实的函数运行环境展现给用户. 背景介绍 全托管的 Serverless 计算平台能给 ...

  6. 5分钟搞定Loki告警多渠道接入

    ​简介: Loki是受Prometheus启发的水平可扩展.高可用.多租户日志聚合系统.用户既可以将Loki告警直接接入SLS开放告警,也可以先将Loki接入Grafana或Alert Manager ...

  7. [TP5] ThinkPHP 默认模块和单模块的设置方式

    由于默认是采用多模块的支持,所以多个模块的情况下必须在URL地址中标识当前模块, 如果只有一个模块的话,可以进行模块绑定,方法是应用的入口文件中添加如下代码: // 绑定当前访问到index模块 de ...

  8. 通过 KoP 将 Kafka 应用迁移到 Pulsar

    通过 KoP 将 Kafka 应用迁移到 Pulsar 版权声明:原文出自 https://github.com/streamnative/kop ,由 Redisant 进行整理和翻译 目录 通过 ...

  9. jqGrid--动态列

    前台部门 <select id="xuenian" name="xuenian" class="form-control">&l ...

  10. 全网最详细SpringCloud-高级篇

    SpringCloud-高级篇 高级篇包含微服务保护(流量控制,系统保护,熔断降级,服务授权).分布式事务.多级缓存.Redis集群.可靠消息服务 学习安排 技术分类 1.微服务保护 ①初识Senti ...