首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VM之外访问k8s

在VM之外访问k8s
EN

DevOps用户
提问于 2020-03-06 07:50:54
回答 1查看 497关注 0票数 1

我正在运行k8s集群,以便在某个流浪汉框中进行评估。我可以通过外部渠道。我能够在集群上运行PostgreSQL helm模板。但是现在假设我想在k8s(或者VM实际上)之外访问它。

有一个问题是,我在VM中的Host通信的细节方面没有受过很好的教育,更不用说k8s堆栈了。通过实证研究,我发现将服务转向NodePort使其在k8s之外可用。但是正如我所说的,安装的PostgreSQL服务是ClusterIP,所以我也想在外部访问它,而不想找到将它转换为NodePort的方法。所以这里有几个问题

  1. kubectl proxykubectl port-forward有什么区别?
  2. 当从VM内部执行kubectl proxy、运行k8s集群和在主机上运行相同的kubectl命令时,有什么不同?
  3. 在仅为开发目的使用集群时,使服务在集群之外可用的通常方法是什么?
  4. 这句话是真的吗?当使用专用网络和使用来宾专用ip从主机访问来宾时不需要端口转发,端口转发用于使用localhost/127.0.0.1访问来宾,然后转发端口。
EN

回答 1

DevOps用户

发布于 2020-03-06 17:11:43

  1. kubectl端口-将连接转发到本地端口到吊舱上的端口.与kubectl代理相比,kubectl端口转发更通用,因为它可以转发TCP流量,而kubectl代理只能转发HTTP流量。一般来说,使用端口转发,您可以在集群中启动的“localhost”上获得任何服务。https://stackoverflow.com/questions/58360323/difference-between-kubectl-port-forwarding-and-proxy
  2. 从运行k8s集群的VM内部运行“kubectl代理”并不有什么意义。Kubectl是您的客户端工具,所以请在集群范围之外使用它。
  3. 在大多数情况下,如果您的服务是面向DB的,那么您将访问生产服务的方式与ClusterIP保持一致。如果您希望外部访问某些Web/HTTP服务,则将其公开为负载均衡器或宏(万一您有N个负载均衡器)。如果您想测试DB,只需运行一个虚拟荚并从那里执行一些sql-client命令。
票数 2
EN
页面原文内容由DevOps提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://devops.stackexchange.com/questions/11000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档