Skip to content

dask-scheduler --no-dashboard outputs a dashboard URL and starts a webserver #5634

@lesteve

Description

@lesteve

Running dask-scheduler --no-dashboard still outputs a dashboard URL and runs a webserver.

What happened:

Execute the following command in a terminal:

dask-scheduler --no-dashboard

Output shows a dashboard URL in the last line:

distributed.scheduler - INFO - -----------------------------------------------
distributed.scheduler - INFO - -----------------------------------------------
distributed.scheduler - INFO - Clear task state
distributed.scheduler - INFO -   Scheduler at:   tcp://192.168.0.11:8786
distributed.scheduler - INFO -   dashboard at:                     :8787

Going to localhost:8787 you get a 404
image

What you expected to happen:

I was expecting no dashboard URL to be shown in the output and no webserver to be started when using --no-dashboard.

Anything else we need to know?:

I have a possible fix ready with test, but I thought I would open an issue first, in case there was a good reason for this behaviour I may have missed. For now, I can two main options:

  • the behaviour is OK enough / not worth fixing. You could argue than having a webserver with a 404 may be more user-friendly than a generic browser page saying "Unable to connect" since the latter can happen for a variety of reasons
  • we don't want a dashboard url to be shown (or equivalently a 'dashboard' service in the scheduler) nor a webserver to be started (this is what I have implemented in my fix)

Another possible option:

  • make the 404 error more informative (similarly to what is happening when bokeh is not installed), e.g. something like "the full dashboard is not available, likely because you have used dashboard=False in your Dask scheduler" or dask-scheduler --no-dashboard

Edit: dask-worker --no-dashboard has a similar behaviour but this can be left for another issue / PR.

Environment:

  • Dask version: development version from main (also in version 2021.12.0 for completeness)
  • Python version: 3.9
  • Operating System: Linux
  • Install method (conda, pip, source): source

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions