Access HTCondor and the Open Science Pool using a Jupyter Interface
Rachel Lombardi
OSG Research Facilitation Team
February 21, 2023
1
Introductions
2
Research Computing Facilitators are Here to Help!
Showmic Islam
Rachel Lombardi
Mats
Rynge
Christina Koch
3
Before We Start
We welcome questions! To ask questions, please raise your hand, post to the chat, or ask out loud.
Part of this workshop is hands-on! You are welcome to follow along (we will walk through the steps together) or to simply watch.
4
Before We Start
We welcome questions! To ask questions, please raise your hand, post to the chat, or ask out loud.
Part of this workshop is hands-on! You are welcome to follow along (we will walk through the steps together) or to simply watch.
5
The OSPool’s JupyterLab interface is a new feature – all feedback is welcome!
Agenda
Getting Started with the OSPool’s Jupyter Interface
Guest Accounts versus Full Accounts
Explore JupyterLab Interface
Hands-on: HTCondor Job Submission
Next Steps
6
Primary Learning Objective
To explore the OSPool’s Jupyter interface and use it to submit HTCondor jobs.
Learning Outcomes:
7
Getting Started with the �OSPool’s Jupyter Interface�
8
Open an internet browser and enter: https://notebook.ospool.osg-htc.org
9
Log into an OSPool Access Point Using Jupyter
Login using any of the available authentication options. Some choices:
10
Available JupyterLab Options
11
* Offerings subject to change
Available JupyterLab Options
* Offerings subject to change
12
Available
Interfaces
User Accounts
13
Changes depending on the service you used to authenticate with:
Offerings Depend on JupyterLab Env
14
Data Science Includes libraries for data analysis from the Julia, Python, and R communities. Includes the HTCondor command-line utilities and Python bindings.
Basic Includes basic command-line tools. Includes the HTCondor command-line utilities and Python bindings.
Offerings Depend on JupyterLab Env
15
Let’s Launch a
Basic Notebook
Basic Includes basic command-line tools. Includes the HTCondor command-line utilities and Python bindings.
Guest Accounts versus Full Accounts
16
Users with accounts on ap7.ospool.osg-htc.org can access their /home directory using a GUI Jupyter interface or a standard terminal interface
17
Only users with accounts on ap7.ospool.osg-htc.org (not login04/05) have full access accounts
Guest vs. Full Accounts
18
Full Access Accounts
Guest Accounts
Use Cases
19
Full Access Accounts
Good fit for users
Guest Accounts
Good fit for users
Behind the Scenes
20
Full Access Accounts
Guest Accounts
Access Point
Execution Point
Jupyter
condor_submit
Access Point
Execution Point
Jupyter
condor_submit
Execution Point
Execution Point
Execution Point
Execution Point
Execution Point
Open Science Pool
condor_status: prints one execution point slot
condor_status: prints all slots
in the OSPool
Behind the Scenes
21
Full Access Accounts
Guest Accounts
Access Point
Execution Point
Jupyter
condor_submit
Access Point
Execution Point
Jupyter
condor_submit
Execution Point
Execution Point
Execution Point
Execution Point
Execution Point
Open Science Pool
Access + Execution Resources�4 CPU cores
8 GB RAM
10 GB Disk
Access Point Resources
8 CPU cores�16 GB RAM�50 GB Disk (Default)
Explore JupyterLab Interface
22
Offerings Depend on JupyterLab Env
23
Data Science Includes libraries for data analysis from the Julia, Python, and R communities. Includes the HTCondor command-line utilities and Python bindings.
Basic Includes basic command-line tools. Includes the HTCondor command-line utilities and Python bindings.
Offerings Depend on JupyterLab Env
24
Let’s Launch a
Basic Notebook
Basic Includes basic command-line tools. Includes the HTCondor command-line utilities and Python bindings.
Workflow Items of Note
25
Differences | Guest Account | Full Account |
Command `whoami` | Jovyan� | ap7.ospool.osg-htc.org username |
Command `condor_status` | One execution point | All available OSPool execution points |
Command `condor_q -all` | Lists only your (jovyan’s) jobs | Lists all jobs submitted from a standard OSPool access point |
Data staging locations | /home� | /home Future development: /public, /protected |
HTCondor Job Submission
26
Hands-On
27
Open a terminal window and type:�
$ tutorial osg-hostname
$ cd tutorial-osg-hostname
$ ls
print-hostname.sh
hostname.submit
README.md
#!/bin/bash
echo $HOSTNAME
Hands-On
28
Open a terminal window and type:�
$ tutorial osg-hostname
$ cd tutorial-osg-hostname
$ ls
print-hostname.sh
hostname.submit
README.md
HTCondor submit files for Guest Accounts should include `should_transfer_input = YES` for submit files that use relative or absolute paths
Hands-On
29
Guest account output lists hostname of the Jupyter container
$ cat job.*.output | sort | uniq -c
100 jupyter-email-3arachellombardi-40gmail-2ecom
Hands-On
30
Full account output lists hostnames on the OSPool
$ cat job.*.output | sort | uniq -c
1 asx9 2 cc-cpu-01.hpc.siue.edu 1 cc-cpu-06 1 chpc-compute-12-0 1 cit2-c056.mwt2.org 1 cn441 2 compute-0-3.local 1 CRUSH-OSG-C7-10-5-139-154 3 CRUSH-OSG-C7-10-5-254-229 2 d12chas551.crc.nd.edu 2 d12chas580.crc.nd.edu 1 discovery-c14 1 hawk-a220 2 hawk-a621 1 iut2-c390.iu.edu | 4 iut2-c395.iu.edu 2 lnxfarm202.colorado.edu 1 lnxfarm335.colorado.edu 1 n006 2 node0934.palmetto.clemson.edu 9 nodo85 8 OSG-17.local 1 osg-287727-0-fnpc22029.fnal.gov 1 osg-288502-0-fnpc22015.fnal.gov 12 OSG-6.rc.asu.edu 2 uct2-c413.mwt2.org 1 uct2-c431.mwt2.org 6 uct2-c440.mwt2.org 12 uct2-c500.mwt2.org | 2 uct2-c555.mwt2.org 2 uct2-c580.mwt2.org 2 uct2-c636.mwt2.org 1 warlock03 2 warlock07 1 warlock14 1 wizard33 |
Log off
Hub Control Panel
31
File → Hub Control Panel → “Stop my Server” → “Logout”
Next Steps
You are welcome to continue using the Guest Account feature! We encourage you to share it with others to allow them to explore HTCondor and OSG services.
If you would like to request a Full Account, see Requesting an OSPool ap7.ospool.osg-htc.org Account
32
Questions?
33