k8s集群关机后,如何解决 kubernetes 重启起不来的问题

前景介绍

使用本地vmware搭建集群后,直接把vmware关机,然后再次启动后提示集群异常,所有容器状态为exited,并报错

The connection to the server 192.168.137.11:6443 was refused – did you specify the right host or port?

处理步骤

第一反应Kubernetes API server没有启动。

因为我的Kubernetes集群是通过kubeadm 安装的,所以API server也是通过Pod来运行的,只有kubelet 是通过systemd运行的。

运行 systemctl status kubelet 查看,结果是正常的

再运行journalctl -xefu kubelet 查看systemd日志发现真正的错误原因是:

运行cat /proc/swaps 检查果然Swap没有被关闭。

k8s集群关机后,如何解决 kubernetes 重启起不来的问题检查我之前的安装脚本发现,我之前修改/etc/fstab永久关闭Swap的命令有错。

正确的禁用Swap命令如下:

# 关闭Swap,机器重启后不生效
swapoff -a

# 修改/etc/fstab永久关闭Swap
cp -p /etc/fstab /etc/fstab.bak$(date '+%Y%m%d%H%M%S')
# Redhat
sed -i "s//dev/mapper/rhel-swap/#/dev/mapper/rhel-swap/g" /etc/fstab
# CentOS
sed -i "s//dev/mapper/centos-swap/#/dev/mapper/centos-swap/g" /etc/fstab
# 修改后重新挂载全部挂载点
mount -a

# 查看Swap
free -m
cat /proc/swaps

在Kubernetes集群master和nodes上禁用Swap后,运行下面命令重启Kubelet:

systemctl daemon-reload
systemctl restart kubelet

原创文章,作者:AIRF,如若转载,请注明出处:http://www.ai-rf.com/index.php/2023/09/17/k8s%e9%9b%86%e7%be%a4%e5%85%b3%e6%9c%ba%e5%90%8e%ef%bc%8c%e5%a6%82%e4%bd%95%e8%a7%a3%e5%86%b3-kubernetes-%e9%87%8d%e5%90%af%e8%b5%b7%e4%b8%8d%e6%9d%a5%e7%9a%84%e9%97%ae%e9%a2%98/

(0)
AIRFAIRF
上一篇 2023年9月17日
下一篇 2023年9月19日

相关推荐

  • 虚拟化 vs 裸金属:K8s 部署环境优劣势对比与适用场景分析

    引言 Kubernetes (K8s) 是一种流行的容器编排平台,可在云计算环境中部署和管理应用程序。企业在选择 K8s 部署环境时,通常面临一个核心问题:虚拟化环境还是裸金属环境…

    2023年9月19日
  • 【四】K8S_Deployment

    Deployment作用 Kubernetes(K8S)中的 Deployment 是用于定义和管理应用程序部署的重要资源对象。Deployment 在 K8S 中具有以下用途和相…

    2023年9月17日
  • 【精选】kubectl 常用命令指南

    kubectl 常用命令指南 Kubctl 命令是操作 kubernetes 集群的最直接的方式,特别是运维人员,需要对这些命令有一个详细的掌握 Kubectl 自动补全 # se…

    ChatGPT 2023年12月26日
  • Kubernetets-Cka考试题库

    本次测试的所有问题都必须在指定的cluster配置环境中完成。为尽量减少切换,系统已对问题进行分组,同一cluster内的所有问题将连续显示。 开启TAB补全 做题前先配置k8s自…

    ChatGPT 2022年2月18日
  • 【五】K8S_Service | ClusterIP模式(默认模式)| NodePort模式

    Service概念 在Kubernetes(K8S)中,Service的用途和相关概念如下: 服务发现:Service充当了一组Pod的稳定网络地址和DNS名称的抽象。它提供了一种…

    2023年9月17日
  • 【一】K8s的组件及概念

    K8s的组件 master: 集群的控制平面,负责集群的决策 ApiServer:资源操作的唯一入口,接收用户输入的命令,提供认证、授权、API注册和发现等机制 Scheduler…

    2023年9月17日
  • 【七】K8S_存储卷

    存储卷介绍 在Kubernetes(K8S)中,存储卷(Storage Volume)是一种持久化的存储机制,用于在Pod中保存数据,并提供了一种抽象层来将底层存储技术(如本地磁盘…

    2023年9月17日
  • 通过Docker创建CentOS系统容器的步骤

    前言 先安装Docker,使用文内的脚本可以快速创建CentOS 7.8虚拟系统集群,并通过SSH(Secure Shell)远程工具连接。 创建桥接网络,方便容器间通信 指令格式…

    ChatGPT 2022年12月4日
  • CentOS 使用 Kubeadm 方式搭建 K8s 集群,一次性成功!

    Kubeadm 方式搭建 K8s 集群 1.27.0 版本,一次性成功,具体步骤如下: 集群规划及架构 系统初始化准备(所有节点同步操作) 安装并配置cri-dockerd插件 安…

    2023年11月20日
  • docker迁移备份容器到其他机器

    1 把当前的容器提交为一个镜像: docker ps -a  查看运行的容器ID docker commit 容器名 镜像名 2 将镜像存为tar文件 docker save 镜像…

    ChatGPT 2023年7月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注