Launches a Dask Gateway cluster in K8s and joins HTCondor workers to it
Project description
HTCdaskGateway
- A Dask Gateway client extension for heterogeneous cluster mode combining the Kubernetes backend for pain-free scheduler networking, with COFFEA-powered HTCondor workers and/or OKD [coming soon].
- Latest
is installed by default and deployed to the COFFEA-DASK notebook on EAF (https://analytics-hub.fnal.gov). A few lines will get you going!
- The current image for workers/schedulers is: coffeateam/coffea-dask-cc7-gateway:0.7.12-fastjet-3.3.4.0rc9-g8a990fa
Basic usage @ Fermilab EAF
- Make sure the notebook launched supports this functionality (COFFEA-DASK notebook)
from htcdaskgateway import HTCGateway
gateway = HTCGateway()
cluster = gateway.new_cluster()
cluster
# Scale my cluster to 5 HTCondor workers
cluster.scale(5)
# Obtain a client for connecting to your cluster scheduler
# Your cluster should be ready to take requests
client = cluster.get_client()
client
# When computations are finished, shutdown the cluster
cluster.shutdown()
Other functions worth checking out
- This is a multi-tenant environment, and you are authenticated via JupyterHub Oauth which means that you can create as many* clusters as you wish
- To list your clusters:
# Verify that the gateway is responding to requests by asking to list all its clusters
clusters = gateway.list_clusters()
clusters
- To connect to a specific cluster from the list:
cluster = gateway.connect(cluster_name)
cluster
cluster.shutdown()
- To gracefully close the cluster and remove HTCondor worker jobs associated to it:
cluster.shutdown()
- There are widgets implemented by Dask Gateway. Make sure to give them a try from your EAF COFFEA notebook, just execute the the
clientandclustercommands (after properly initializing them) in a cell like:
-------------
cluster = gateway.new_cluster()
cluster
< Widget will appear after this step>
-------------
client = cluster.get_client()
client
< Widget will apear after this step >
-------------
cluster
< Widget will appear after this step >
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
htcdaskgateway-0.1.25.tar.gz
(9.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file htcdaskgateway-0.1.25.tar.gz.
File metadata
- Download URL: htcdaskgateway-0.1.25.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e00da02e02f0d46fc1e09af2fdb4ad07877c432dbfb15e302e6131158e122f24
|
|
| MD5 |
6b3d4ec2bde7587a59cb37507abe8f8c
|
|
| BLAKE2b-256 |
0350d55c08dfd3620682a5628d4f53c38ffe6bf0f09c0f3852050d6d136300e5
|
File details
Details for the file htcdaskgateway-0.1.25-py3-none-any.whl.
File metadata
- Download URL: htcdaskgateway-0.1.25-py3-none-any.whl
- Upload date:
- Size: 12.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a8fba7def160f00a6f4e9367d388c05c58529b168f5c31291ea441dc86a4fd11
|
|
| MD5 |
dc55be55c409f48964b8d6a9d5855ea8
|
|
| BLAKE2b-256 |
391f52307262f4d70feb7e9a3dc1f85a081ac55d6507e049591b23cafca56c81
|