首页 > 其他分享 >Kubernetes-高可用集群证书更新

Kubernetes-高可用集群证书更新

时间:2024-09-20 16:24:06浏览次数:7  
标签:kubernetes Kubernetes 证书 apiserver etc manager 集群 kube

本次k8s版本为v1.23.17

Kubernetes 集群中的证书主要分为两大类:

  • Kubernetes 组件证书(如:apiserver 相关的证书)
  • Etcd 集群证书

根据集群角色,证书还可以细分为:

  • 管理节点证书
  • 工作节点证书

证书详情

  1. 管理节点证书
    • Kubeadm 部署:证书会由 Kubeadm 自动生成,覆盖 Kubernetes 组件(如:apiservercontroller-managerscheduler 等)。
    • 二进制部署:通常使用 cfsslopenssl 手动生成证书,涉及更多的定制化配置。
  2. 工作节点证书
    • 工作节点主要需要连接 apiserver,使用的是客户端证书。
    • 该证书由 kube-controller-manager 组件自动颁发和管理,确保 kubelet 能安全地与 apiserver 通信。

常见证书

- **Kubeadm 部署**:证书会由 Kubeadm 自动生成,覆盖 Kubernetes 组件(如:`apiserver`、`controller-manager`、`scheduler` 等)。
- **二进制部署**:通常使用 `cfssl` 或 `openssl` 手动生成证书,涉及更多的定制化配置。
  1. 工作节点证书
    • 工作节点主要需要连接 apiserver,使用的是客户端证书。
    • 该证书由 kube-controller-manager 组件自动颁发和管理,确保 kubelet 能安全地与 apiserver 通信。

证书有效期及更新

Kubernetes 证书默认有效期为 1 年,可以通过 kubeadm certs 工具检查和更新证书:

查看证书过期时间

kubeadm certs check-expiration

该命令显示了 所有证书的到期/剩余时间,包括在etc/kubernetes/pki目录下的客户端证书及由kubeadm嵌入到KUBECONFIG文件中的客户端证书(admin.conf,controller-manager.conf和scheduler.conf)

手动更新证书

使用 kubeadm certs renew 命令 可以随时手动续订证书,该命令使用存储在/etc/kubernetes/pki中的 CA (or front-proxy-CA)证书和密钥来更新证书

证书备份

注意:高可用集群需要在所有master节点上操作

cp -r /etc/kubernetes /etc/kubernetes.bak

续订所有证书

命令执行后,注意:

  • 无论证书的到期时间如何,都会无条件地续订一年。
  • 证书的SAN等信息基于原证书,无需再次提供。
  • renew执行后,为使更改生效,需要重启各组件。

注意:高可用集群需要在所有master节点上操作

kubeadm certs renew all

查看证书有效期

[root@master01 ~]# kubeadm certs check-expiration

重启 kube-apiserver、kube-controller-manager、kube-scheduler、etcd 组件后生效

[root@master01 ~]# mv /etc/kubernetes/manifests/* /tmp/
//约等30秒后 kube-apiserver、kube-controller-manager、kube-scheduler、etcd 容器会停止,然后,再将清单文件移过来:
[root@master01 ~]# mv /tmp/kube-* /etc/kubernetes/manifests/
[root@master01 ~]# mv /tmp/etcd.yaml /etc/kubernetes/manifests/

可以看到已经重启成功

修改config文件

cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

标签:kubernetes,Kubernetes,证书,apiserver,etc,manager,集群,kube
From: https://www.cnblogs.com/Unstoppable9527/p/18422731

