我有一个库伯内特斯集群,不需要向公众公开端口。我正在安装监控和日志记录(普罗米修斯
在库伯内特斯留档中,您可以找到port-转发
命令允许您从localhost访问库伯内特斯集群内部进程并与之交互的信息。它也是调试的最佳工具之一。
将一个或多个本地端口转发到pod。此命令要求节点安装了“socat”。使用资源类型/名称(如部署/my部署)来选择pod。如果省略,资源类型默认为“pod”。如果有多个符合条件的pod,将自动选择一个pod。当所选pod终止时,转发会话结束,需要重新运行命令才能恢复转发。
1.引擎盖下端口转发是如何工作的?
此信息可在库伯内特斯港口转发如何工作中找到?文章。
kubectl已经具有内置的端口转发功能,这简化了整个过程。
端口转发是一种工作密集型方法。然而,在某些情况下,它是访问内部集群资源的唯一方法。
2.端口转发和我的kubectl连接一样安全吗?
对于这个问题,您可以在kubectl端口转发加密吗?中找到答案。正如@iomv所指出的
据我所知,当您将选择的端口转发到您的机器时,kubectl连接到集群的主机之一,所以是的,通常通信是加密的。不过,您的主机如何与pod通信取决于您如何设置内部通信。
或@neokyle
kubectl port-转发使用socat创建具有端口转发功能的加密TLS隧道。隧道从您到库贝api服务器到pod,因此它实际上可能是2个隧道,库贝api服务器充当伪路由器。
Kubecelt端口转发是加密的。
3.连接是否与基于入口负载均衡器的HTTPs连接一样快
由于连接在集群内部,它应该比从集群外部到集群的连接更快。
此外,还有类似的关于kubectl port-转发
的Stackoverflow线程。