容器服务ACK还是没解决第三个 单独服务的问题?不能实现独立的外露服务

容器服务ACK还是没解决第三个 单独服务的问题?不能实现独立的外露服务
1ade93a14e8300ccb80c47bfbff02475.png

展开
收起
真的很搞笑 2023-07-22 12:14:06 73 分享 版权
2 条回答
写回答
取消 提交回答
  • 如果您在容器服务ACK中遇到无法实现独立外露服务的问题,可能有以下几个常见的原因:

    1. 防火墙规则限制:请确保您的阿里云VPC的安全组规则允许来自外部网络(如公网)的流量访问到您的Kubernetes集群。您可以检查和更新相关的入站规则,以确保正确地允许需要外部访问的服务。

    2. 服务暴露方式:容器服务ACK提供了多种方式将服务暴露给外部网络,例如使用Service类型为LoadBalancer或NodePort的服务。确保您使用适当的方式来配置和创建服务,以使其能够接收外部流量。

      • 对于LoadBalancer类型的服务,请确保已正确配置负载均衡器,并在服务创建后分配到一个公网IP地址。

      • 对于NodePort类型的服务,请确保已为服务指定一个合适的端口号,该端口号在节点上被监听,并且安全组规则允许从外部访问该端口。

    3. 公网访问配置:检查您的Kubernetes集群是否具有公网访问的配置。您可以验证是否为集群分配了公网IP地址,并确保与该集群关联的VPC和交换机的网络配置正确。

    4. DNS解析:如果您使用域名来访问服务,请确保您的域名解析配置正确,并且指向相应的公网IP地址或负载均衡器。

    2023-07-28 10:09:19
    赞同 展开评论
  • 北京阿里云ACE会长

    将ACK集群内的一个Service单独外露,使用独立的公网IP
    同时此Service对集群内其它Service也可见,可以互相调用
    要实现这个场景,可以使用阿里云应用负载均衡(ALB)来外露单独的Service:

    为Service创建独立的NodePort类型Service,并分配NodePort端口
    yaml
    Copy
    apiVersion: v1
    kind: Service
    metadata:
    name: frontend
    spec:
    type: NodePort
    ports:

    • port: 80
      targetPort: 8000
      nodePort: 30001
      selector:
      app: frontend
      创建一个Internet类型的ALB,转发请求到上述NodePort端口

    将ALB分配的公网IP和域名映射到此ALB,作为前端Service的访问入口

    使用上述配置:

    分配独立的公网IP给前端Service
    通过域名对外提供服务
    前端Service可通过集群内部DNS访问其它Service

    2023-07-23 17:26:04
    赞同 展开评论

国内唯一 Forrester 公共云容器平台领导者象限。

还有其他疑问?
咨询AI助理