相关文章

  • D23 kubernetes 工作负载资源对象-DaemonSet{简介}
    1、DaemonSet简介DaemonSet资源用于在集群中的每个节点上运行一个pod副本,具有以下特点-在每个节点上运行一个pod-当向集群中加入一个新节点或者从集群中移除一个节点时,DaemonSet会自动在新节点上启动一个pod或在移除的节点上删除pod-可以使用节点选择器或亲和性来定义pod......
  • Kubernetes-POD生成 java dump文件
    目录背景配置钩子函数验证背景在今天的线上业务中,某服务频繁重启。经过排查日志和事件信息,确认是由于OOM(OutofMemory)导致服务重启。为了方便研发团队定位OOM的具体原因,我们决定在OOM发生时自动生成内存快照(heapdump),供后续分析使用。关于OOM的详细介绍,可以参考这篇博......
  • 基于RK3588,AI边缘模块,单片6TOPS,可集群堆叠,Mixtile Blade 3
    MixtileBlade3 是一款经济实惠、节能的SBC,围绕下一代8纳米瑞芯微RK3588处理器构建。它非常适合快速开发、AI应用程序原型设计和边缘计算,允许您集群多个MixtileBlade3SBC以扩展您的部署。硬件布局正反面开箱即用的MixtileBlade3是一款可堆叠计算机,带有板载......
  • Kubernetes-etcd集群证书更新
    目录问题现象排错思路查看kubelet状态查看apiserver容器日志查看etcd状态查看证书到期时间etcd集群证书更新查看证书路径所有节点备份证书所有节点备份etcd数据生成etcd集群配置文件生成ca证书生成etcd证书查看新证书修改etcd启动配置文件所有节点同时启动etcd问题现象开发环境......
  • 认知神经科学分析指标——图论指标之全局集群系数
    图论指标在认知神经科学或脑科学的研究中,通常作为研究脑网络表现的描述性指标之一,而图论指标从全局性来分可以分为:节点指标和全局指标,而根据描述脑网络整合性表现又可分为:整合指标和分离指标。该随笔主要涉及图论指标中全局指标及整合指标的全局集群系数,英文全称为GlobalCluster......
  • kube-vip搭建k8s1.30.5高可用集群
    实验环境机器五台系统:ubuntu24.04cat/etc/hosts192.168.0.11jichao11k8s-master01192.168.0.12jichao12k8s-master02192.168.0.13jichao13k8s-master03192.168.0.14jichao14k8s-worker01192.168.0.15jichao15k8s-worker02192.168.0.200lb.kub......
  • 南大通用GBase 8s 集群网络交互信息概述(上)
    在当今数据驱动的商业环境中,数据库的性能和可靠性是企业成功的关键。GBase8s作为一款的国产数据库系统,其SSC集群架构通过优化网络交互,显著提升了性能和可用性。本文将分两部分聚焦于GBase8sSSC集群的网络交互信息概述和网络吞吐量计算。在GBase 8sSSC集群中,主节点向从节点只传......
  • 南大通用GBase 8s 集群网络交互信息概述(下)
    在上篇文章中,我们了解了GBase8sSSC集群的网络交互机制。本文将聚焦于网络吞吐量的计算,分析SSC集群在不同业务场景下的表现,并与HAC和RHAC集群进行对比。一、无业务场景下的网络吞吐量在无业务时,网络上只有每秒发送的心跳包和心跳包的ACK,则网络吞吐量极低,具体为(114+86)/(1024*1024......
  • K8S入门学习(四):集群编排工具之 Dashboard
    一、Dashboard简单介绍1.1、Dashboard它是什么Dashboard是K8s集群管理的一个基于web的用户界面---WebUI,它提供了一个直观的方式来管理和监控K8s集群。Dashboard提供了对集群资源、应用程序部署和状态的实时查看和操作,使得用户能够更高效地管理和监控其K8s集。Dashboa......
  • 南大通用GBase 8s HAC集群搭建部署指南(下)
    在上篇文章中,我们完成了GBase8sHAC集群搭建的初步配置。本文将重点介绍如何配置主节点和辅节点之间的互信关系,以及如何搭建并验证HAC集群的状态。1、配置互信互信是集群节点间通信的基础。我们可以通过配置.rhosts文件或使用REMOTE_SERVER_CFG参数两种方式来实现互信。根据企业的......