k8s证书有效期时间修改的方法详解

目录
  • 前提
  • 更改有效期
  • 集群中有应用运行的情况
    • 检查证书有效期
  • 总结

修改后的集群时间,10年的时间,够集群平稳运行一段时间了。

刚部署好k8s的master集群时,查看证书有效期,时间是1年。一年,说长不长,说短不短。查看目前在运行的应用,都已经运行2年多,这样,1年的有效期就会有问题。

前提

确保资源池的监控信息都正常,如果有应用正在运行,确保应用能正常被访问到,监控信息也能正常被监控到。

更改有效期

大致分两步。

1、  可以先把所有的kubelet的service文件都替换了,然后挨个重启kubelet

2、  controller-manager 一定要先重启备节点,再重启主节点

kubelet证书更新具体步骤(需要root权限)

集群中没有应用运行的情况

a.添加参数

调用下面的命令行修改 kube- controller-manager 组件配置  【所有kube master节点都要修改】

都只是修改完配置文件,systemctl daemon-reload,暂时不重启。

# sed -i '/v=2/i\  --experimental-cluster-signing-duration=87600h0m0s \\' /usr/lib/systemd/system/kube-controller-manager.service

# sed -i '/v=2/i\  --feature-gates=RotateKubeletServerCertificate=true \\' /usr/lib/systemd/system/kube-controller-manager.service

# systemctl daemon-reload

查看修改后的 kube-controller-manager.service文件

2.修改 kubelet 组件配置 【所有kube-master 和 kube-node节点都要修改】

# sed -i '/v=2/i\  --feature-gates=RotateKubeletServerCertificate=true \\' /usr/lib/systemd/system/kubelet.service

# sed -i '/v=2/i\  --feature-gates=RotateKubeletClientCertificate=true \\' /usr/lib/systemd/system/kubelet.service

# sed -i '/v=2/i\  --rotate-certificates \\' /usr/lib/systemd/system/kubelet.service

# systemctl daemon-reload

查看kubelet.service内容

集群中有应用运行的情况

先重启备kube-controller-manager节点,最后重启主kube-controller-manager节点服务。

# systemctl restart kube-controller-manager

查看当前主kube-controller-manager,

# kubectl get endpoints kube-controller-manager --namespace=kube-system  -o yaml

 备份删除kubelet证书,重启kubelet服务

# cd /etc/kubernetes/ssl/
# mkdir /home/k8app/ssl.bak
# mv kubelet* /home/k8app/ssl.bak
# systemctl restart kubelet
# systemctl status kubelet.service

确认kubelet启动成功,在master主机k8app用户下

$ kubectl get csr

Approve 状态为pending的csr

# kubectl get csr | grep -i pending | awk '{print $1}' | grep -vi name | xargs kubectl certificate approve

#执行完后,再检查下
# kubectl get csr

确认csr为Approved,Issued状态

检查证书有效期

便都是10年有效期了

总结

到此这篇关于k8s证书有效期时间修改的文章就介绍到这了,更多相关k8s证书有效期时间内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Kubernetes(k8s)基础介绍

    之前我一直想学习Kubernetes,因为它听起来很有意思(如果你是希腊人,你会觉得这个名字很有问题),但我从来没有机会,因为我没有任何东西需要运行在集群中.而最近,我的工作中开始逐步涉及Kubernetes相关的事情,所以这次我抓住机会,开始查资料,但后来我发现目前所有的资料(包括官方教程)都过于冗长,结构也不合理,这让我一开始有点沮丧. 经过几天的研究,我开始逐步理解Kubernetes的核心理念,并且把他部署到了生产环境中.因为我的简历现在说自己是个"Kubernetes专家",

  • 在docker中部署k8s的方法

    K8s k8s是一个cluster集群,在cluster集群中有多个Namespace,一个namespace下又有多个pods,一个pod下有多个container. 这篇文章带你从头在docker中部署k8s. docker下载 docker安装 docker: https://docs.docker.com/docker-for-mac/install/ 在docker中使用k8s: https://docs.docker.com/desktop/kubernetes/ 在docker设置

  • 在centos 7中安装配置k8s集群的步骤详解

    配置背景介绍 kubernetes是google开源的容器集群管理系统,提供应用部署.维护.扩展机制等功能,利用kubernetes能方便管理跨集群运行容器化的应用,简称:k8s(k与s之间有8个字母) 为什么要用kubernetes这么复杂的docker集群管理工具呢?一开始接触了docker内置的swarm,这个工具非常简单快捷的完成docker集群功能.但是在使用docker1.13内置的swarm做集群的时候遇到vip负载均衡没有正确映射端口到外网,或者出现地址被占用的情况,这对高可用性

  • 在K8s上部署Redis集群的方法步骤

    一.前言 架构原理:每个Master都可以拥有多个Slave.当Master下线后,Redis集群会从多个Slave中选举出一个新的Master作为替代,而旧Master重新上线后变成新Master的Slave. 二.准备操作 本次部署主要基于该项目:https://github.com/zuxqoj/kubernetes-redis-cluster 其包含了两种部署Redis集群的方式: StatefulSet Service&Deployment 两种方式各有优劣,对于像Redis.Mong

  • Docker学习笔记之k8s部署方法

    本文记录了如何在ubuntu 14.04裸机上部署k8s集群,参考自官方文档. 拓扑结构 1master + 2minion k8s-master 192.168.0.201 master k8s-node1 192.168.0.202 minion k8s-node2 192.168.0.203 minion 准备工作系统 安装Ubuntu 14.04 LTS 64bit server版本系统,配置好hostname和ip. 在更新国内的软件源的时候,由于GFW的原因,经常会出现md5校验错误

  • k8s证书有效期时间修改的方法详解

    目录 前提 更改有效期 集群中有应用运行的情况 检查证书有效期 总结 修改后的集群时间,10年的时间,够集群平稳运行一段时间了. 刚部署好k8s的master集群时,查看证书有效期,时间是1年.一年,说长不长,说短不短.查看目前在运行的应用,都已经运行2年多,这样,1年的有效期就会有问题. 前提 确保资源池的监控信息都正常,如果有应用正在运行,确保应用能正常被访问到,监控信息也能正常被监控到. 更改有效期 大致分两步. 1.  可以先把所有的kubelet的service文件都替换了,然后挨个重

  • Navicat Premium 15无限试用注册表修改的方法详解

    最近看上了Navicat Premium 15对PostgreSQL的支持,老版本的会有找不到oid字段报错,网上栖息的一些和谐版本是通过暴力修改二进制文件中的密钥来完成的,把可执行文件的数字签名也给破坏了,若遇到别有用心的捆绑个后门也不是不可以,运行着没有底气,于是寻找突破14天试用的办法. 网上有12版本的删注册表方法,显得有些暴力,本文在这些方法的基础上缩小了删除的范围,避免伤及无辜. 首先把HKEY_CURRENT_USER\Software\Classes\CLSID和HKEY_CUR

  • postfixadmin忘记密码后的修改密码方法详解

    本文实例讲述了postfixadmin忘记密码后的修改密码方法.分享给大家供大家参考,具体如下: Postfix Admin 是一个基于Web的 Postfix 邮件发送服务器的管理工具,可以直接管理 Postfix 的虚拟域名和用户. 由于有一段时间没使用postfixadmin增删用户了, 突然需使用时忘记了管理密码,  使用老外的方式直接在数据库里修改密码, 后登录成功 php源码: <?php echo md5crypt("新密码"); // md5crypt // Ac

  • Android时间对话框使用方法详解

    一.简介 二.方法 1)显示TimePickerDialog方法 1.新建TimePickerDialog对象 TimePickerDialog timeDialog=new TimePickerDialog(this, new MyTimeSetListener(), 13, 30, true); 各个参数的含义如下: 说明一下: 第一个参数context就是这个控件显示的父控件是什么,也就是这个控件显示在哪个控件里面 第二个参数callback就是这个控件出现后,控件上面会有一个set或者d

  • scrapy头部修改的方法详解

    被Scrapy自动添加的头部 在没有任何配置的情况下,scrapy会对请求默认加上一些头部信息 Scrapy会通过配置文件中的USER_AGENT配置,自动为头部添加User-Agent,这条配置会被任何包含User-Agent的配置覆盖 当请求经过下载器后,会被自动添加头部Accept-Encoding: gzip,deflate, 会被任意包含Accept-Encoding的头部配置覆盖 配置settings.py文件中默认的头部 #DEFAULT_REQUEST_HEADERS = { #

  • 基于python时间处理方法(详解)

    在处理数据和进行机器学习的时候,遇到了大量需要处理的时间序列.比如说:数据库读取的str和time的转化,还有time的差值计算.总结一下python的时间处理方面的内容. 一.字符串和时间序列的转化 time.strptime():字符串=>时间序列 time.strftime():时间序列=>字符串 import time start = "2017-01-01" end = "2017-8-12" startTime = time.strptime

  • Linux中使用NTP保持精确时间的方法详解

    前言 如何保持正确的时间,如何使用 NTP 和 systemd 让你的计算机在不滥用时间服务器的前提下保持同步.下面话不多说了,来一起看看详细的介绍吧. 它的时间是多少? 让 Linux 来告诉你时间的时候,它是很奇怪的.你可能认为是使用 time 命令来告诉你时间,其实并不是,因为 time 只是一个测量一个进程运行了多少时间的计时器.为得到时间,你需要运行的是 date 命令,你想查看更多的日期,你可以运行 cal 命令.文件上的时间戳也是一个容易混淆的地方,因为根据你的发行版默认情况不同,

  • windows环境下修改pip镜像源的方法详解

    这篇文章主要介绍了windows环境下修改pip镜像源的方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 (1):在windows文件管理器中,输入 %APPDATA% (2):会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件 (3):在新建的pip.ini文件中输入以下内容,搞定文件路径:"C:\Users\Administrator\AppData\Roaming\pip\pip.i

  • python pandas修改列属性的方法详解

    使用astype如下: df[[column]] = df[[column]].astype(type) type即int.float等类型. 示例: import pandas as pd data = pd.DataFrame([[1, "2"], [2, "2"]]) data.columns = ["one", "two"] print(data) # 当前类型 print("----\n修改前类型:&quo

  • 对python字典元素的添加与修改方法详解

    1.字典中的键存在时,可以通过字典名+下标的方式访问字典中改键对应的值,若键不存在则会抛出异常.如果想直接向字典中添加元素可以直接用字典名+下标+值的方式添加字典元素,只写键想后期对键赋值这种方式会抛出异常. >>>a=['apple','banana','pear','orange'] >>> a ['apple', 'banana', 'pear', 'orange'] >>> a={1:'apple',2:'banana',3:'pear',4:

随机推荐