gpt4 book ai didi

Kubernetes:创建服务与公开部署

转载 作者:行者123 更新时间:2023-12-02 11:32:35 26 4
gpt4 key购买 nike

我是 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
    现在,根据我的理解,这两个命令都使用负载均衡器从部署中创建服务并将它们暴露给外部世界。
    我认为同一任务不会有两个单独的命令。应该有一些我无法理解的差异。
    有人可以向我澄清一下吗?

    最佳答案

    我希望这会有所帮助:这里的关键是了解服务和部署之间的区别。根据此链接 [1],您会注意到部署会自动处理 Pod 的死亡。但是,如果一个 Pod 终止,然后另一个 Pod 启动,那么
    当 IP 更改时,Pod 会继续通信吗?他们使用服务:“服务是一种抽象,它定义了一组逻辑 Pod 和访问它们的策略”。此外,查看此链接 [2] 可能会很有趣,因为它描述了 kubectl expose 命令创建一个服务,该服务又创建了一个外部 IP 和一个负载均衡器。作为初学者,查看与 Kubernetes 一起使用的命令语言可能会有所帮助,此链接 [3] 描述(如另一个答案中所述) kubectl create 命令用于更具体地了解它创建的对象。也可以使用 create 命令创建更多种类的对象。

    [1]:服务:https://kubernetes.io/docs/concepts/services-networking/service/
    [2]:部署容器化的 Web 应用程序:https://cloud.google.com/kubernetes-engine/docs/tutorials/hello-app#step_6_expose_your_application_to_the_internet
    [3]:如何创建对象:https://kubernetes.io/docs/tasks/manage-kubernetes-objects/imperative-command/#how-to-create-objects

    关于Kubernetes:创建服务与公开部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59397542/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com