一、背景

Dapr 默认证书有效时间是1年,证书过期后就不能执行相关控制面和数据面的交互了,如下图:

二、查看证书有效时间

通过dapr mtls expiry 看到期时间,具体参见命令https://v1-7.docs.dapr.io/reference/cli/dapr-mtls/dapr-mtls-expiry/

三、解决方案

Dapr 支持使用 Dapr 控制平面、Sentry 服务(中央证书颁发机构 (CA))对 Dapr 实例之间的通信进行传输中加密。

Dapr 允许运营商和开发人员引入他们自己的证书,或者让 Dapr 自动创建和保存自签名的根证书和颁发者证书。具体参见

https://docs.dapr.io/operations/security/mtls/

Dapr 在1.7版本引入了一个新的命令:

dapr mtls renew-certificate -k --valid-until <days> –restart

生成全新的根证书和颁发者证书,由新生成的私钥签名。Dapr sentry service必须重新启动随后的其余控制平面服务才能读取新证书。这可以通过向--restart命令提供标志来完成。

对于 1.7 以下版本, 只能手工进行操作,具体可以参考 文档 https://v1-5.docs.dapr.io/operations/security/mtls/#bringing-your-own-certificates ,更新完Dapr 证书,则必须重新启动 Dapr Sentry 服务,然后是 Dapr 控制平面服务的其余部分。

kubectl rollout restart deploy/dapr-sentry -n <DAPR_NAMESPACE>

一旦sentry 完全重新启动运行:

kubectl rollout restart deploy/dapr-operator -n <DAPR_NAMESPACE>

kubectl rollout restart statefulsets/dapr-placement-server -n <DAPR_NAMESPACE>

接下来,您必须重新启动所有启用 Dapr 的 pod。推荐的方法是重新启动部署:

kubectl rollout restart deploy/<myapp> –n <APP_NAMESPACE>

在成功重新启动所有部署(并因此加载新的 Dapr 证书)之前,由于证书不匹配,您将经历潜在的停机时间。

1.7 版本以后Dapr 在这个方面做的更完善了,为 Dapr 控制平面 mTLS 证书过期设置监控
从 mTLS 根证书到期前 30 天开始,Dapr 哨兵服务将发出每小时警告级别的日志,指示根证书即将到期。 作为在生产中运行 Dapr 的最佳操作实践,我们建议为这些特定哨兵服务日志配置监控,以便您了解即将到期的证书。

从 1.7.0 版开始,作为提醒您即将到来的证书到期的附加工具,CLI 现在会在您与基于 Kubernetes 的部署交互时打印证书到期状态。

