首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何配置kubernetes入口的DNS?

问如何配置kubernetes入口的DNS?
EN

Stack Overflow用户
提问于 2021-05-19 16:33:01
回答 2查看 141关注 0票数 0

我已经购买了3个VPS,IP地址如下

代码语言:javascript
复制
   172.168.1.146
   72.168.43.245
   98.156.56.123

我有一个入口控制器

我已经安装了metallb,它可以对流量进行负载均衡,并将其发送到任何IP地址。

现在,我如何向kubernetes集群端点提供静态IP?

我是否应该购买虚拟IP并将其配置为metallb?如果是这样的话,是怎么做的?

或

我是否应该在上述所有节点中配置keepalived并配置虚拟IP。在这种情况下,是否可以为所有节点配置相同的虚拟IP?会不会有IP冲突?如果其中一个节点失效,虚拟IP是否会自动分配给另一个存活的节点?如果是,将IP地址自动分配给另一个处于活动状态的节点的通常持续时间是多久?

EN

回答 2

Stack Overflow用户

发布于 2021-05-19 17:31:43

MetalLB目前处于测试阶段。阅读有关项目maturity的信息,并确保您通过彻底阅读官方文档来了解自己。

MetalLB可以使用简单的Kubernetes清单或Helm进行部署。本示例的其余部分假设按照Installation说明部署MetalLB。MetalLB需要一个IP地址池,以便能够取得入口nginx服务的所有权。可以在名为ConfigMap的配置中定义该池,该配置位于与MetalLB控制器相同的名称空间中。此IP池必须专用于MetalLB,您不能重用Kubernetes节点IP或DHCP服务器分发的IP。

给定以下3节点Kubernetes集群(添加外部IP作为示例

代码语言:javascript
复制
$ kubectl get node
NAME     STATUS   ROLES    EXTERNAL-IP
host-1   Ready    master   203.0.113.1
host-2   Ready    node     203.0.113.2
host-3   Ready    node     203.0.113.3

在创建以下ConfigMap之后,MetalLB取得池中的一个IP地址的所有权,并相应地更新loadBalancer -nginx服务的入口IP字段。

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: default
      protocol: layer2
      addresses:
      - 203.0.113.10-203.0.113.15
票数 1
EN

Stack Overflow用户

发布于 2021-05-19 17:03:41

您可以将in包含在MetalLB配置文件中。或者真的只有一个,因为这就是它所需要的。https://metallb.universe.tf/configuration/#layer-2-configuration

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: default
      protocol: layer2
      addresses:
      - 192.168.1.240-192.168.1.250 

这是L2模式,更可能是你想要的,但你应该与你的网络上游确认,无端的ARP将1)工作,2)不会让你被禁止进入网络。从“你刚刚设置的随机VPS”的基线来看,这两个都不能保证。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67599631

复制
相关文章

相似问题

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