[nova] Session Recording for Feedback

Sean Mooney smooney at redhat.com
Fri Sep 4 11:02:54 UTC 2020


On Thu, 2020-09-03 at 19:11 +0000, Apsey, Christopher wrote:
> Nova supports using the websockify -record functionality to capture frames sent over arbitrary console sessions.
am that is an overstatement of novas capablity.
you may be able to use -record but that is not a deliberate feature that we support as far as i am aware.
we do not have a rest api for this functionality so ist not consumable by non admins that dont have access to the host.
the capability is really an implematnion detail that is not well deocumented and not part fo the public api. so i would
not frame it as nova supports this usecase more that the config option was just added when nova-novncproce was brought
back into nova in https://github.com/openstack/nova/commit/13871ad4f39361531dff1abd7f9257369862cccc

its proably something that never should have existed in the nova tree. suspect it was added by the novnc folks
when the nova novncproxy code was in the novnc repo and it was included in our repo to have parity when we imported it.
so its an option that still exits but i like me im sure its news to others and i dont think its something we would want
to continue to support in its current form.

>   Currently, the record = path/to/file option in nova.conf saves these sessions on nova-(spice|vnc)proxy endpoints at
> the specified path in the format of /path/to/file.(session number).  These session numbers appear to be incrementally
> created starting from 1 and don't really have an association with their respective instance from what I can tell.  It
> would be useful to have these files saved using the instance UUID instead.
you are refering to this options
https://docs.openstack.org/nova/latest/configuration/config.html#DEFAULT.record
https://github.com/openstack/nova/blob/master/nova/conf/novnc.py#L19-L24

i assume that you would prefer that instead of recoding the info via session id it was using the instace uuid or a
combination of both for simple correalation. im more of thet mind that now that we have observed this still exists we
proably should deprecated it and remove it rather then enhance it

> 
> Ignoring that minor problem, playing back these files is a challenge.  I've tried using noVNCs vnc_playback.html
> function from both the master branch and stable/v0.6 with no luck - it looks like the libraries and the utilities
> haven't been maintained at the same cadence and there are missing functions that the player is expecting.
> 
> My goal here is to be able to capture the activities of students as they progress through various exercises and then
> have instructors be able to go over their work with them after the fact if they have questions.  Has anyone been able
> to do this (or something like this) successfully, or are we just better off trying to do this in-band per instance?
i would suggest doing it in band. it is an interesting usecase ill admit but im not trilled by the idea of having files
recored to the novncproxy host that are never cleaned up. this is off by default so its not a security risk but other
wise it could be a vector to fill the disk of the contoler or novnc proxy host. if we were to properly support this in
nova i would want to see a way to enabel or disable this per instace at the api level an retrive the files possible
storing them to swift or something periodicly at a given size or time interval.  i certenly would want to see size limit
and session limits per instance before considering it supported for production use.

> 
> Chris Apsey
> GEORGIA CYBER CENTER
> 




More information about the openstack-discuss mailing list