[OOD-users] Getting started with OOD

Franz, Eric efranz at osc.edu
Thu Aug 2 10:09:13 EDT 2018


Kevin,

This is the code that generates the random password:

https://github.com/OSC/ood_core/blob/d21a1d62a41b1a3e6d05a28cfe1100bb931597f9/lib/ood_core/batch_connect/template.rb#L145-L148

tr -cd '[:alnum:]' < /dev/urandom 2> /dev/null | head -c${1:-32}

Kevin,

Glad you figured it out! 

Perhaps we should use a different approach that would reliably work, even when the locale on the compute nodes is en_US instead of en_US.UTF-8. Do you have any recommendations?

I opened a related issue https://github.com/OSC/ood_core/issues/91 to track this work. The method we currently use is https://github.com/OSC/ood_core/blob/d21a1d62a41b1a3e6d05a28cfe1100bb931597f9/lib/ood_core/batch_connect/template.rb#L145-L148 and that bash code is

tr -cd '[:alnum:]' < /dev/urandom 2> /dev/null | head -c${1:-32}

Thanks,
Eric
---
Eric Franz, Senior Web & Interface App Engineer
Ohio Supercomputer Center
An Ohio Technology Consortium (OH-TECH) Member
1224 Kinnear Road
Columbus, OH 43212
email: efranz at osc.edu

