aws / aws/aws-cloud-map-mcs-controller-for-k8s
Imported service not respective topology awareness hints
- Dominant language
- Go
- Stars
- 98
- Forks
- 32
- PR merge metrics
- No merged PRs in 30d
Description
Tested in EKS 1.24
Verified with the following setup .
curling the imported service from an ubuntu pod will show that it's randomly distributed across the 2 pods.
Expects imported service to respect topology awareness and hits only 1 pod.
```
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: monitoring
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- nginx
topologyKey: failure-domain.beta.kubernetes.io/zone
---
kind: Service
apiVersion: v1
metadata:
namespace: monitoring
name: nginx-service
annotations:
service.kubernetes.io/topology-aware-hints: Auto
spec:
selector:
app: nginx
ports:
- port: 80
```
Contributor guide
Research direction
Start by reproducing the issue in EKS 1.24 with the provided nginx Deployment and Service, including the topology-aware-hints annotation, then trace how imported Services and their endpoints are handled. Done means curling the imported Service from an Ubuntu pod respects topology awareness and consistently targets the expected pod rather than distributing requests across both pods.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, go, kubernetes
- Domain
- distributed-systems, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100