【发布时间】:2020-04-11 07:57:52
【问题描述】:
我是 Kubernetes 新手。我正在阅读一些与 Kubernetes 部署相关的教程。我看到两个不同的命令看起来做类似的事情。
-
以下命令来自谷歌代码实验室(网址:https://codelabs.developers.google.com/codelabs/cloud-springboot-kubernetes/index.html?index=..%2F..index#7)
$ kubectl create service loadbalancer hello-java --tcp=8080:8080 -
与 Kubernetes 站点 (https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/) 一起在不同的地方看到另一个命令
$ kubectl expose deployment hello-world --type=LoadBalancer --name=my-service
现在根据我的理解,这两个命令都在使用负载均衡器从部署中创建服务并将它们暴露给外部世界。
我认为同一任务不会有两个单独的命令。应该有一些我无法理解的差异。
有人可以向我解释一下吗?
【问题讨论】:
-
就像你说的那样,两者都在做同样的事情,即为部署创建服务。但是,当进入学习 K8s 的下一阶段时,您将访问一个看起来像部署的服务文件,它为您的部署指定 svc 配置,一些工程师将 svc 配置、入口配置、部署配置添加到一个文件中。这就是您想要解决的所有问题。运行每个后,您可以使用 kubectl get svc -n namespace 检查并检查更多信息并澄清。
-
感谢@BinaryBullet 的解释......现在有点想法
标签: kubernetes google-cloud-platform google-kubernetes-engine