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

Full topology view doesn't appear on the graph #2274

Open
vosmax opened this issue Oct 15, 2020 · 4 comments
Open

Full topology view doesn't appear on the graph #2274

vosmax opened this issue Oct 15, 2020 · 4 comments

Comments

@vosmax
Copy link

vosmax commented Oct 15, 2020

I've rolled up Skydive v 0.26.0 (latest as well) in my k8s cluster, port-forwarded to the analyzer pod, open the UI in a web browser and I couldn't able to see the full topology graph, only a black square. After some time appeared 2 pop-up windows: Disconnected -> Connected
In the log stream of the analyzer, I caught this error:

2020-10-15T07:18:35.076Z ERROR websocket/client.go:409 (*Conn).run skydive-analyzer-5b5f6b748b-vk8fl: Error while sending message to &{RWMutex:{w:{state:0 sema:0} writerSem:0 readerSem:0 readerCount:0 readerWait:0} ConnStatus:{ServiceType:webui ClientProtocol:json Addr:XXX.XXX.XXX.XXX Port:54760 Host:skydive-analyzer-5b5f6b748b-vk8fl State:0xc01d325680 URL:http://XXX.XXX.XXX.XXX:54760/ws/subscriber?x-client-type=webui Headers:map[X-Real-Ip:[XXX.XXX.XXX.XXX] X-Forwarded-Port:[443] X-Forwarded-For:[XXX.XXX.XXX.XXX, XXX.XXX.XXX.XXX] X-Amzn-Trace-Id:[Root=1-5f87f3ff-0815e3e08782341c1af9bb4d] Sec-Websocket-Version:[13] Sec-Websocket-Key:[h4iXdprfPvtc0ODB2Vgbug==] X-Forwarded-Host:[mydomain.net] Connection:[upgrade] X-Forwarded-Proto:[https] Cache-Control:[no-cache] Accept-Language:[en-GB,en-US;q=0.9,en;q=0.8] Upgrade:[websocket] Pragma:[no-cache] User-Agent:[Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.80 Safari/537.36] Origin:[https://mydomain.net] Sec-Websocket-Extensions:[permessage-deflate; client_max_window_bits]] ConnectTime:2020-10-15 07:18:22.781431974 +0000 UTC m=+89.357281898 RemoteHost:XXX.XXX.XXX.XXX:54760 RemoteServiceType:} flush:0xc00c3fcae0 send:0xc021dcf920 queueSize:10000 quit:0xc0115268c0 wg:{noCopy:{} state1:[0 2 0]} conn:0xc01059bce0 running:{v:true} pingTicker:0xc0218a99f0 eventHandlers:[0xc0218a99a0 0xc00000f4c0] wsSpeaker:0xc0218a99a0 writeCompression:true messageType:1 logger:0xc000500ec0}: writev tcp XXX.XXX.XXX.XXX:8082->XXX.XXX.XXX.XXX:54760: i/o timeout

If I apply a filter which decreases the number of objects some objects appears on the graph

@safchain
Copy link
Collaborator

I think you took the right approach using filter. You can also try to tweak the websocket parameter: https://github.com/skydive-project/skydive/blob/master/etc/skydive.yml.default#L27-L44

You can also give a try to at the new version of the UI, still in progress but should be better:
https://github.com/skydive-project/skydive-ui

@vosmax
Copy link
Author

vosmax commented Oct 15, 2020

@safchain Thank you for the quick response!
I've tried to run skydive/skydive-ui:latest before, but it failed with error. It's in the development status, I've decided don't mention it.

internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module '/usr/src/skydive-ui/analyzer'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)

So I suppose I need to create a configmap for the analyzer deployment to apply tweaks but is there a way to do it through environment variables?

By the way, the filter doesn't give much performance - I've got disconnections as well

@safchain
Copy link
Collaborator

All the configuration parameters are available via environment variable, for ex: for the ws.ping_delay is available with SKYDIVE_WS_PING_DELAY

I just ran the latest image of the skydive-ui without any issue. Is it during the container start or while using the UI ?

You could you try just like this
docker run -p 8080:8080 skydive/skydive-ui
Point your navigator to http://localhost:8080/login so that you can specify the analyzer endpoint.

@vosmax
Copy link
Author

vosmax commented Oct 16, 2020

I've replaced the image in the Deployment manifest in the example. I have an interest in my k8s cluster flows. locally there are no issues

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