Dapr 证书过期了怎么办? 别慌,有救!的更多相关文章

  1. 证书过期-->app审核提示90034证书错误

    1.证书过期问题,去钥匙串中删除过期证书,然后新下载一个证书,重新添加,注:一定要把所有过期证书全部删除,如果不显示则点击钥匙串-->显示过期证书 然后下载新证书:https://develop ...

  2. (苹果AppleWWDRCA.cer证书过期)Failed to locate or generate matching signing assets

    从2月14号开始,上传AppStore会碰到:Failed to locate or generate matching signing assets 字数462 阅读13571 评论16 喜欢61 ...

  3. ASP - MSXML2.ServerXMLHTTP & HTTPS & 证书过期 — msxml3.dll '80072f05'

    Error: msxml3.dll  '80072f05' The date in the certificate is invalid or has expired Dim xmlhttp Set ...

  4. CA证书过期

    CA证书问题请教!最近在客户这里做Exchange2010及RMS项目,对当前Ca证书颁发机构的环境做了下勘察和调研,发现有些地方出现警号显示过期,不知道会不会影响Exchange和Adrms的集成部 ...

  5. Splunk < 6.3 版本 SSL 证书过期事宜

    最近Splunk发出邮件提醒客户SSL证书过期事宜. 问题看起来比较严重,因为所有的实例,包括 forwarder\peernode\indexer\master node 等等都受影响,而且Depl ...

  6. 012_py之证书过期监测及域名使用的py列表的并集差集交集

    一.由于线上域名证书快要过期,需要进行监测,顾写了一个方法用于线上证书过期监测,如下: import ssl,socket,pprint def check_domain_sslexpired(dom ...

  7. centos7内核升级及curl访问https证书过期处理

    centos7内核升级及curl访问https证书过期处理 先看下当前系统的linux内核版本 uname -r 3.10.0-229.el7.x86_64 升级步骤 1.rpm --import h ...

  8. ssl证书过期问题

    问题:linux服务器ssl证书过期,申请新证书后,也更换了服务器的证书,但是网页一直提示证书过期 解决:经分析后,发现服务器架构为waf->slb->esc,域名并未直接解析到slb,解 ...

  9. https证书过期问题

    这个是以前配置证书的文章,同时更新证书的有效的一篇文章 最近网站的https证书过期了,造成无法对外提供服务,怀疑是当时配置的自动更新没有起作用. 然后去后台更新https证书,却遇到了问题,使用的具 ...

随机推荐

  1. 深入解析Kubernetes admission webhooks

    BACKGROUND admission controllers的特点: 可定制性:准入功能可针对不同的场景进行调整. 可预防性:审计则是为了检测问题,而准入控制器可以预防问题发生 可扩展性:在kub ...

  2. [HNOI2009]【一本通提高组合数学】有趣的数列

    [HNOI2009]有趣的数列 题目描述 我们称一个长度为 2 n 2n 2n 的数列是有趣的,当且仅当该数列满足以下三个条件: 它是从 1 ∼ 2 n 1 \sim 2n 1∼2n 共 2 n 2n ...

  3. Go 接口:深入内部原理

    接口的基本概念不在这里赘述,详情请看第十六章:接口 nil 非空? package main func main() { var obj interface{} obj = 1 println(obj ...

  4. .Net CLR GC 动态加载短暂堆阈值的计算及阈值超量的计算

    前言: 很多书籍或者很多文章,对于CLR或者GC这块只限于长篇大论的理论性概念,对于里面的如何运作模式,却几乎一无所知.高达近百万行的CPP文件,毕竟读懂的没有几个.以下取自CLR.Net 6 Pre ...

  5. rust实现http时如何读取一个完整的request

    用stream.read_to_end是不行的,tcpstream不是文件没有明确的结束符 需要先读取http header节,再找Content-Length header,然后读取body. 这是 ...

  6. C#/VB.NET 将PPT或PPTX转换为图像

    C#/VB.NET 将PPT或PPTX转换为图像 由于大多数便携式设备支持浏览图片而不支持浏览PowerPoint 文件,所以相比较而言,图像对于用户而言更加友好.除此之外,将PowerPoint文档 ...

  7. [LNOI2022]盒

    \(LNOI2022\)盒 由于是加的形式,那么可以套路的拆贡献,枚举每条边的贡献就好了 \(40pts\) //比较显然的事情 //首先确定了一个B数组之后 //最小的移动应该是 //设左右两侧比原 ...

  8. react学习1-jsx语法注意点

    * 1.定义虚拟DOM不要写引号 * 2.标签中使用js表达式的时候,要使用{} * 3.样式类名指定要使用className * 4.要使用内联样式的话,要使用style={{key:"v ...

  9. CSP-J2021 题解

    分糖果 题意 选择L~R中的某个数 , 使得x mod k的结果最大. 思路 分两种情况考虑: 若 L 和 R 对 K 取模后在同一区间,则必然在 x=R 位置取到最大值: 否则 L~R 必然跨越多个 ...

  10. django自带的序列化组件

    1.什么是序列化组件 在django中,自带一个序列化组件,它是用来将数据进行整理.转化成特定的为一个特定的格式(比如json数据格式),然后传输给前端,以便前端对数据进行处理操作. 2.为什么要用序 ...