TCP Echo Service Test (examples/tcp-echo-service.yaml) only works in default namespace
What happened:
I have deployed the examples/tcp-echo-service.yaml test case.
When using the default namespace, it works. I can exec into the container running the tcp-echo and perform an nslookup on the service:

I can see edgemesh getting the DNS request:

However, when I add a namespace (argus) to the Service and Deployment:

The nslookup fails:

And Edgemesh DNS request is failing:

What you expected to happen:
When using non-default namespace, the DNS request for the service should succeed.
How to reproduce it (as minimally and precisely as possible):
Deploy the examples/tcp-echo-service.yaml test case with a non-default namespace (I have used one of my own and also create a separate namespace and both fail.
Anything else we need to know?:
Environment:
-
EdgeMesh version: aa2119a4a1e838e2daaf6203c41183951fc8938f (HEAD as of 23/06/2022)
-
Kubernetes version (use
kubectl version): Major:"1", Minor:"23", GitVersion:"v1.23.1", GitCommit:"86ec240af8cbd1b60bcc4c03c20da9b98005b92e", GitTreeState:"clean", BuildDate:"2021-12-16T11:34:54Z", GoVersion:"go1.17.5", Compiler:"gc", Platform:"linux/amd64" -
KubeEdge version(e.g.
cloudcore --versionandedgecore --version): cloudcore+edgecore: d750c6ec1639ff007f9bf52edb42d6631cabe3e7 (HEAD as of 23/06/2022) -
Cloud nodes Environment:
- Hardware configuration (e.g.
lscpu): - OS (e.g.
cat /etc/os-release): - Kernel (e.g.
uname -a): - Go version (e.g.
go version): - Others:
- Hardware configuration (e.g.
-
Edge nodes Environment:
- edgecore version (e.g.
edgecore --version): d750c6ec1639ff007f9bf52edb42d6631cabe3e7 (HEAD as of 23/06/2022) - Hardware configuration (e.g.
lscpu): - OS (e.g.
cat /etc/os-release): - Kernel (e.g.
uname -a): - Go version (e.g.
go version): - Others:
- edgecore version (e.g.
Can you provide the logs of all edgemesh-agent?
Attached the log for the edge node
Note: The above is done on a single edge node, with the edgemech running on the same node as the tcp-echo service.