kubectl 证书(kubectl证书验证)

kubectl 证书(kubectl证书验证)kubeedge 这个边缘计算平台有一个特点 它的边缘节点网络和云端节点的网络不是在一个平面的 边缘的计算节点通过加入边缘集群的时候 并不要求自身的 IP 从云端可达 这是很符合真实场景的 kubelet 上报的 kubelet server 信息 它是 kubelet 上报的信息 看到的重要信息如下

大家好,我是讯享网,很高兴认识大家。



kubeedge 这个边缘计算平台有一个特点:它的边缘节点网络和云端节点的网络不是在一个平面的,边缘的计算节点通过加入边缘集群的时候,并不要求自身的IP从云端可达,这是很符合真实场景的。

  • kubelet 上报的kubelet server 信息
    它是kubelet 上报的信息, 看到的重要信息如下:

    讯享网

    在边缘计算节点加入集群后,cloudcore 生成的 node 中包含了该edge node 的 KubeletEndpoint 端口和它的IP 以及主机名(也就是 看到的node 名称)。



  • 的实现原理(how kubectl logs works)
    发起一个日志查询请求,打开详细日志:
    讯享网

    可以看到,kubectl 其实是发起了2个请求:


    讯享网

    • 查询该pod,主要是确认pod是否存在,以及是否存在多个容器
    • 拼接出来 并向真正的该pod 所在的node kubelet server 发起请求

    我们从kubeapiserver 的相关代码就可以看出来,具体的解释在下边代码中做了编辑:

     

    接下来我们看下

    讯享网

    这里会从Node Status的address 中选一个地址做url的host,一般是InternalIP,显然是一个内网IP,当这个IP 从云端可达的时候,我们去执行 或者 的时候会用这个IP 和 kubeletEndpoint(默认是10250) 拼接出目的kubelet server 的地址。

    但是当Pod 运行在Edge Node 上时,这个IP是不可达的,那么kubeedge 是怎么做的呢?前戏很长,但是很有必要,让我们开启今天的正题。


在这里插入图片描述
可以看到apiserver 通过 tunnelserver与的node 的ws通道发给node上的kubelet server,我们分了10步去解释整个过程,接下来一步步的从代码去深入分析。

 
  
讯享网

这里启动

 
  

它会把hostname 和 internalIP 做key,session 做value。

讯享网
 
  

这样,我们就可以在stream server 的处理中,获取到根据request 的host获取到session,并且获取到该wss connection

前言背景中,提到了API Server 会对host:10350 发起请求

讯享网

解释在code里。

 
  
讯享网

 
  

这一步,写回tunnel

讯享网
 
  

代码中做了解释。

讯享网

小讯
上一篇 2025-05-03 08:39
下一篇 2025-06-06 11:48

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/192317.html