On 8/2/18, 9:53 AM, "OOD-users on behalf of Kevin M. Hildebrand" <ood-users-bounces at lists.osc.edu on behalf of kevin at umd.edu> wrote:

    So it looks like the root cause of this is that the locale on the
    compute node was set to 'en_US' instead of 'en_US.UTF-8'.  Making that
    change solves the problem.
    
    Thanks,
    Kevin
    On Thu, Aug 2, 2018 at 8:21 AM Kevin M. Hildebrand <kevin at umd.edu> wrote:
    >
    > It looks like whatever's generating the passwords for VNC and
    > Websockets is putting non-printable ASCII characters in them (which
    > look like they're being interpreted as UTF8, even though they're not
    > valid UTF8 characters.)
    >
    > host: compute-0-0.xxx.yyy.zzz
    > port: 5902
    > password: �wA2XcYm
    > display: 2
    > websocket: 26532
    > spassword: �s�r�oym
    >
    > 'password' in hex: e9 77 41 32 58 63 58 6d
    > 'spassword' in hex: de 73 d9 72 c2 6f 78 6d
    >
    > Now I'll look to see if I can find how these are generated.
    >
    > Thanks,
    > Kevin
    > On Wed, Aug 1, 2018 at 8:21 PM Jeremy Nicklas <jeremywnicklas at gmail.com> wrote:
    > >
    > > Hi Kevin,
    > >
    > > It has been awhile since I worked with the code, but this looks like it may be caused by a corrupt connection file that was generated by one of your running interactive session jobs. When an Interactive Session starts running on an allocated cluster node it will attempt to create a `connection.yml` file in its staging directory. This file holds all the necessary information (e.g., host, port, and VNC password) necessary for the user to connect back to the session through the Dashboard. The Dashboard will attempt to parse this file using the Ruby YAML parsing library `psych` and generate a link that the user can use to connect to their running session.
    > >
    > > You can find these connection files under the staging directory for each of the running Interactive Sessions. I don't have access to my data anymore, so working from memory you can probably find it under (give or take a few mistakes in directories):
    > >
    > > ~/ondemand/data/sys/dashboard/batch_connect/sys/bc_desktop/<cluster>/output/<unique_session_id>/connection.yml
    > >
    > > or you can get fancy and do:
    > >
    > > $ find ~/ondemand/data -name connection.yml
    > >
    > > You will want to read the contents of those files and look for any odd characters that stand out. If you can track down the offending file that will help narrow down the bug and a possible fix.
    > >
    > > -Jeremy Nicklas
    > >
    > >>
    > >> Hello, I've just done an initial install of OOD, and for the most
    > >> part, I have it working.
    > >>
    > >> However, when running a interactive desktop, I'm getting an error when
    > >> I click on the 'My Interactive Sessions' button on the dashboard.
    > >>
    > >> I'm seeing an 'Internal Server Error' with text that starts with:
    > >>
    > >> #<ActionView::Template::Error: (<unknown>): invalid trailing UTF-8
    > >> octet at line 1 column 1>
    > >>
    > >> /opt/rh/rh-ruby22/root/usr/share/ruby/psych.rb:370:in `parse'
    > >> /opt/rh/rh-ruby22/root/usr/share/ruby/psych.rb:370:in `parse_stream'
    > >> /opt/rh/rh-ruby22/root/usr/share/ruby/psych.rb:318:in `parse'
    > >> /opt/rh/rh-ruby22/root/usr/share/ruby/psych.rb:284:in `safe_load'
    > >> /var/www/ood/apps/sys/dashboard/app/models/batch_connect/session.rb:396:in
    > >> `connect
    > >> ....  and many more lines.
    > >>
    > >> In my PUN error log file, I'm seeing similar-
    > >> App 9021 stdout: [2018-08-01 15:31:28 -0400 ]  INFO "execve =
    > >> [{\"SLURM_CONF\"=>\"/etc/slurm/slurm.conf\"}, \"/usr/bin/squeue\",
    > >> \"--all\", \"--states=all\", \"--noconvert\", \"-o\",
    > >> \"%a\\u001F%A\\u001F%b\\u001F%B\\u001F%c\\u001F%C\\u001F%d\\u001F%D\\u001F%e\\u001F%E\\u001F%f\\u001F%F\\u001F%g\\u001F%G\\u001F%h\\u001F%H\\u001F%i\\u001F%I\\u001F%j\\u001F%J\\u001F%k\\u001F%K\\u001F%l\\u001F%L\\u001F%m\\u001F%M\\u001F%n\\u001F%N\\u001F%o\\u001F%O\\u001F%q\\u001F%P\\u001F%Q\\u001F%r\\u001F%S\\u001F%t\\u001F%T\\u001F%u\\u001F%U\\u001F%v\\u001F%V\\u001F%w\\u001F%W\\u001F%x\\u001F%X\\u001F%y\\u001F%Y\\u001F%z\\u001F%Z\",
    > >> \"-j\", \"190\"]"
    > >> App 9021 stdout: [2018-08-01 15:31:28 -0400 ]  INFO "method=GET
    > >> path=/pun/sys/dashboard/batch_connect/sessions format=html
    > >> controller=BatchConnect::SessionsController action=index status=500
    > >> error='ActionView::Template::Error: (<unknown>): invalid trailing
    > >> UTF-8 octet at line 1 column 1' duration=35.72 view=0.00"
    > >> App 9021 stdout: [2018-08-01 15:31:28 -0400 ] FATAL
    > >> "ActionView::Template::Error ((<unknown>): invalid trailing UTF-8
    > >> octet at line 1 column 1):\n    1: <%= session_panel session do %>\n
    > >>  2:   <%= session_view session do %>\n    3:     <%\n    4:       if
    > >> session.running?\n  app/models/batch_connect/session.rb:396:in
    > >> `connect'\n  app/models/batch_connect/session.rb:405:in `to_hash'\n
    > >> app/helpers/batch_connect/sessions_helper.rb:3:in `session_panel'\n
    > >> app/views/batch_connect/sessions/_panel.html.erb:1:in
    > >> `_app_views_batch_connect_sessions__panel_html_erb__2226473861888657584_36164260'\n
    > >>  app/views/batch_connect/sessions/index.html.erb:37:in
    > >> `_app_views_batch_connect_sessions_index_html_erb__2670672794125958996_36346460'"
    > >>
    > >>
    > >> Any ideas on what I should look at?
    > >> Thanks for putting together what looks like it's going to be an
    > >> extremely useful tool for our users!
    > >>
    > >> Thanks,
    > >> Kevin
    > >>
    > >> --
    > >> Kevin Hildebrand
    > >> University of Maryland Division of IT
    > >> _______________________________________________
    > >> OOD-users mailing list
    > >> OOD-users at lists.osc.edu
    > >> https://lists.osu.edu/mailman/listinfo/ood-users
    > >
    > >
    > > _______________________________________________
    > > OOD-users mailing list
    > > OOD-users at lists.osc.edu
    > > https://lists.osu.edu/mailman/listinfo/ood-users
    _______________________________________________
    OOD-users mailing list
    OOD-users at lists.osc.edu
    https://lists.osu.edu/mailman/listinfo/ood-users
    



More information about the OOD-users mailing list