xiaods / k8e

K8E - Kubernetes Easy Engine
https://getk8e.com
Apache License 2.0
392 stars 25 forks source link

默认支持10年有效证书具体原理? #322

Closed tianzx closed 1 year ago

tianzx commented 1 year ago

可以分享一下具体的改动代码吗,谢谢!

xiaods commented 1 year ago

可以的,实现签名虚拟的是这个包:github.com/rancher/dynamiclistener 目前已经支持环境变量变更。但是为了我这边更方便。我在
https://github.com/xiaods/k8e/blob/14ffa46391d686092715af883b71cbacd2224130/pkg/daemons/control/deps/deps.go#L43-L45

默认初始化支持了 10 年的自签名许可。当前 k8s 自带 cert renew 功能,其实一年更新一次也非常容易。证书过期在以前是非常头疼的事情,但是在现在时间点,这个特性其实就是为了满足点“个人爱好”。无其他用处。

tianzx commented 1 year ago

十分感谢您的回复,还有一个问题是k8e使用kube-vip作为vip使用,在公有云的情况下,可能无法手工修改网卡名称和VIP IP,对于这种情况,有什么建议呢

xiaods commented 1 year ago

十分感谢您的回复,还有一个问题是k8e使用kube-vip作为vip使用,在公有云的情况下,可能无法手工修改网卡名称和VIP IP,对于这种情况,有什么建议呢

kube-vip 使用主机网卡的名,这个在公有云应该虚拟机的网卡设备名是一样的。比如都是 eth0 之类。另外 VIP IP 更方便,直接把 VIP 填一下就可以额。我都测试过。

使用daemonset部署kube-vip 默认kube-vip支持static pod和daemonset两种模式,建议选择daemonset模式。注意,需要手工修改网卡名称和VIP IP。 就是修改一个 DS.yaml 文件,把里面的两个变量换掉。 一个是网卡字段:name: vip_interface value: eth0 一个就是 VIP IP:

参考文档:https://getk8e.com/docs/install/271-using-kubevip/

tianzx commented 1 year ago

name: address value: 192.168.0.40 , 在公有云中可能不支持ARP,所以vip的值如果没有办法设置成一个静态的,该怎么解决呢?

xiaods commented 1 year ago

name: address value: 192.168.0.40 , 在公有云中可能不支持ARP,所以vip的值如果没有办法设置成一个静态的,该怎么解决呢?

你自己手工指定一个 IP 不就可以了,只要有效的 IP 不都是 VIP 吗。如果是 bgp 协议的,需要看 kube-vip 的手册,有配置方法。

xiaods commented 1 year ago

name: address value: 192.168.0.40 , 在公有云中可能不支持ARP,所以vip的值如果没有办法设置成一个静态的,该怎么解决呢?

你使用的公有云是那个云,实际按 kube-vip 的方案去跑一遍。遇到问题可以在细交流

tianzx commented 1 year ago

你使用的公有云是那个云,实际按 kube-vip 的方案去跑一遍。遇到问题可以在细交流

好的,我先试试,国外的话是upcloud,国内的话是腾讯云

xiaods commented 1 year ago

腾讯云

你的意思是云主机上没有 ARP和 BGP?那就没法用 kubevip 做 VIP。直接用 haproxy 自己做个反向代理吧,简单。