Overview:
cps-sshd-student is an ephemeral k8s pod service run by S&E IT for CPS courses. Individual pods may be created/destroyed at any time, and you are never guaranteed to connect to the same pod. Home directories are shared between pods and should be persistent, but this is done as a "best-effort" courtesy to users and should not be relied upon. Home directories may be wiped semesterly/yearly. Faculty, Staff and Students using this service can and should back up any important data using scp or smbclient.
DNS |
cps-sshd-student.se.cmich.edu |
PORT |
30001 |
Authentication:
Authentication is AD-based (globalID and password), and access is controlled through automation that checks student groups in whitelisted course IDs for the current term. Faculty must request that their courses are included in the automation to grant students access to this service.
Network Requirements:
- Any domain-bound, ethernet connected computer (with an ssh client installed)
OR
- A virtual machine in the Citrix virtual lab (with an ssh client installed)
Connecting via ssh:
Assuming an openssh-compatible client is installed and appropriately configured, users can connect using the following syntax, replacing "globalid" with your Global ID:
ssh globalid@cps-sshd-student.se.cmich.edu -p 30001
Most modern operating systems ship with an openssh-compatible client by default. In windows you can use the "ssh" command from a powershell prompt. scp can also be used on the same port to copy data to/from the pods.
Using conda:
conda is installed and is pre-configured with access to a copy of the python environment found on se-jupyterhub. conda needs to be initialized one time by a new user, and then can be used as normal
conda init
The system will prompt you to log out, and then back in. Once you are logged back in, you should see conda prepending an environment string to your bash prompt (base). With conda initialized, you can list the available environments:
conda env list
You can activate any listed environment by typing "conda activate XXXXX", and any python commands after activating will run in the activated environment.
conda activate se-jupyter-kernel-310
Or you run a single command in a given environment like: (replace "COMMAND" with a command)
conda run -n se-jupyter-kernel-310 COMMAND
Activating or otherwise running commands within conda environments will give processes access to a breadth of scientific and computational libraries, which may be required for you to complete coursework. Defer to your instructors on how to use these environments for your courses.
Using rlwrap:
rlwrap is installed and configured in this environment. It is a useful gnu-readline wrapper that adds features to cli applications which lack modern conveniences. for example:
- command history
- arrow-key cursor movement within an unsubmitted line
- ******* password prompts instead of feedback-less reads.
You can use this in front of virtually any interactive cli utility to add the above features and more. This is most commonly recommended along with oracle's sqlplus. For example: (replacing "globalid" with your globalid)
rlwrap sqlplus globalid@cps-orcl4.se.cmich.edu/orcl4