当前位置: 首页 > 知识库问答 >
问题:

kubernetes服务/状态/负载平衡/入口的设置值-ip

拓拔俊艾
2023-03-14

我正在寻找一种在创建类型为loadbalancer的k8s服务后设置服务/状态/负载平衡/入口ip的方法(如下一个链接的“类型loadbalancer”部分所示https://kubernetes.io/docs/concepts/services-networking/service/ ).

我的问题与以下链接中描述的问题类似(是否可以在监视服务时更新kubernetes服务的“外部IP”)但找不到答案。

提前感谢

共有1个答案

阎弘
2023-03-14

有两种方法可以做到这一点。使用json补丁或合并补丁。后者是这样做的:

[centos@ost-controller ~]$ cat patch.json
{
    "status": {
        "loadBalancer": {
            "ingress": [
                {"ip": "8.3.2.1"}
            ]
        }
    }
}

现在,您可以在这里看到for merge补丁,您必须创建一个包含所有需要进行一些更改才能合并的对象树(从状态开始)的字典。如果您想替换某些东西,那么必须使用json补丁策略。

一旦我们有了这个文件,我们就发送请求,如果一切顺利,我们将收到一个包含已应用合并的对象的响应:

[centos@ost-controller ~]$ curl --request PATCH --data "$(cat patch.json)" -H "Content-Type:application/merge-patch+json" http://localhost:8080/api/v1/namespaces/default/services/kubernetes/status{
  "kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "kubernetes",
    "namespace": "default",
    "selfLink": "/api/v1/namespaces/default/services/kubernetes/status",
    "uid": "b8ece320-76c1-11e7-b468-fa163ea3fb09",
    "resourceVersion": "2142242",
    "creationTimestamp": "2017-08-01T14:00:06Z",
    "labels": {
      "component": "apiserver",
      "provider": "kubernetes"
    }
  },
  "spec": {
    "ports": [
      {
        "name": "https",
        "protocol": "TCP",
        "port": 443,
        "targetPort": 6443
      }
    ],
    "clusterIP": "10.0.0.129",
    "type": "ClusterIP",
    "sessionAffinity": "ClientIP"
  },
  "status": {
    "loadBalancer": {
      "ingress": [
        {
          "ip": "8.3.2.1"
        }
      ]
    }
  }
 类似资料:
  • 我目前正在从服务结构切换到Kubernetes,并想知道如何进行定制和更复杂的负载平衡。 到目前为止,我已经读到库伯内特斯提供“服务”,为隐藏在它们后面的豆荚做负载平衡,但这只能以更简单的方式提供。 我现在要在Service Fabric中重写的内容如下所示: 我有这个界面: 在我的ASP中跟踪帐户的上下文。Net应用程序,例如继承此。然后,我编写了一些代码,到目前为止,这些代码将通过服务结构集群

  • 试图自学如何使用库伯内特斯,但有一些问题。 我的下一步是尝试使用LoadBalancer类型的服务来访问nginx。 我建立了一个新的集群并部署了nginx映像。 然后,我为LoadBalancer设置服务 设置完成后,我尝试使用LoadBalancer入口(我在描述LoadBalancer服务时发现)访问nginx。我收到一个此页面无法工作的错误。 不太确定我哪里出错了。 kubectl获得sv

  • 介绍: 在AWS上,负载均衡器很昂贵(20美元/月的使用量),所以我正在寻找一种方法来实现k8s节点之间的灵活负载均衡,而无需支付这笔费用。负载没那么大,所以我不需要AWS负载均衡器的可扩展性。我只需要服务是HA。我可以以3.5美元/月的价格获得一个小型EC2实例,它可以轻松处理当前的流量,所以我现在正在追逐这个选择。 当前设置 目前,我已经设置了一个常规的独立Ngin x实例(k8s之外),在我

  • 是否可以在没有负载均衡器的情况下在库伯内特斯中使用入口控制器功能(在数字海洋中)。 是否有其他机制允许域名映射到Kubernetes服务;例如,如果我在Kubernetes集群上托管两个WordPress站点: == 域名如何在不显式输入端口号的情况下映射到容器端口8080。 感谢任何帮助。

  • 我正在DigitalOcean上使用CoreOs和库伯内特斯构建一个容器集群,我已经看到,为了向世界公开Pod,您必须使用Type: LoadBalancer创建一个服务。我认为这是最佳解决方案,因此您不需要在nginx或haagent等kubernetes之外添加外部负载均衡器。我想知道是否可以使用DO的浮动IP创建它。

  • 我是微服务的新手。(学习阶段)。我有一个问题。我们在云中部署微服务。(例如 AWS)。云已经提供了负载平衡和日志。我们还在Spring Boot中实现了负载平衡(功能区)和日志(Rabbit MQ和Zipkin)。这两种实现有什么区别?我们两者都需要吗?有些人可以回答这些问题吗? 提前感谢。