-
Notifications
You must be signed in to change notification settings - Fork 17
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
Migrate Emulator Pilot to native K8s #72
Comments
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
Started working on deploying NS1 and NS2 on k8s: https://github.com/sonata-nfv/tng-industrial-pilot/wiki/Deploying-the-service-on-Kubernetes To ensure all VNF containers keep running in k8s, they need a different Once all VNFs run on k8s, the next step is to configure the networking and connection of the VNFs within k8s. |
Currently, all pods are deployed fine at the beginning, but then keep crashing every now and then: $ kubectl get pods
NAME READY STATUS RESTARTS AGE
sm-ns1-deployment-5564965dcc-n5d57 2/3 CrashLoopBackOff 13 76m
sm-ns2-deployment-67c8f6574f-9zb82 2/2 Running 0 76m It seems like this is the CC processor: |
Connecting cc processor to cc broker within NS1 worked: Both are running inside the same pod and the processor can simply subscribe to the broker at localhost:1883 as before Connecting the MDC in NS2 to the CC broker in NS1 doesn't work yet because they are running in different pods. Next time, I'll have to follow the debug guide here to figure out what the problem is. Testing the connection works best by logging into the CC broker container and to the other VNF (eg, MDC) and using the |
Update/Todo: Put all containers/CDUs in separate pods such that they could be scaled independently. Also for SP to allow easy mapping of descriptors to pods, using VDU = pod. For example: CC could have 3x Broker CDU and 5x Processor CDU and 1x DB CDU Apparently, this means, I have to split the Kubernetes descriptors into separate deployments and services for each CDU: https://stackoverflow.com/a/43220561/2745116 |
Connection between containers works now (with microk8s DNS enabled). MQTT works also manually. Next:
|
Next up: Move digital twin outside of NS2 and even outside of Kubernetes deployment. Start it outside as normal docker container trying to access the MDC running inside the k8s deployment. Similar to a real machine that would use NS2 from the outside. Discuss with Manuel how to start in privileged mode such that the Samba file share works. On k8s side, use |
Started wiki page on how to deploy the DT as Docker container outside of K8s (and later also on how to connect it): https://github.com/sonata-nfv/tng-industrial-pilot/wiki/Connecting-the-digital-twin Problem: The current Note: The Docker run command doesn't work on Windows for some reason. But works on Ubuntu. This was due Windows line endings in the |
I figured out how to assign and expose fixed ports using k8s' Unfortunately, it still doesn't seem to work. The MDC still says "Error no EM63 response file was found! Retry!". Not sure if this is because the k8s service didn't work properly or due to some other problem. Also not sure how to debug. Wait: I forgot to set the Samba host IP when starting the DT! By default this points to a fixed IP in the emulator. It should be the IP of the cluster node, which exposes the MDC's ports ( |
Updated todos above according to call and updated wiki page: https://github.com/sonata-nfv/tng-industrial-pilot/wiki/Integration-with-SP |
Using a Workaround is to install a load balancer: |
This is an intermediate step before the pilot is deployed on K8s using 5GTANGO SP, we first want to have a version that is directly deployed on K8s without 5GTANGO.
TODOs
See corresponding wiki entry
The text was updated successfully, but these errors were encountered: