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

Dask Gateway Start Up Error on EMR Cluster #458

Open
rileyhun opened this issue Nov 15, 2021 · 0 comments
Open

Dask Gateway Start Up Error on EMR Cluster #458

rileyhun opened this issue Nov 15, 2021 · 0 comments

Comments

@rileyhun
Copy link

rileyhun commented Nov 15, 2021

What happened: I am trying to set up Dask Gateway on an EMR cluster following the guidelines specified here. The only difference is that I am not sure how to set up Keberos on EMR, but it says that that part is optional so I'm omitting it from my dask_gateway_config.py. However, I am getting the following error:

[I 2021-11-15 06:44:43.894 DaskGateway] Starting dask-gateway-server - version 0.9.0
[I 2021-11-15 06:44:44.049 DaskGateway] Authenticator: 'dask_gateway_server.auth.SimpleAuthenticator'
[I 2021-11-15 06:44:44.050 DaskGateway] Backend: 'dask_gateway_server.backends.yarn.YarnBackend'
[I 2021-11-15 06:44:44.053 DaskGateway] Generating new api token for proxy
[I 2021-11-15 06:44:44.054 DaskGateway] Starting the Dask gateway proxy...
[I 2021-11-15 06:44:44.056 DaskGateway] Dask gateway proxy started
[I 2021-11-15 06:44:44.056 DaskGateway] - HTTP routes listening at http://:8000
[I 2021-11-15 06:44:44.056 DaskGateway] - Scheduler routes listening at gateway://:8000
[W 2021-11-15 06:44:44.057 Proxy] Unexpected failure fetching routing table, retrying in 0.5s: Get "http://127.0.0.1:40613/api/v1/routes": dial tcp 127.0.0.1:40613: connect: connection refused
[C 2021-11-15 06:44:44.342 DaskGateway] Failed to start gateway, shutting down
Traceback (most recent call last):
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/app.py", line 245, in main
    await self.setup()
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/app.py", line 200, in setup
    await self.backend.setup(self.app)
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/db_base.py", line 856, in setup
    await self.do_setup()
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/yarn.py", line 193, in do_setup
    self.skein_client = await self.async_apply(
  File "/opt/dask-gateway/miniconda/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/yarn.py", line 111, in <lambda>
    return get_running_loop().run_in_executor(None, lambda: f(*args, **kwargs))
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/skein/core.py", line 348, in __init__
    address, proc = _start_driver(security=security,
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/skein/core.py", line 185, in _start_driver
    raise context.ValueError("Keytab must be specified for keytab login")
ValueError: Keytab must be specified for keytab login
[E 2021-11-15 06:44:44.344 DaskGateway] Error while shutting down:
Traceback (most recent call last):
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/app.py", line 245, in main
    await self.setup()
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/app.py", line 200, in setup
    await self.backend.setup(self.app)
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/db_base.py", line 856, in setup
    await self.do_setup()
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/yarn.py", line 193, in do_setup
    self.skein_client = await self.async_apply(
  File "/opt/dask-gateway/miniconda/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/dask_gateway_server/backends/yarn.py", line 111, in <lambda>
    return get_running_loop().run_in_executor(None, lambda: f(*args, **kwargs))
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/skein/core.py", line 348, in __init__
    address, proc = _start_driver(security=security,
  File "/opt/dask-gateway/miniconda/lib/python3.9/site-packages/skein/core.py", line 185, in _start_driver
    raise context.ValueError("Keytab must be specified for keytab login")
ValueError: Keytab must be specified for keytab login

Anything else we need to know?:
dask_gateway_config.py

# Configure the gateway to use YARN as the backend
c.DaskGateway.backend_class = (
    "dask_gateway_server.backends.yarn.YarnBackend"
)

c.SimpleAuthenticator.password = "mypassword"

c.YarnBackend.principal = "dask"

# Specify location of the archived Python environment
c.YarnClusterConfig.localize_files = {
    'environment': {
        'source': 'hdfs:///dask-gateway/example.tar.gz',
        'visibility': 'public'
    }
}
c.YarnClusterConfig.scheduler_setup = 'source environment/bin/activate'
c.YarnClusterConfig.worker_setup = 'source environment/bin/activate'

# Limit resources for a single worker
c.YarnClusterConfig.worker_memory = '4 G'
c.YarnClusterConfig.worker_cores = 2

# Specify the YARN queue to use
c.YarnClusterConfig.queue = 'dask'

Environment:

  • Dask version: 2021.11.0
  • Python version: 3.7.9
  • Install method (conda, pip, source): conda
  • EMR version: 6.2.0
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

1 participant