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
Discovering Prosys OPC UA simulation server passes in DNS instead of IP address, making the server not discoverable #555
Comments
I'm interested in taking this! But have some questions on the design: My understanding is that we are using the discoveryURL from the opc server, which in this case the server passes In the function get_discovery_url_from_application_description, we are only getting the url if it is |
I'd recommend reading the OPC UA specification -- likely the discovery one: https://opcfoundation.org/developer-tools/documents/view/169. You will need to create a free member account to read the public documents |
Many servers do not return the discoveryUrl based on the Url used by a client to call GetEndpoints. (Not according to spec but thats reality). |
@mregen thanks for the details! So in the example of Prosys OPC UA server, let's say we found a server in in this PR, changes are made to Akri so that it will log both |
Describe the bug
A clear and concise description of what the bug is.
Running a k3s cluster on AKS Edge Essentials with flannel as the CNI and a simulation OPC UA server from Prosys.
When deployed using the standard
opc.tcp://<IP address>:<port>/
for the discoveryURL, upon inspecting the logs of the monitoring pod, it seems that Akri tries to pass in the DNS `opc.tcp://OPCTest: instead of the IP address as expected.Output of
kubectl get pods,akrii,akric -o wide
All pods are running as it should, there are no akri instances showing up.
Kubernetes Version: [e.g. Native Kubernetes 1.19, MicroK8s 1.19, Minikube 1.19, K3s]
To Reproduce
Steps to reproduce the behavior:
Expected behavior
The Prosys OPC UA simulation server is discovered and show up when we run
kubectl get akrii
Possible solution
I think this TODO item (line 138) in the code is the change we need to make to fix this.
The text was updated successfully, but these errors were encountered: