[ALB AWS](https://res.cloudinary.com/practicaldev/image/fetch/s--GCLdducl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to- uploads.s3.amazonaws.com/i/85wlcflujl1ak40k0ubi.png)

在本文中,我想继续介绍如何限制对我们的 AWS 负载均衡器(ALB/NLB)的访问。由于当我们希望我们的服务(在容器上)可以从 Internet 访问时,我们需要在 EKS 上设置 K8s 服务,这些服务通常会使用 AWS 负载均衡器。

为此,我们需要在我们的 K8S YAML 上为 EKS 服务添加几个额外的配置,例如注释。

通过此设置,只有我们已经授权的已知流量/网络才能访问我们的服务。

准备

本文旨在补充该系列。因此,请确保您已经提前阅读了我以前的文章。

阅读之前的系列以继续(或者您已经确定,您可以关注本文)因此我不会在本文中讨论诸如初始设置之类的基础知识。

那么,你准备好了吗? ,让我们继续!

使用 ALB 上的特定 CIDR 进行限制

限制访问的第一种方法是仅打开特定 CIDR 的访问。 CIDR 本身是无类域间路由的首字母缩写词,它被称为一组 Internet 协议 (IP) 标准,用于为网络和单个设备创建唯一标识符。因此,通过使用 CIDR 限制访问,您可以确保只有您授予授权的域网络才能访问负载均衡器。

如何为您的 ALB 设置此功能是在您的 YAML 下方添加注释以进行入口配置

    alb.ingress.kubernetes.io/inbound-cidrs:x.x.x.x/x

进入全屏模式 退出全屏模式

设置时请小心,因为如果已指定alb.ingress.kubernetes.io/security-groups,此注释将被忽略。

使用 ALB 上的 SecurityGroup 进行限制

第二种方法是限制使用 SecurityGroup。 SecurityGroup 是在 AWS 上配置安全性的常用方法。由于 SecurityGroup 可以与其他集成,最好的方法是先设置,在 SecurityGroup 准备好之后,我们可以开始在我们的配置中使用它。

以下是您可以在 Ingress 上使用的注释,以在您的 Application LoadBalancer for EKS 中指定要附加的安全组(您之前已经配置的安全组)。

alb.ingress.kubernetes.io/security-groups: sg-xxx

进入全屏模式 退出全屏模式

您还可以附加多个安全组,如下所示

alb.ingress.kubernetes.io/security-groups: sg-xxxx, nameOfSg1, nameOfSg2

进入全屏模式 退出全屏模式

使用 NLB 上的特定 IP 进行限制

如果您在 EKS 上仅使用type:LoadBalancer的简单服务,我们可以肯定,您使用 NLB 为您的 EKS 与外界通信。

幸运的是,通过该设置,您仍然可以通过指定可以访问负载均衡器的 IP(Internet 协议)来限制访问。您可以在 YAML 的spec部分添加以下配置。

  loadBalancerSourceRanges:
    - "x.x.x.x/x"

进入全屏模式 退出全屏模式

这是完整版的样子

---
apiVersion: v1
kind: Service
metadata:
  name: your-service-name
  labels:
    app: your-label-app
spec:
  loadBalancerSourceRanges:
    - "x.x.x.x/x"
  ports:
  - port: xx
    name: your-port-name
    targetPort: xx
  selector:
    app: your-app-Name
  type: LoadBalancer

进入全屏模式 退出全屏模式

您还可以使用此设置添加多个 IP

  loadBalancerSourceRanges:
    - "x.x.x.x/x"
    - "y.y.y.y/y"
    - "z.z.z.z/z"

进入全屏模式 退出全屏模式

结论

正如您在上面看到的,当我们将负载均衡器与 EKS 集成时,我们有很多选项(3 种实用方法)来限制我们的负载均衡器。您可以选择最适合您当前情况的方式。

我想这就是本文比较的内容了。在下面发表评论。所以,我知道你的想法!谢谢。

Logo

CI/CD社区为您提供最前沿的新闻资讯和知识内容

更多推荐