Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NFT: Add NodePort Support to KPNG #15

Closed
jayunit100 opened this issue May 4, 2021 · 7 comments
Closed

NFT: Add NodePort Support to KPNG #15

jayunit100 opened this issue May 4, 2021 · 7 comments

Comments

@jayunit100
Copy link
Contributor

jayunit100 commented May 4, 2021

Looks like NodePorts arent working....

is this NFT specific?

@andrewsykim was asking wether or not the nodeport issue was provider specific, i think it is...
because we have nodeports in the spec

gitpod /workspace/kpng $ git grep "NodePort"
jobs/kube2store/service-event-handler.go:                       NodePort: port.NodePort,
pkg/api/localnetv1/services.pb.go:      NodePort       int32    `protobuf:"varint,4,opt,name=NodePort,proto3" json:"NodePort,omitempty"`
pkg/api/localnetv1/services.pb.go:func (x *PortMapping) GetNodePort() int32 {
pkg/api/localnetv1/services.pb.go:              return x.NodePort
pkg/api/localnetv1/services.proto:    int32    NodePort   = 4;

DETAILS

Ive finished running the conformance results for the hack/ scripts:

The major hole at the moment is ~ nodeport support

It appears that most of the service dependent tests fail.

Summarizing 15 Failures:                            
                                                                              
[Fail] [sig-network] Services [It] should be able to change the type from ExternalName to NodePort [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:1731
                                                                              
[Fail] [sig-network] Services [It] should have session affinity timeout work for NodePort service [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:3398

[Fail] [sig-network] Services [It] should be able to switch session affinity for NodePort service [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:3477

[Fail] [sig-network] Services [It] should be able to create a functioning NodePort service [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:1179

[Fail] [sig-network] Services [It] should be able to switch session affinity for service with type clusterIP [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:207

[Fail] [sig-network] DNS [It] should provide DNS for ExternalName services [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] Services [It] should have session affinity timeout work for service with type clusterIP [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:202

[Fail] [sig-network] Services [It] should be able to change the type from NodePort to ExternalName [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:1817

[Fail] [sig-network] DNS [It] should provide DNS for the cluster  [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] DNS [It] should provide /etc/hosts entries for the cluster [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] Services [It] should have session affinity work for service with type clusterIP [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:202

[Fail] [sig-network] DNS [It] should provide DNS for services  [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] DNS [It] should resolve DNS of partial qualified names for services [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] DNS [It] should provide DNS for pods for Subdomain [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/dns_common.go:464

[Fail] [sig-network] Services [It] should have session affinity work for NodePort service [LinuxOnly] [Conformance] 
/home/ubuntu/SOURCE/go/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/test/e2e/network/service.go:3477

The results are:

Ran 331 of 5703 Specs in 13437.815 seconds
FAIL! -- 316 Passed | 15 Failed | 0 Pending | 5372 Skipped
@jayunit100 jayunit100 changed the title Get Conformance results passing for hack/ tests Get the 16 service dependent Conformance results passing for hack/ tests May 4, 2021
@jayunit100
Copy link
Contributor Author

coredns logs:

[INFO] 10.244.1.29:40183 - 9094 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000085931s
[INFO] 10.244.2.178:52298 - 29953 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000329592s
[INFO] 10.244.2.178:53363 - 33056 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000331914s
[INFO] 10.244.2.178:48711 - 43578 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000195346s
[INFO] 10.244.2.178:50296 - 19935 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000259053s
[INFO] 10.244.2.178:56921 - 54696 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000192664s
[INFO] 10.244.2.178:58769 - 34309 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000200961s
[INFO] 10.244.1.29:54837 - 52745 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000216434s
[INFO] 10.244.1.29:33491 - 30389 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000388391s
[INFO] 10.244.1.29:40958 - 29042 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.0002254s
[INFO] 10.244.1.28:37531 - 12673 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000227411s
[INFO] 10.244.1.28:48078 - 22623 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000367318s
[INFO] 10.244.1.28:57603 - 20294 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000248027s
[INFO] 10.244.1.28:57527 - 989 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000368813s
[INFO] 10.244.1.29:46132 - 54351 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000220067s
[INFO] 10.244.1.29:33929 - 52410 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000424997s
[INFO] 10.244.1.29:55192 - 7591 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000200708s
[INFO] 10.244.2.178:48877 - 43492 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000343582s
[INFO] 10.244.1.28:40003 - 29135 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000357105s
[INFO] 10.244.1.28:33483 - 8737 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000626851s
[INFO] 10.244.1.28:57166 - 18765 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000242408s
[INFO] 10.244.2.178:34438 - 12202 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000224671s
[INFO] 10.244.2.178:58957 - 29352 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000376103s
[INFO] 10.244.2.178:40236 - 21342 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000201854s
[INFO] 10.244.1.28:60029 - 46350 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000242994s
[INFO] 10.244.1.28:41902 - 56082 "A IN agnhost-replica.svc.cluster.local. udp 51 false 512" NXDOMAIN qr,aa,rd 144 0.000511739s
[INFO] 10.244.1.28:59457 - 28446 "AAAA IN agnhost-replica.svc.cluster.local. udp 51 false 512" NXDOMAIN qr,aa,rd 144 0.000648378s
[INFO] 10.244.1.28:53296 - 44225 "AAAA IN agnhost-replica.cluster.local. udp 47 false 512" NXDOMAIN qr,aa,rd 140 0.000335926s
[INFO] 10.244.1.28:56325 - 47059 "A IN agnhost-replica.cluster.local. udp 47 false 512" NXDOMAIN qr,aa,rd 140 0.000436334s
[ERROR] plugin/errors: 2 agnhost-replica. A: dial udp [2001:4860:4860::8844]:53: connect: network is unreachable
[INFO] 10.244.2.178:43150 - 29094 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000337387s
[INFO] 10.244.2.178:53516 - 44539 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000079666s
[INFO] 10.244.2.178:57379 - 34561 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000102313s
[INFO] 10.244.2.178:37844 - 19602 "AAAA IN agnhost-primary.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.00012458s
[INFO] 10.244.2.178:32808 - 61540 "A IN agnhost-primary.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000369842s
[INFO] 10.244.2.178:59627 - 1643 "A IN agnhost-primary.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000166278s
[INFO] 10.244.2.178:53739 - 41019 "AAAA IN agnhost-primary.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000263972s
[INFO] 10.244.1.28:47813 - 59338 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000193842s
[INFO] 10.244.1.28:50530 - 47382 "A IN agnhost-replica.svc.cluster.local. udp 51 false 512" NXDOMAIN qr,aa,rd 144 0.000431419s
[INFO] 10.244.1.28:59437 - 52494 "AAAA IN agnhost-replica.cluster.local. udp 47 false 512" NXDOMAIN qr,aa,rd 140 0.000099576s
[INFO] 10.244.1.28:48821 - 10446 "A IN agnhost-replica.cluster.local. udp 47 false 512" NXDOMAIN qr,aa,rd 140 0.000078013s
[ERROR] plugin/errors: 2 agnhost-replica. A: read udp 10.244.2.144:48922->172.18.0.1:53: i/o timeout
[ERROR] plugin/errors: 2 agnhost-replica. AAAA: read udp 10.244.2.144:43747->172.18.0.1:53: i/o timeout
[INFO] 10.244.1.29:44101 - 12643 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000359534s
[INFO] 10.244.1.29:39206 - 32862 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000460431s
[INFO] 10.244.1.29:39302 - 35518 "AAAA IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 157 0.000238004s
[INFO] 10.244.1.29:60549 - 23172 "A IN agnhost-replica.kubectl-9597.svc.cluster.local. udp 64 false 512" NOERROR qr,aa,rd 126 0.000455453s
[INFO] 10.244.1.40:38719 - 12995 "AAAA IN externalname-service.services-245.svc.cluster.local. udp 69 false 512" NOERROR qr,aa,rd 162 0.000397268s
[INFO] 10.244.1.40:38719 - 11935 "A IN externalname-service.services-245.svc.cluster.local. udp 69 false 512" NOERROR qr,aa,rd 136 0.000664761s
[INFO] 10.244.1.40:35228 - 59538 "AAAA IN externalname-service.services-245.svc.cluster.local. udp 69 false 512" NOERROR qr,aa,rd 162 0.000224104s
[INFO] 10.244.1.40:35228 - 58646 "A IN externalname-service.services-245.svc.cluster.local. udp 69 false 512" NOERROR qr,aa,rd 136 0.000342169s

Collected by turning:

log . { 
class success
class denial
}

@jayunit100
Copy link
Contributor Author

jayunit100 commented May 4, 2021

as a smoke test, heres what it sais when i curl kubernetes from a pod:

[INFO] 10.244.2.190:49418 - 45459 "AAAA IN kubernetes.default.svc.cluster.local. udp 54 false 512" NOERROR qr,aa,rd 147 0.000193214s
[INFO] 10.244.2.190:49418 - 44556 "A IN kubernetes.default.svc.cluster.local. udp 54 false 512" NOERROR qr,aa,rd 106 0.000212239s

Thus, the kubernetes rule seems to be working - so at least some notion of DNS is valid.
The question then winds up being ~ why is it that all the service tests are failing?

@jayunit100
Copy link
Contributor Author

im starting to wonder:

is it possible that loopback services dont work ( or do work )

for example , coredns seems to work 50% of the time , when im using calico as the CNI.

maybe thats because calico as CNI allowed multinode networking to be working....

Im goint to try an experiment of increasing the node count....

@mcluseau
Copy link
Contributor

mcluseau commented May 4, 2021

thanks for testing, yeah NodePorts, I've not implemented that yet, but it shouldn't be too hard

@jayunit100
Copy link
Contributor Author

ahhhh yes ok that explains it :)

@jayunit100
Copy link
Contributor Author

Ok, the remaining tests:

  • DNS resolution
  • switch session affinity for ClusterIPs
  • DNS for services
  • DNS for ExternalName Services

@jayunit100
Copy link
Contributor Author

ill separate that into separate issues.

@jayunit100 jayunit100 changed the title Get the 16 service dependent Conformance results passing for hack/ tests Add NodePort Support to KPNG May 5, 2021
@jayunit100 jayunit100 changed the title Add NodePort Support to KPNG NFT: Add NodePort Support to KPNG May 5, 2021
VivekThrivikraman-est pushed a commit to jayunit100/kpng that referenced this issue Jul 11, 2021
jayunit100 pushed a commit to jayunit100/kpng that referenced this issue Oct 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants