zoukankan      html  css  js  c++  java
  • Kubernetes 认证(证书)过期怎么办

    Kubernetes 中的认证

    在Kubernetes cluster中,TLS认证是必要条件,也就是说在Kubernetes的各个节点间的通信必须走TLS加密来确保安全性(TLS 可以认为是SSL的升级)。

    TLS的认证过程中要用证书,证书是有时效性的,证书过期后,TLS通信是被拒绝的。

    Kubernetes认证过期的现象

    1. 首先,kubernetes cluster提供的服务突然不能用了,头一天还正常运行,第二天没做任何重新配置,重启,就是无法访问。
    2. 其次,使用kubectl 命令的时候出现:

    xxxx:6443 was refused , did you specify the right host or port?

    错误,这个错误说明,Kubernetes的apiserver没有启动。

           3. 查看 Kubernetes的apiserver 的日志(/var/log/kube-apiserver.log),会发现如下循环出现的错误

    authentication.go:63] "Unable to authenticate the request" err="[x509: certificate has expired or is not yet valid: 。。。

    4.执行 kubeadm alpha certs check-expiration

       会得到认证及其期限的一览

    解决办法

    解决办法有很多,但是自己动手搭K8s的小伙伴大多是不可能买CA证书的,就是冲着免费去的。

    所以,我也推荐大家直接使用K8s的命令更新证书,会延续一年的寿命。

    kubeadm alpha certs renew all

    执行完命令后,reboot 控制节点的机器应该就解决了。

    注:文中所述命令都是在kubernetes集群的控制节点上运行。如果权限不足,请sudo

    Written By BlueZealot
  • 相关阅读:
    还在纠结注册.com域名还是.cn域名?
    网站域名被墙的检测查询和解决办法
    阿里云服务器无法远程其他的mysql服务器
    如何维护一个产品
    使用bootstrap+asp.net mvc4+IBatis.Net实现的小程序
    bootstrap IE兼容
    mongodb命令使用
    聊天工具实现winform端实现
    二级域名设置
    org
  • 原文地址:https://www.cnblogs.com/WestContinent/p/15700345.html
Copyright © 2011-2022 走看看