Hello,
I'm running a dss listenner in a kubernetes pod and the sender is outside of the cluster, I was able to come up with some special networking which allowed me to communicate with the pod outside of the cluster, however, when I do a packet capture, the messages seems to be seding i.e hearbeat and ACKNACK, but no data is displaying on the pod or does it show it in the rti admin console,. the data is being sent over vlan & sometimes I have tried with vvxlan which are essentially related, is there any specific flag that I need to set in the QOS profiles, or is there any configuration that I should be aware of when running a listener inside a pod
Hello,
Can your sender directly send data to the IP address of the listener pod? Typically, when you send and receive data with pods form the outside of the cluster, you need to leverage Real-Time WAN Transport (RTWAN) as you cannot reach pods with the actual IP addresses of the pods. Instead, you should use public IP addresses provided by NodePort or LoadBalancer services. You mentioned you use special networking, so I guess you may not run into this. Did you create any k8s services for your pods? It would be great if you can provide some addtional details of your networking setup.
https://community.rti.com/kb/how-use-real-time-wan-transport
Thanks,
Kyoungho
Hello I made use of both multus which attached an external interface to the pod and use a load balancer wich allowed me to route traffic to my pod from outside of the cluster. However these are the latest eroors I'm getting when the traffic is reaching the node
WARN RTILogger [D100][ENABLE] ndds_TRANSPORT_udpv4_socketfactory_create _receive_socket: invalid port 32414
WARN RTILogger [D100][ENABLE] ndds_TRANSPORT_udpv4_socketfactory_create_recvresource_rrEA:!create socket
Hello,
Can you clarify which interface (external interface or default interface with a load balancer) you want to use for the communications with participants outside of the cluster? For testing with a specific interface, you can use the following configuration to restrict DDS traffic to a speicifc interface.
https://community.rti.com/kb/how-do-i-restrict-rti-connext-use-only-subset-interfaces
If you want to test external communications with the default interface with a load balancer service, you can check out the following example (although it uses RTI Routing Service, it could give you an idea on how to configure with Real-Time WAN Transport).
https://github.com/rticommunity/kubernetes-examples/tree/master/routingservice_rwt
I am not sure how Multus works with k8s services (Cluster IP, NopPort, LoadBalancer), so I would recommend you may want to validate your interfaces with Multus work fine with k8s services.
Kyoungho