Closed Nandinski closed 1 month ago
Hi @Nandinski, The dashboard code is correct, the functional part of the website is later injected into the container. Can you show the output of docker logs god_***(id of god container)?
Oh. I'm curious as to why it was decided to inject the dashboard code later. That's interesting. After confirmation that the code was correct, I double-checked everything and found the issue. I'm running docker swarm with two hosts, and the hosts had the topology file in different locations, causing the mount on one of the hosts to fail when both hosts try to mount using the same path. After using the same path on both hosts, it seems to work! Maybe it's worth it to add a note about this in the website tutorial: https://kollaps.dev/docker.html
One more thing. In the 'active flows' tab of the dashboard, there's an Error column; what does it represent? In the iperf3 test, these values oscillate and sometimes reach 100%. I could not find details about the dashboard values. Maybe I missed it.
I also see some of these messages in the logs of the god container. Are these safe to ignore?
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
RUST EC - server : In init: origin is server dest is server latency is 10 links are [13, 8] bw is 100000 drop is 0
RUST EC - server : In init: origin is server dest is client1 latency is 25 links are [11, 7, 1] bw is 50000 drop is 0
RTNETLINK answers: Invalid argument
We have an error talking to the kernel
Thank you for the help!
So that it runs on the host namespace and shares the filesystem with the other emulation cores to allow for metadata to be shared.
You are completely correct I will add it to the tutorial, thanks for pointing it out!
The link state tab (I think you are referring to this) is a prototype to see if the accuracy of the emulation is correct. It should not be displayed yet since it is not finished, the value is the percentage deviation of the total bandwidth available on the link from the actual bandwidth on the link (It does not account for sharing, thus it is not really useful yet).
Yes those errors can be ignored.
Got it. Thank you very much for the answers!
I'm unable to run the example from README on docker swarm. After following the instructions, the docker stack service is brought up, and all the services are running. However, the dashboard container does not start the website from which we can start the experiment. The dashboard image built from calling
./KollapsAppBuilder
creates an image that only runs a while true loop. https://github.com/miguelammatos/Kollaps/blob/bc744a6c7fe746d415128af09282eb83c9683454/examples/KollapsAppBuilder#L68https://github.com/miguelammatos/Kollaps/blob/bc744a6c7fe746d415128af09282eb83c9683454/examples/utils/dashboard/Dockerfile#L1-L24
https://github.com/miguelammatos/Kollaps/blob/bc744a6c7fe746d415128af09282eb83c9683454/examples/utils/dashboard/dashboard.sh#L1-L8
Given this current code, the dashboard does nothing, so the website is not available, and the experiments cannot be started.
There is another dashboard in
dockerfiles/Dashboard
, but this one seems to target the baremetal deployment with Kubernetes.https://github.com/miguelammatos/Kollaps/blob/bc744a6c7fe746d415128af09282eb83c9683454/dockerfiles/Dashboard#L19-L23
Is there any quick fix for this?