AWS EKS Windows Pod unable to resolve DNS

0

I have an EKS cluster. Version is 1.21. I started with Self Managed windows nodes I added self managed linux node group. I deployed an application on Linux node group. I am running MSSQL on Linux. I have a windows container running in Windows node group. Windows container is trying to access mssql service. It is not able to find this service. DNS resolution is working fine on Linux nodes but not working on Windows nodes.

Let me know if you have any suggestions.

已提問 2 年前檢視次數 1330 次
2 個答案
0

A possible cause for this is the incorrectly configured aws-auth configmap. Please check the aws-auth config map for any duplicate entries. Also, ensure that you have separate IAM roles for the Windows and Linux nodes.

AWS
已回答 2 年前
0

I would like to elaborate further on AWS-User-3414175's answer. Make sure that your windows nodegroup IAM role mapping in the aws-auth ConfigMap has an additional RBAC permission group eks:kube-proxy-windows specified. Please find the sample aws-auth ConfigMap below.

Refer to https://docs.aws.amazon.com/eks/latest/userguide/launch-windows-workers.html#aws-management-console for more info.

apiVersion: v1
kind: ConfigMap
metadata:
  name: aws-auth
  namespace: kube-system
data:
  mapRoles: |
    - rolearn: ARN of instance role (not instance profile) of **Linux** node
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes
    - rolearn: ARN of instance role (not instance profile) of **Windows** node
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes
        - eks:kube-proxy-windows
profile pictureAWS
支援工程師
已回答 2 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南