https://mediawiki_radwiki_1/wiki//api.php?action=feedcontributions&user=Admin&feedformat=atomradwiki - User contributions [en-gb]2024-03-28T22:13:09ZUser contributionsMediaWiki 1.34.0https://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3819HPC cluster 22023-02-02T02:59:46Z<p>Admin: </p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 10.97.168.102 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 10.97.168.103 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 10.97.168.104 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 10.97.168.105 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 10.97.168.101 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || NA<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster2 in the following ways:<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be use HKU [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.<br />
* The GPU cluster2 are not allowed to access the internet normally, but can be temporarily permitted upon request.|warn}} <br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3818HPC cluster 22023-02-02T02:58:57Z<p>Admin: </p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 10.97.168.102 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 10.97.168.103 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 10.97.168.104 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 10.97.168.105 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 10.97.168.101 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || NA<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster2 in the following ways:<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be use HKU [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn<br />
* The GPU cluster2 are not allowed to access the internet normally, but can be temporarily permitted upon request}} <br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3817HPC cluster 22023-02-02T02:58:13Z<p>Admin: </p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 10.97.168.102 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 10.97.168.103 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 10.97.168.104 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 10.97.168.105 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 10.97.168.101 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || NA<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster2 in the following ways:<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be use HKU [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}.<br />
* The GPU cluster2 are not allowed to access the internet normally, but can be temporarily permitted upon request. <br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3816HPC cluster 22023-02-02T02:57:08Z<p>Admin: </p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 10.97.168.102 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 10.97.168.103 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 10.97.168.104 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 10.97.168.105 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 10.97.168.101 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || NA<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster2 in the following ways:<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be use [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}.<br />
* The GPU cluster2 are not allowed to access the internet normally, but can be temporarily permitted upon request. <br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=VNC_viewer&diff=3815VNC viewer2022-10-23T07:19:46Z<p>Admin: </p>
<hr />
<div>This page contains information on software for using [[VNC]].<br />
<br />
== Windows clients ==<br />
* [https://www.tightvnc.com/ TightVNC]<br />
* [https://www.uvnc.com/ UltraVNC]<br />
* [http://www.realvnc.com/ realVNC]<br />
<br />
== Notes ==<br />
When you install it, choose only the VNC Viewer if given an option. You do not need to install the server.<br />
<br />
The VNC connection can be reversed so your client hosts a server and the remote system then connects to it. The result is the same: the remote desktop appears in a window on the local system. Though our HKU network probably won't need it, it may be useful if there are firewall restrictions.<br />
<br />
For more information for VNC using in different operation system, please refer to https://hpc.dccn.nl/docs/cluster_howto/access-external-ssh.html</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=EA_Server&diff=3814EA Server2022-05-31T21:27:54Z<p>Admin: </p>
<hr />
<div>The Enterprise Access System was made available to our department in late May 2022. It is a product from General Electric and includes a server located in the LG3 MRI unit and a remote PACS storage depot using Hong Kong-based Amazon S3 storage.<br />
<br />
The remote PACS is called HKEA01 and serves as an additional backup endpoint for our department scans. The EA server in our department allows users to access a control panel called the CAEM console. This console can be used to transfer data from one PACS system to another. The EA server also runs it's own PACS server called TESTARCHIVE which can be used, in combination with command line tools, to bulk-retrieve scans from HKEA01<br />
<br />
The specifications of the EA server are as follows:<br />
{| class="wikitable"<br />
|-<br />
| '''Storage''' || 10 TB<br />
|-<br />
| '''OS''' || Windows 11<br />
|-<br />
| '''RAM''' || Unknown<br />
|-<br />
| '''CPU''' || Unknown<br />
|}<br />
<br />
== Accessing the EA server ==<br />
Users must be on a designated terminal at the MRI unit and login with the Windows Remote Desktop feature. Credentials are: <br />
* user: Admin<br />
* ip: 192.xxx.xxx.xxx<br />
<br />
== Accessing the CAEM console ==<br />
Current users must first access the EA server to use the web console. A shortcut is on the desktop. In theory the firewall could be relaxed to allow direct web access from remote clients.<br />
<br />
== Housekeeping protocol for TESTARCHIVE ==<br />
Users should clear existing data before starting new data collection, there are scripts on the desktop to do this.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=EA_Server&diff=3813EA Server2022-05-31T21:27:04Z<p>Admin: </p>
<hr />
<div>The Enterprise Access System was made available to our department in late May 2022. It is a product from General Electric and includes a server located in the LG3 MRI unit and a remote PACS storage depot using Hong Kong-based Amazon S3 storage.<br />
<br />
The remote PACS is called HKEA01 and serves as an additional backup endpoint for our department scans. The EA server in our department allows users to access a control panel called the CAEM console. This console can be used to transfer data from one PACS system to another. The EA server also runs it's own PACS server called TESTARCHIVE which can be used, in combination with command line tools, to bulk-retrieve scans from HKEA01<br />
<br />
The specifications of the EA server are as follwos:<br />
{| class="wikitable"<br />
|-<br />
| Storage || 10TB<br />
|-<br />
| OS || Windows 11<br />
|-<br />
| RAM || Unknown<br />
|-<br />
| CPU || Unknown<br />
|}<br />
<br />
== Accessing the EA server ==<br />
Users must be on a designated terminal at the MRI unit and login with the Windows Remote Desktop feature. Credentials are: <br />
* user: Admin<br />
* ip: 192.xxx.xxx.xxx<br />
<br />
== Accessing the CAEM console ==<br />
Current users must first access the EA server to use the web console. A shortcut is on the desktop. In theory the firewall could be relaxed to allow direct web access from remote clients.<br />
<br />
== Housekeeping protocol for TESTARCHIVE ==<br />
Users should clear existing data before starting new data collection, there are scripts on the desktop to do this.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=EA_Server&diff=3812EA Server2022-05-31T21:21:06Z<p>Admin: Created page with "The Enterprise Access System was made available to our department in late May 2022. It is a product from General Electric and includes a server located in the LG3 MRI unit and..."</p>
<hr />
<div>The Enterprise Access System was made available to our department in late May 2022. It is a product from General Electric and includes a server located in the LG3 MRI unit and a remote PACS storage depot using Hong Kong-based Amazon S3 storage.<br />
<br />
The remote PACS is called HKEA01 and serves as an additional backup endpoint for our department scans. The EA server in our department allows users to access a control panel called the CAEM console. This console can be used to transfer data from one PACS system to another. The EA server also runs it's own PACS server called TESTARCHIVE which can be used, in combination with command line tools, to bulk-retrieve scans from HKEA01<br />
<br />
== Accessing the EA server ==<br />
Users must be on a designated terminal at the MRI unit and login with the Windows Remote Desktop feature. Credentials are: <br />
* user: Admin<br />
* ip: 192.xxx.xxx.xxx<br />
<br />
== Accessing the CAEM console ==<br />
Current users must first access the EA server to use the web console. A shortcut is on the desktop. In theory the firewall could be relaxed to allow direct web access from remote clients.<br />
<br />
== Housekeeping protocol for TESTARCHIVE ==<br />
Users should clear existing data before starting new data collection, there are scripts on the desktop to do this.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Department_datasets&diff=3811Department datasets2022-05-31T21:03:12Z<p>Admin: </p>
<hr />
<div>Students and staff often collect data but don't have the IRB permission to publish the primary dataset. This page documents some of the datasets we've previously collected that may still be available for easy re-use. Be mindful that re-using a dataset may require a new IRB request.<br />
<br />
== Department scans ==<br />
For scans collected by our department the [[EA Server]] provides a way to query and bulk export them.<br />
<br />
<br />
== Datasets ==<br />
Each dataset should have descriptive annotations, e.g.:<br />
* The type of data it contains<br />
* When was it created<br />
* Who created it<br />
* Where is it currently located<br />
<br />
Note that not all datasets need to consist of scans. Spreadsheets, text files and videos may also be important data.<br />
<br />
=== Oesophageal PET CT ===<br />
<br />
{| class="wikitable"<br />
|-<br />
| What || ~100 pretreatment PET/CT scans of + clinical data. OSCC patients. 2008-2017.<br />
Inclusion criteria:<br />
...<br />
|-<br />
| Why || Original Purpose: for predicting mandard score of patients, to avoid surgery.<br />
|-<br />
| When || 2018-2019<br />
|-<br />
| Who || Dr Chiu et al.<br />
|-<br />
| How || EPR review. Scans were transfered from PACS to DVD.<br />
IRB:<br />
...<br />
|-<br />
| Where || On DVD (Dr Chiu) and on HPC (Jurgen).<br />
<br />
|-<br />
| Papers || NA<br />
|}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Department_datasets&diff=3810Department datasets2022-05-31T21:02:49Z<p>Admin: </p>
<hr />
<div>== Rationale ==<br />
Students and staff often collect data but don't have the IRB permission to publish the primary dataset. This page documents some of the datasets we've previously collected that may still be available for easy re-use. Be mindful that re-using a dataset may require a new IRB request.<br />
<br />
== Department scans ==<br />
For scans collected by our department the [[EA Server]] provides a way to query and bulk export them.<br />
<br />
<br />
== Datasets ==<br />
Each dataset should have descriptive annotations, e.g.:<br />
* The type of data it contains<br />
* When was it created<br />
* Who created it<br />
* Where is it currently located<br />
<br />
Note that not all datasets need to consist of scans. Spreadsheets, text files and videos may also be important data.<br />
<br />
=== Oesophageal PET CT ===<br />
<br />
{| class="wikitable"<br />
|-<br />
| What || ~100 pretreatment PET/CT scans of + clinical data. OSCC patients. 2008-2017.<br />
Inclusion criteria:<br />
...<br />
|-<br />
| Why || Original Purpose: for predicting mandard score of patients, to avoid surgery.<br />
|-<br />
| When || 2018-2019<br />
|-<br />
| Who || Dr Chiu et al.<br />
|-<br />
| How || EPR review. Scans were transfered from PACS to DVD.<br />
IRB:<br />
...<br />
|-<br />
| Where || On DVD (Dr Chiu) and on HPC (Jurgen).<br />
<br />
|-<br />
| Papers || NA<br />
|}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=3809Admin guide2022-05-22T12:55:20Z<p>Admin: </p>
<hr />
<div>This page describes the software stack that [[GPU cluster|GPU cluster 1]] runs to provide its end-user services. <br />
<br />
For management purposes the main components to know about are:<br />
* Basic Linux sysadmin practices<br />
* RAID and NFS storage<br />
* Docker and docker-compose<br />
* Some HKU networking architecture <br />
<br />
== Basic cluster management ==<br />
Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
<br />
The nodes synchronise user information via NIS, If the NIS client or the server stops it may prevent SSH login. The main NIS node is cpu1, as such all new user accounts should be created on this node. Common tasks include user creation, setting password their and group, and changing file permissions.<br />
<br />
=== Installation log ===<br />
* X11/Xfce on cpu1 as part of a TigerVNC installation<br />
* MATLAB on cpu1<br />
<br />
=== Setup VNC ===<br />
<nowiki><br />
create vncconfig in /etc/systemd/system (optional, for permanent server)<br />
as user run vncpasswd<br />
cp /etc/X11/Xresources ~/.Xresources<br />
cp /home/utility/xstartup ~/.vnc/xstartup (for custom xfce)<br />
sysctl daemon-reload && start && enable vncservice@:N.service (optional, for permanent server)<br />
</nowiki><br />
Use SSH tunnel, then connect on port 5900+N.<br />
Optionally try `rm -R /tmp/.X*` to clean locks.<br />
Consider restricting number of per-user connections.<br />
<br />
=== Common admin problems ===<br />
<br />
==== Locked out of server ====<br />
When adjusting iptables, set a timed reset using `cron` or `at` so you can get back in. Worst case you will need [[physical access]]. If you haven't touched iptables, it could be an issue with the NIS server. Also make sure firewalld stays disabled.<br />
<br />
==== Lost a docker container or volume ====<br />
Keep in mind `docker-compose down` will stop ''and'' remove containers along with anonymous volumes. Likewise running a container with `--rm` option will remove anonymous dangling volumes.<br />
<br />
== Docker ==<br />
{{Note| Try to use Docker for non-trivial services. Using docker containers allows easier setup, per-user configuration, scaling, and cleanup. The learning curve for basic usage is not high and might be a useful skill in software development. |reminder}}<br />
<br />
Most docker services are split into multiple containers that talk to each other, with one running the service webserver that faces end-users. Docker-compose is a useful tool to configure and start/stop these sets of containers.<br />
<br />
You can print docker containers on host:<br />
<nowiki><br />
sudo docker container ls --all --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Services ===<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition as a container on storage1<br />
* Mediawiki with mariadb as a container on storage1<br />
* Nginx reverse proxy to access the various web services as a container on storage1<br />
* Rstudio server as a container on cpu1<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. <br />
<br />
== HKU Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include services like gitlab, mediawikis, etc.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=3808Admin guide2022-05-22T12:52:33Z<p>Admin: /* Basic cluster management */</p>
<hr />
<div>This page describes the software stack that [[GPU cluster|GPU cluster 1]] runs to provide its end-user services. <br />
<br />
For management purposes the main components to know about are:<br />
* Basic Linux sysadmin practices<br />
* RAID and NFS storage<br />
* Docker and docker-compose<br />
* Some HKU networking architecture <br />
<br />
== Basic cluster management ==<br />
Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
<br />
The nodes synchronise user information via NIS, If the NIS client or the server stops it may prevent SSH login. The main NIS node is cpu1, as such all new user accounts should be created on this node. Common tasks include user creation, setting password their and group, and changing file permissions.<br />
<br />
Installation log:<br />
* X11/Xfce on cpu1 as part of a TigerVNC installation<br />
* MATLAB on cpu1<br />
<br />
== Docker ==<br />
{{Note| Try to use Docker for non-trivial services. Using docker containers allows easier setup, per-user configuration, scaling, and cleanup. The learning curve for basic usage is not high and might be a useful skill in software development. |reminder}}<br />
<br />
Most docker services are split into multiple containers that talk to each other, with one running the service webserver that faces end-users. Docker-compose is a useful tool to configure and start/stop these sets of containers.<br />
<br />
You can print docker containers on host:<br />
<nowiki><br />
sudo docker container ls --all --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Services ===<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition as a container on storage1<br />
* Mediawiki with mariadb as a container on storage1<br />
* Nginx reverse proxy to access the various web services as a container on storage1<br />
* Rstudio server as a container on cpu1<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. <br />
<br />
== HKU Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include services like gitlab, mediawikis, etc.<br />
<br />
=== Setup VNC ===<br />
<nowiki><br />
create vncconfig in /etc/systemd/system (optional, for permanent server)<br />
as user run vncpasswd<br />
cp /etc/X11/Xresources ~/.Xresources<br />
cp /home/utility/xstartup ~/.vnc/xstartup (for custom xfce)<br />
sysctl daemon-reload && start && enable vncservice@:N.service (optional, for permanent server)<br />
</nowiki><br />
Use SSH tunnel, then connect on port 5900+N.<br />
Optionally try `rm -R /tmp/.X*` to clean locks.<br />
Consider restricting number of per-user connections.<br />
<br />
== Common admin problems ==<br />
=== Locked out of server ===<br />
When adjusting iptables, set a timed reset using `cron` or `at` so you can get back in. Worst case you will need [[physical access]]. If you haven't touched iptables, it could be an issue with the NIS server. Also make sure firewalld stays disabled.<br />
<br />
=== Lost a docker container or volume ===<br />
Keep in mind `docker-compose down` will stop ''and'' remove containers along with anonymous volumes. Likewise running a container with `--rm` option will remove anonymous dangling volumes.<br />
<br />
Make regular backups.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=3807Admin guide2022-05-22T12:51:37Z<p>Admin: </p>
<hr />
<div>This page describes the software stack that [[GPU cluster|GPU cluster 1]] runs to provide its end-user services. <br />
<br />
For management purposes the main components to know about are:<br />
* Basic Linux sysadmin practices<br />
* RAID and NFS storage<br />
* Docker and docker-compose<br />
* Some HKU networking architecture <br />
<br />
== Basic cluster management ==<br />
Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
<br />
The nodes synchronise user information via NIS, If the NIS client or the server stops it may prevent SSH login. The main NIS node is cpu1, as such all new user accounts should be created on this node. Common tasks include user creation, setting password their and group,<br />
<br />
Installation log:<br />
* X11/Xfce on cpu1 as part of a TigerVNC installation<br />
* MATLAB on cpu1<br />
<br />
== Docker ==<br />
{{Note| Try to use Docker for non-trivial services. Using docker containers allows easier setup, per-user configuration, scaling, and cleanup. The learning curve for basic usage is not high and might be a useful skill in software development. |reminder}}<br />
<br />
Most docker services are split into multiple containers that talk to each other, with one running the service webserver that faces end-users. Docker-compose is a useful tool to configure and start/stop these sets of containers.<br />
<br />
You can print docker containers on host:<br />
<nowiki><br />
sudo docker container ls --all --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Services ===<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition as a container on storage1<br />
* Mediawiki with mariadb as a container on storage1<br />
* Nginx reverse proxy to access the various web services as a container on storage1<br />
* Rstudio server as a container on cpu1<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. <br />
<br />
== HKU Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include services like gitlab, mediawikis, etc.<br />
<br />
=== Setup VNC ===<br />
<nowiki><br />
create vncconfig in /etc/systemd/system (optional, for permanent server)<br />
as user run vncpasswd<br />
cp /etc/X11/Xresources ~/.Xresources<br />
cp /home/utility/xstartup ~/.vnc/xstartup (for custom xfce)<br />
sysctl daemon-reload && start && enable vncservice@:N.service (optional, for permanent server)<br />
</nowiki><br />
Use SSH tunnel, then connect on port 5900+N.<br />
Optionally try `rm -R /tmp/.X*` to clean locks.<br />
Consider restricting number of per-user connections.<br />
<br />
== Common admin problems ==<br />
=== Locked out of server ===<br />
When adjusting iptables, set a timed reset using `cron` or `at` so you can get back in. Worst case you will need [[physical access]]. If you haven't touched iptables, it could be an issue with the NIS server. Also make sure firewalld stays disabled.<br />
<br />
=== Lost a docker container or volume ===<br />
Keep in mind `docker-compose down` will stop ''and'' remove containers along with anonymous volumes. Likewise running a container with `--rm` option will remove anonymous dangling volumes.<br />
<br />
Make regular backups.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin&diff=3806Admin2022-05-22T12:13:21Z<p>Admin: </p>
<hr />
<div>The [[GPU cluster]] is under our department administration. We have no dedicated staff member to manage it, so currently (April 2020) Cao Peng has root user credentials and collaborates with students to run the cluster.<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Admin !! Period !! Contact<br />
|-<br />
| Cao Peng || Feb 2020-... || caopeng1@hku.hk<br />
|}<br />
<br />
== Site info ==<br />
<!--Number of pages: {{NUMBEROFPAGES}}--><br />
<br />
<br />
Mediawiki version: {{CURRENTVERSION}}<br />
<br />
== See also ==<br />
* [[Admin guide| How-to administer the hpc cluster]]<br />
* [[Physical access]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Diagnostic_Radiology_Wiki&diff=3805Diagnostic Radiology Wiki2022-05-22T12:11:44Z<p>Admin: </p>
<hr />
<div>This wiki belongs to the HKU [https://radiology.hku.hk/ Department of Diagnostic Radiology].<br />
<br />
== Statement of Purpose ==<br />
This wiki contains information on using the department [[Server Overview|computer resources]]. This includes [[guides for new users]], hardware specifications, and technical details for [[Admin|administrators]].<br />
<br />
== Quick links ==<br />
*[[GPU Cluster| Department HPC cluster information]]<br />
*[https://hpc.radiology.hku.hk/wiki/index.php?title=HPC_cluster_2 Department HPC cluster 2 information]<br />
*[https://hpc.radiology.hku.hk/gitlab Department GitLab] <!--previously 147.8.193.174:9171--><br />
*[https://hpc.radiology.hku.hk/rstudio Web Rstudio] <!--hosted on cpu1:8787--><br />
*[[Department datasets]]<br />
*[[Conferences and grants]]<br />
<br />
== Getting started ==<br />
* [[Introduction for new users and students]]<br />
* [[Server Overview|Explore the department IT infrastructure]]<br />
*[[guides| User guides]]<br />
<br />
== Software specific guides ==<br />
*[https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa HKU VPN installation]<br />
** [https://intraweb.hku.hk/local/its/hkuvpn/ Download client]<br />
* [[SPPS|HKU SPPS]]<br />
* [https://www.its.hku.hk/documentation/guide/cloud/o365-student HKU Microsoft Office]<br />
* [[HKU MATLAB]]<br />
* [[SmartDraw|HKU SmartDraw]] (Diagrams and flowcharts)<br />
* [https://www.its.hku.hk/news/news190/vmware-license HKU VMware]<br />
* [http://moodle-support.hku.hk/sites/moodle-support.hku.hk/files/pdf/Panopto_Userguide_To_install_Panopto_recorder_on_the_personal_computer.pdf HKU Panopto] (Screen recording)<br />
* [https://lib.hku.hk/endnote/download.html HKU Endnote]<br />
* [[VNC viewer|VNC client software]]<br />
* [[X servers|X11 server software]]<br />
<br />
<br />
<br />
== Contact ==<br />
For technical issues please contact the current [[admin]].</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3801HPC cluster 22022-04-19T08:47:09Z<p>Admin: </p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 147.8.100.183 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 147.8.100.184 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 147.8.100.185 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 147.8.100.186 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 147.8.100.164 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || `hpc.radiology.hku.hk`<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
# Access to this wiki<br />
# Access to a [[GitLab Service|GitLab]] account for code sharing and collaboration<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
Users may have several sets of login credentials:<br />
* One for the Linux shell<br />
* One for this wiki<br />
* One for their Gitlab<br />
<br />
All the passwords used in the above are stored in a salted hash format. This means, in the event of a data breach, user passwords won't be compromised. It also means they are not retrievable, not even by admins. Password resets are (ideally) handled by automated email. <br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}<br />
<br />
=== Ports ===<br />
Users may run servers listening on ports, e.g. a VNC/X11 server or Jupyter notebook. Such connections should use an SSH tunnel to ensure security and pass the firewall.<br />
<br />
Connections to websites on hpc.radiology.hku.hk should use SSL/TLS (i.e. https in the browser). This means traffic to the (proxy) server is encrypted.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3800HPC cluster 22022-04-19T08:46:17Z<p>Admin: /* Hardware Specifications */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 147.8.100.183 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 147.8.100.184 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 147.8.100.185 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 147.8.100.186 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 147.8.100.164 || 18 || NA || 16 || 100 || exported as nfs to `/home/[username]/share` || `hpc.radiology.hku.hk`<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
# Access to this wiki<br />
# Access to a [[GitLab Service|GitLab]] account for code sharing and collaboration<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
Users may have several sets of login credentials:<br />
* One for the Linux shell<br />
* One for this wiki<br />
* One for their Gitlab<br />
<br />
All the passwords used in the above are stored in a salted hash format. This means, in the event of a data breach, user passwords won't be compromised. It also means they are not retrievable, not even by admins. Password resets are (ideally) handled by automated email. <br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}<br />
<br />
=== Ports ===<br />
Users may run servers listening on ports, e.g. a VNC/X11 server or Jupyter notebook. Such connections should use an SSH tunnel to ensure security and pass the firewall.<br />
<br />
Connections to websites on hpc.radiology.hku.hk should use SSL/TLS (i.e. https in the browser). This means traffic to the (proxy) server is encrypted.<br />
<br />
== Administration ==<br />
See [[gpu cluster technical overview| here]] for logs and technical details.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3799HPC cluster 22022-04-19T08:42:09Z<p>Admin: /* Choosing a server */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 147.8.100.183 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 147.8.100.184 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 147.8.100.185 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 147.8.100.186 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 147.8.100.164 || 18 || NA || 16 || 100 || exported as nfs to `/home/username/share` || `hpc.radiology.hku.hk`<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
# Access to this wiki<br />
# Access to a [[GitLab Service|GitLab]] account for code sharing and collaboration<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home/[username]/share` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose any of the 4 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[username]/share`) is a nfs mounted from the storage server. So it is suggested all of your files or folders should be saved in this directory. To evaluate available storage see the `df` or `du` commands.<br />
<br />
== Security ==<br />
Users may have several sets of login credentials:<br />
* One for the Linux shell<br />
* One for this wiki<br />
* One for their Gitlab<br />
<br />
All the passwords used in the above are stored in a salted hash format. This means, in the event of a data breach, user passwords won't be compromised. It also means they are not retrievable, not even by admins. Password resets are (ideally) handled by automated email. <br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}<br />
<br />
=== Ports ===<br />
Users may run servers listening on ports, e.g. a VNC/X11 server or Jupyter notebook. Such connections should use an SSH tunnel to ensure security and pass the firewall.<br />
<br />
Connections to websites on hpc.radiology.hku.hk should use SSL/TLS (i.e. https in the browser). This means traffic to the (proxy) server is encrypted.<br />
<br />
== Administration ==<br />
See [[gpu cluster technical overview| here]] for logs and technical details.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3798HPC cluster 22022-04-19T08:31:34Z<p>Admin: /* Hardware Specifications */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 147.8.100.183 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu2 || 147.8.100.184 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu3 || 147.8.100.185 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| gpu4 || 147.8.100.186 || 48 || A30x4 || 128 || 5.2 || `/` || NA<br />
|-<br />
| storage1 || 147.8.100.164 || 18 || NA || 16 || 100 || exported as nfs to `/home/username/share` || `hpc.radiology.hku.hk`<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
# Access to this wiki<br />
# Access to a [[GitLab Service|GitLab]] account for code sharing and collaboration<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose cpu1 or any of the 3 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
Apart from GPU related things, the 4 servers should have a similar software stack. Software installed includes various scripting languages like Lua, Python, PHP, and Perl. There is also a C/C++ compiler (`gcc`) and a git client. The home folder comes with a pre-installed python environment ([[anaconda]]). <br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[userID]`) is shared across servers. E.g. if you upload a file to `cpu1`, it will also be available when you connect to `gpu2`. Additionally, users may create files and folders in `/home/shared_data` to allow other users to access the same data. To evaluate available storage see the `df` or `du` commands.<br />
<br />
If required for performance reasons, users may write in the <code>/scratch</code> directory. Unlike the <code>/home</code> folder, files stored under <code>/scratch</code> are purely '''local to a server'''. As a `/scratch` folder is accessible to all users on the server, it is advisable to restrict access to others using <code>chmod 700</code> on your files and subfolders.<br />
<br />
{{Note|* The `/scratch` folders may cleared without notice, so do '''not''' use it for long-term storage.|warn}}<br />
<br />
== Security ==<br />
Users may have several sets of login credentials:<br />
* One for the Linux shell<br />
* One for this wiki<br />
* One for their Gitlab<br />
<br />
All the passwords used in the above are stored in a salted hash format. This means, in the event of a data breach, user passwords won't be compromised. It also means they are not retrievable, not even by admins. Password resets are (ideally) handled by automated email. <br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}<br />
<br />
=== Ports ===<br />
Users may run servers listening on ports, e.g. a VNC/X11 server or Jupyter notebook. Such connections should use an SSH tunnel to ensure security and pass the firewall.<br />
<br />
Connections to websites on hpc.radiology.hku.hk should use SSL/TLS (i.e. https in the browser). This means traffic to the (proxy) server is encrypted.<br />
<br />
== Administration ==<br />
See [[gpu cluster technical overview| here]] for logs and technical details.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HPC_cluster_2&diff=3797HPC cluster 22022-04-19T07:04:42Z<p>Admin: Created page with "The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2". They were set up and handed o..."</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages another five servers colloquially referred to as the "GPU cluster 2".<br />
<br />
They were set up and handed over in April 2022. The rack is [[Physical Access|physically]] located at the laboratory building, LG3/F.<br />
== Hardware Specifications ==<br />
The servers are typically called ''nodes''. There are four GPU computing nodes and one windows storage node. <br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! [[Domain registration|URL]]<br />
|-<br />
| gpu1 || 147.8.100.183 || 24 || V100(16G)x4 || 64 || 1.6 || `/scratch` || NA<br />
|-<br />
| gpu2 || 147.8.100.184 || 24 || V100(16G)x4 || 64 || 1.6 || `/scratch` || NA<br />
|-<br />
| gpu3 || 147.8.100.185 || 24 || V100(16G)x4 || 64 || 1.6 || `/scratch` || NA<br />
|-<br />
| gpu4 || 147.8.100.186 || 24 || NA || 512 || 1.6 || `/scratch` || NA<br />
|-<br />
| storage1 || 147.8.100.164 || 12 || NA || 16 || 100 || exported as nfs to `/home` || `hpc.radiology.hku.hk`<br />
|}<br />
<br />
Realtime performance and usage metrics can be found at [[HPC Diagnostics and Statistics]]<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
# Access to this wiki<br />
# Access to a [[GitLab Service|GitLab]] account for code sharing and collaboration<br />
# [[SSH/SFTP| Shell]] access to the compute nodes<br />
#* Users get their own user-specific home folder.<br />
<br />
A few [[guides|introductory guides]] are available to help users. Other software may be installed upon request, but users should note they can manually install any software in their own home directory without needing admin privileges. <br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct shell access, so password login for non-admins is disabled. The storage node transparently makes its storage capacity available to all nodes as the `/home` directory.<br />
<br />
==== For running code and scripts ====<br />
Choose cpu1 or any of the 3 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
Apart from GPU related things, the 4 servers should have a similar software stack. Software installed includes various scripting languages like Lua, Python, PHP, and Perl. There is also a C/C++ compiler (`gcc`) and a git client. The home folder comes with a pre-installed python environment ([[anaconda]]). <br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[userID]`) is shared across servers. E.g. if you upload a file to `cpu1`, it will also be available when you connect to `gpu2`. Additionally, users may create files and folders in `/home/shared_data` to allow other users to access the same data. To evaluate available storage see the `df` or `du` commands.<br />
<br />
If required for performance reasons, users may write in the <code>/scratch</code> directory. Unlike the <code>/home</code> folder, files stored under <code>/scratch</code> are purely '''local to a server'''. As a `/scratch` folder is accessible to all users on the server, it is advisable to restrict access to others using <code>chmod 700</code> on your files and subfolders.<br />
<br />
{{Note|* The `/scratch` folders may cleared without notice, so do '''not''' use it for long-term storage.|warn}}<br />
<br />
== Security ==<br />
Users may have several sets of login credentials:<br />
* One for the Linux shell<br />
* One for this wiki<br />
* One for their Gitlab<br />
<br />
All the passwords used in the above are stored in a salted hash format. This means, in the event of a data breach, user passwords won't be compromised. It also means they are not retrievable, not even by admins. Password resets are (ideally) handled by automated email. <br />
<br />
{{Note|<br />
* Please use a strong password and protect it. <br />
* Non-anonymous patient data should be stored in '''encrypted''' format.|warn}}<br />
<br />
=== Ports ===<br />
Users may run servers listening on ports, e.g. a VNC/X11 server or Jupyter notebook. Such connections should use an SSH tunnel to ensure security and pass the firewall.<br />
<br />
Connections to websites on hpc.radiology.hku.hk should use SSL/TLS (i.e. https in the browser). This means traffic to the (proxy) server is encrypted.<br />
<br />
== Administration ==<br />
See [[gpu cluster technical overview| here]] for logs and technical details.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Diagnostic_Radiology_Wiki&diff=3796Diagnostic Radiology Wiki2022-04-19T06:22:54Z<p>Admin: /* Quick links */</p>
<hr />
<div>This wiki belongs to the HKU [https://radiology.hku.hk/ Department of Diagnostic Radiology].<br />
<br />
== Statement of Purpose ==<br />
This wiki contains information on using the department [[Server Overview|computer resources]]. This includes [[guides for new users]], hardware specifications, and technical details for [[Admin|administrators]].<br />
<br />
== Quick links ==<br />
*[[GPU Cluster| Department HPC cluster information]]<br />
*[https://hpc.radiology.hku.hk/wiki/index.php?title=HPC_cluster_2 Department HPC cluster 2 information]<br />
*[https://hpc.radiology.hku.hk/gitlab Department GitLab] <!--previously 147.8.193.174:9171--><br />
*[https://hpc.radiology.hku.hk/rstudio Web Rstudio] <!--hosted on cpu1:8787--><br />
*[[Department datasets]]<br />
*[[Conferences and grants]]<br />
<br />
== Getting started ==<br />
* [[Introduction for new users and students]]<br />
* [[Server Overview|Explore the department IT infrastructure]]<br />
*[[guides| User guides]]<br />
<br />
== Software specific guides ==<br />
*[https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa HKU VPN installation]<br />
** [https://intraweb.hku.hk/local/its/hkuvpn/ Download client]<br />
* [[SPPS|HKU SPPS]]<br />
* [https://www.its.hku.hk/documentation/guide/cloud/o365-student HKU Microsoft Office]<br />
* [[HKU MATLAB]]<br />
* [[SmartDraw|HKU SmartDraw]] (Diagrams and flowcharts)<br />
* [https://www.its.hku.hk/news/news190/vmware-license HKU VMware]<br />
* [http://moodle-support.hku.hk/sites/moodle-support.hku.hk/files/pdf/Panopto_Userguide_To_install_Panopto_recorder_on_the_personal_computer.pdf HKU Panopto] (Screen recording)<br />
* [https://lib.hku.hk/endnote/download.html HKU Endnote]<br />
* [[VNC viewer|VNC client software]]<br />
* [[X servers|X11 server software]]<br />
<br />
== Site info ==<br />
<!--Number of pages: {{NUMBEROFPAGES}}--><br />
<br />
<br />
Mediawiki version: {{CURRENTVERSION}}<br />
<br />
== Contact ==<br />
For technical issues please contact the current [[admin]].</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Diagnostic_Radiology_Wiki&diff=3148Diagnostic Radiology Wiki2021-05-02T11:16:05Z<p>Admin: Protected "Diagnostic Radiology Wiki" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))</p>
<hr />
<div>This wiki belongs to the HKU [https://radiology.hku.hk/ Department of Diagnostic Radiology].<br />
<br />
== Statement of Purpose ==<br />
This wiki contains information on using the department [[Server Overview|computer resources]]. This includes [[guides for new users]], hardware specifications, and technical details for [[Admin|administrators]].<br />
<br />
== Quick links ==<br />
*[[GPU Cluster| Department HPC cluster information]]<br />
*[https://hpc.radiology.hku.hk/gitlab Department GitLab] <!--previously 147.8.193.174:9171--><br />
*[https://hpc.radiology.hku.hk/rstudio Web Rstudio] <!--hosted on cpu1:8787--><br />
*[[Department datasets]]<br />
*[[Conferences and grants]]<br />
<br />
== Getting started ==<br />
* [[Introduction for new users and students]]<br />
* [[Server Overview|Explore the department IT infrastructure]]<br />
*[[guides| User guides]]<br />
<br />
== Software specific guides ==<br />
*[https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa HKU VPN installation]<br />
** [https://intraweb.hku.hk/local/its/hkuvpn/ Download client]<br />
* [[SPPS|HKU SPPS]]<br />
* [https://www.its.hku.hk/documentation/guide/cloud/o365-student HKU Microsoft Office]<br />
* [[HKU MATLAB]]<br />
* [[SmartDraw|HKU SmartDraw]] (Diagrams and flowcharts)<br />
* [https://www.its.hku.hk/news/news190/vmware-license HKU VMware]<br />
* [http://moodle-support.hku.hk/sites/moodle-support.hku.hk/files/pdf/Panopto_Userguide_To_install_Panopto_recorder_on_the_personal_computer.pdf HKU Panopto] (Screen recording)<br />
* [https://lib.hku.hk/endnote/download.html HKU Endnote]<br />
* [[VNC viewer|VNC client software]]<br />
* [[X servers|X11 server software]]<br />
<br />
== Site info ==<br />
<!--Number of pages: {{NUMBEROFPAGES}}--><br />
<br />
<br />
Mediawiki version: {{CURRENTVERSION}}<br />
<br />
== Contact ==<br />
For technical issues please contact the current [[admin]].</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HKU_MATLAB&diff=202HKU MATLAB2020-04-10T23:57:41Z<p>Admin: /* Offline or commandline installation */</p>
<hr />
<div>* [https://www.its.hku.hk/services/personal/software#matlab-simulink HKU Matlab license]<br />
<br />
Students may install MATLAB on their personal computers. Licenses must be activated online for each computer (uses MAC address of an ethernet adapter).<br />
<br />
== Offline or commandline installation ==<br />
The normal installer requires both an internet connection and a GUI interface. So offline or headless installations, like on a hpc node, require an extra step: obtaining ''install files''. Previously used install files may be found under the `/home/utility/` folder in the [[GPU Cluster]].<br />
<br />
If your desired MATLAB version is not available on the server, HKU '''license administrators''' may be contacted to provide install ISO files.<br />
{| class="wikitable"<br />
|-<br />
! FirstName !! LastName !! email<br />
|-<br />
| Lilian || Chan || lilianyl@hku.hk<br />
|-<br />
| Grace || Cheung || graceclc@hku.hk<br />
|-<br />
| Bonnie || Lau || bonlauwl@hku.hk<br />
|-<br />
| Li Yuet || Li || ymli@hku.hk<br />
|}<br />
<br />
If you requested and received new install files, please put a copy into `/home/utility/` for the other users.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=HKU_MATLAB&diff=201HKU MATLAB2020-04-10T23:56:37Z<p>Admin: /* Offline or commandline installation */</p>
<hr />
<div>* [https://www.its.hku.hk/services/personal/software#matlab-simulink HKU Matlab license]<br />
<br />
Students may install MATLAB on their personal computers. Licenses must be activated online for each computer (uses MAC address of an ethernet adapter).<br />
<br />
== Offline or commandline installation ==<br />
The normal installer requires both an internet connection and a GUI interface. So offline or headless installations, like on HPC node server, require an extra step: obtaining ''install files''. Previously used install files may be found under the `/home/utility/` folder.<br />
<br />
If your desired MATLAB version is not available on the server, HKU '''license administrators''' may be contacted to provide install ISO files.<br />
{| class="wikitable"<br />
|-<br />
! FirstName !! LastName !! email<br />
|-<br />
| Lilian || Chan || lilianyl@hku.hk<br />
|-<br />
| Grace || Cheung || graceclc@hku.hk<br />
|-<br />
| Bonnie || Lau || bonlauwl@hku.hk<br />
|-<br />
| Li Yuet || Li || ymli@hku.hk<br />
|}<br />
<br />
If you requested and received new install files, please put a copy into `/home/utility/` for the other users.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=User_account&diff=200User account2020-04-10T23:55:13Z<p>Admin: /* Guide to using MATLAB commandline */</p>
<hr />
<div>User accounts for the [[GPU cluster]] must be created by someone with administrative-level access to the servers. Currently (March 2020) Cao Peng is designated [[Admin]]. <br />
<br />
The standard process is: <br />
* Request account from Admin<br />
* Receive ID and password via email or WhatsApp.<br />
<br />
== Initial setup ==<br />
* [[SSH login]] and change your password upon first login, using the command <code>passwd</code>.<br />
<br />
After this, the user will have a folder on `/home/[userID]` that can't be accessed by non-admins.<br />
<br />
== Deactivate your anaconda environment (optional) ==<br />
The [[Anaconda]] base environment may be activated by default when you first log in. To prevent this automatic activation type: `conda config --set auto_activate_base false`<br />
<br />
== Guide to using MATLAB commandline ==<br />
Just use `matlab` on the commandline to start the interactive console. <br />
See [https://www.mathworks.com/help/matlab/ref/matlablinux.html the MATLAB documentation] for more options.<br />
<br />
{{Note|currently not installed systemwide, see [[HKU MATLAB]] for installation notes|error}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=199Admin guide2020-04-10T23:50:59Z<p>Admin: </p>
<hr />
<div><br />
{{Note|Using docker containers allows easier setup, per-user configuration, scaling, and backup. Avoid breaking servers with unnecessary software additions, use containers for complex things.|reminder}}<br />
<br />
Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
* See key info at [[GPU_Cluster#Technical_Overview]]. <br />
* See the [[Admin_install_log]] for changes made to the cluster, please try to keep this log up-to-date.<br />
<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition (on cpu1) -> intend to move to docker on storage1<br />
* Mediawiki 1.34 including mariadb (on cpu1) -> intend to move to docker on storage1<br />
* Docker, including docker-compose. (on cpu1 and storage1)<br />
* An attempt at installing X11/Xfce as part of a TigerVNC installation. -> aborted, try a docker solution.<br />
<br />
The nodes synchronise user information via NIS, which was configured by CPOS and doesn't seem to include group info. If the NIS daemon stops it may prevent SSH login. The main NIS node is cpu1.<br />
<br />
== Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include:<br />
* The 4 compute nodes<br />
* Services like gitlab, mediawikis, etc.<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. Likely future additions are PACs and a web file manager.<br />
<br />
== Common Admin Tasks ==<br />
=== Creating a new user ===<br />
`sudo useradd -m -G students <username>`<br />
Then<br />
`sudo passwd <username>`<br />
<br />
=== Add user to a group ===<br />
`sudo usermod -aG <groupname> <username>`<br />
<br />
=== Anaconda in home folder ===<br />
`su <username>`<br />
then <br />
`cd ~/`<br />
then <br />
`bash /home/utility/<anaconda script>`<br />
Follow onscreen prompts to install into ~/Anaconda and choose "yes" to initialize the installation.<br />
<br />
=== Print running docker containers on host ===<br />
<nowiki><br />
sudo docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Reconfigure reverse proxy ===<br />
See the [[Nginx_container|proxy info page]]<br />
<br />
<br />
== Common admin problems ==<br />
=== Locked out of server ===<br />
When adjusting iptables, set a timed reset using `cron` or `at` so you can get back in. Worst case you will need [[physical access]]. If you haven't touched iptables, it could be an issue with the NIS server. Also make sure firewalld stays disabled.<br />
<br />
=== Lost a docker container or volume ===<br />
Keep in mind `docker-compose down` will stop ''and'' remove containers along with anonymous volumes. Likewise running a container with `--rm` option will remove anonymous dangling volumes.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=198Admin guide2020-04-10T23:41:56Z<p>Admin: </p>
<hr />
<div><br />
{{Note|Using docker containers allows easier setup, per-user configuration, scaling, and backup. Avoid breaking servers with unnecessary software additions, use containers for complex things.|reminder}}<br />
<br />
Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
* See key info at [[GPU_Cluster#Technical_Overview]]. <br />
* See the [[Admin_install_log]] for changes made to the cluster, please try to keep this log up-to-date.<br />
<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition (on cpu1) -> intend to move to docker on storage1<br />
* Mediawiki 1.34 including mariadb (on cpu1) -> intend to move to docker on storage1<br />
* Docker, including docker-compose. (on cpu1 and storage1)<br />
* An attempt at installing X11/Xfce as part of a TigerVNC installation. -> aborted, try a docker solution.<br />
<br />
The nodes synchronise user information via NIS, which was configured by CPOS and doesn't seem to include group info. If the NIS daemon stops it may prevent SSH login. The main NIS node is cpu1.<br />
<br />
== Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include:<br />
* The 4 compute nodes<br />
* Services like gitlab, mediawikis, etc.<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. Likely future additions are PACs and a web file manager.<br />
<br />
== Common Admin Tasks ==<br />
=== Creating a new user ===<br />
`sudo useradd -m -G students <username>`<br />
Then<br />
`sudo passwd <username>`<br />
<br />
=== Add user to a group ===<br />
`sudo usermod -aG <groupname> <username>`<br />
<br />
=== Anaconda in home folder ===<br />
`su <username>`<br />
then <br />
`cd ~/`<br />
then <br />
`bash /home/utility/<anaconda script>`<br />
Follow onscreen prompts to install into ~/Anaconda and choose "yes" to initialize the installation.<br />
<br />
=== Print running docker containers on host ===<br />
<nowiki><br />
sudo docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Reconfigure reverse proxy ===<br />
See the [[Nginx_container|proxy info page]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=197Admin guide2020-04-10T23:41:31Z<p>Admin: /* Network architecture */</p>
<hr />
<div>Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
* See key info at [[GPU_Cluster#Technical_Overview]]. <br />
* See the [[Admin_install_log]] for changes made to the cluster, please try to keep this log up-to-date.<br />
<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition (on cpu1) -> intend to move to docker on storage1<br />
* Mediawiki 1.34 including mariadb (on cpu1) -> intend to move to docker on storage1<br />
* Docker, including docker-compose. (on cpu1 and storage1)<br />
* An attempt at installing X11/Xfce as part of a TigerVNC installation. -> aborted, try a docker solution.<br />
<br />
The nodes synchronise user information via NIS, which was configured by CPOS and doesn't seem to include group info. If the NIS daemon stops it may prevent SSH login. The main NIS node is cpu1.<br />
<br />
== Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include:<br />
* The 4 compute nodes<br />
* Services like gitlab, mediawikis, etc.<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. Likely future additions are PACs and a web file manager.<br />
<br />
== Common Admin Tasks ==<br />
=== Creating a new user ===<br />
`sudo useradd -m -G students <username>`<br />
Then<br />
`sudo passwd <username>`<br />
<br />
=== Add user to a group ===<br />
`sudo usermod -aG <groupname> <username>`<br />
<br />
=== Anaconda in home folder ===<br />
`su <username>`<br />
then <br />
`cd ~/`<br />
then <br />
`bash /home/utility/<anaconda script>`<br />
Follow onscreen prompts to install into ~/Anaconda and choose "yes" to initialize the installation.<br />
<br />
=== Print running docker containers on host ===<br />
<nowiki><br />
sudo docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Reconfigure reverse proxy ===<br />
See the [[Nginx_container|proxy info page]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Admin_guide&diff=196Admin guide2020-04-10T23:41:13Z<p>Admin: /* Use Docker */</p>
<hr />
<div>Currently the cluster is managed using the commandline over SSH. A large part of the system was configured by CPOS sysadmins, so there is no exact record of the software stack. <br />
* See key info at [[GPU_Cluster#Technical_Overview]]. <br />
* See the [[Admin_install_log]] for changes made to the cluster, please try to keep this log up-to-date.<br />
<br />
In short, the major additions we've installed since the handover are:<br />
* Gitlab omnibus edition (on cpu1) -> intend to move to docker on storage1<br />
* Mediawiki 1.34 including mariadb (on cpu1) -> intend to move to docker on storage1<br />
* Docker, including docker-compose. (on cpu1 and storage1)<br />
* An attempt at installing X11/Xfce as part of a TigerVNC installation. -> aborted, try a docker solution.<br />
<br />
The nodes synchronise user information via NIS, which was configured by CPOS and doesn't seem to include group info. If the NIS daemon stops it may prevent SSH login. The main NIS node is cpu1.<br />
<br />
== Network architecture ==<br />
HKU ITS have [[domain registration|registered]] the domain hpc.radiology.hku.hk to the storage1 IP. So storage1 will host a reverse proxy ([[nginx container]]) that will use path-based resolution for upstream addresses, i.e. `hpc.radiology.hku.hk/<servicename>`.<br />
<br />
Proxy upstreams include:<br />
* The 4 compute nodes<br />
* Services like gitlab, mediawikis, etc.<br />
<br />
Currently we think it is best to run gitlab and wiki servers locally on storage1. New services would have to be evaluated on a per-case basis, as the 12GB/12core hardware might not be enough to host everything. Likely future additions are PACs and a web file manager. <br />
<br />
{{Note|Using docker containers allows easier setup, per-user configuration, scaling, and backup. Avoid breaking servers with unnecessary software additions, use containers for complex things.|reminder}}<br />
<br />
== Common Admin Tasks ==<br />
=== Creating a new user ===<br />
`sudo useradd -m -G students <username>`<br />
Then<br />
`sudo passwd <username>`<br />
<br />
=== Add user to a group ===<br />
`sudo usermod -aG <groupname> <username>`<br />
<br />
=== Anaconda in home folder ===<br />
`su <username>`<br />
then <br />
`cd ~/`<br />
then <br />
`bash /home/utility/<anaconda script>`<br />
Follow onscreen prompts to install into ~/Anaconda and choose "yes" to initialize the installation.<br />
<br />
=== Print running docker containers on host ===<br />
<nowiki><br />
sudo docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}'</nowiki><br />
<br />
=== Reconfigure reverse proxy ===<br />
See the [[Nginx_container|proxy info page]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Physical_Access&diff=195Physical Access2020-04-10T23:39:34Z<p>Admin: </p>
<hr />
<div>The space from the GPU cluster is rented from HKU [http://cgs.hku.hk/ CPOS]. No guest is allowed in the data centre. For vendor onsite support, user should contact CPOS at least 1 day before the access request. Access to the data centre must be accompanied by CPOS IT personnel.<br />
<br />
There are no monitor / keyboard / mouse in the server room and you may bring along required devices in your visit. A special power cable is required to connect the monitor to the UPS power supply (this cable may be available on-site). A key is also required, ask [[Admin|Cao Peng]] for it. {{Note|physical access should be a '''last resort''' to fix problems.|error|inline=1}}</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=GPU_Cluster&diff=194GPU Cluster2020-04-10T23:36:58Z<p>Admin: /* Hardware Specifications */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages five servers colloquially referred to as the "GPU cluster".<br />
<br />
They were set up by IT services and handed over in February 2020. The rack is [[Physical Access|physically]] located at The Hong Kong Jockey Club Building For Interdisciplinary Research, 1/F.<br />
== Hardware Specifications ==<br />
There are four computing nodes, and one storage node that shares storage across all nodes.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! URL<br />
|-<br />
| gpu1 || 147.8.193.173 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu1`<br />
|-<br />
| gpu2 || 147.8.193.172 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu2`<br />
|-<br />
| gpu3 || 147.8.193.175 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu3`<br />
|-<br />
| cpu1 || 147.8.193.174 || 40 || NA || 512 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/cpu1`<br />
|-<br />
| storage1 || 147.8.193.171 || 12 || NA || 16 || 100 || exported as nfs to `/home` || Reverse proxy for hpc.radiology.hku.hk<br />
|}<br />
<br />
{{Note|url access is not 100% available yet, direct IP address access should always work.|error}}<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
* Access to this wiki<br />
* Access to a [[personal wiki]]<br />
* Access to create and use a [[GitLab Service|GitLab]] account<br />
* [[SSH/SFTP| Shell]] access to the compute nodes<br />
** Users get their own user-specific home folder.<br />
** The home folder comes with a pre-installed python environment ([[anaconda]]). They may in turn use that to host a [[Jupyter Notebooks|Jupyter Notebook]] server.<br />
* Other [[Software ideas|software]] may be installed upon request.<br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct access, so password login for non-admins is disabled.<br />
<br />
==== For running code and scripts ====<br />
Choose cpu1 or any of the 3 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
Apart from GPU related things, the 4 servers should have a similar software stack. Software installed includes various scripting languages like Lua, Python, PHP, and Perl. There is also a C/C++ compiler (`gcc`) and a git client.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[userID]`) is shared across servers. E.g. if you upload a file to `cpu1`, it will also be available when you connect to `gpu2`. Additionally, users may create files and folders in `/home/shared_data` to allow other users to access the same data.<br />
<br />
If required for performance reasons, users may write in the <code>/scratch</code> directory. Unlike the <code>/home</code> folder, files stored under <code>/scratch</code> are purely '''local to a server'''. As a `/scratch` folder is accessible to all users on the server, it is advisable to restrict access to others using <code>chmod 700</code> on your files and subfolders.<br />
<br />
{{Note|* The `/scratch` folders may cleared without notice, so do '''not''' use it for long-term storage.|warn}}<br />
<br />
== Technical Overview ==<br />
This section contains information that may be useful for admins.<br />
<br />
* All GPU cluster systems run on [https://en.wikipedia.org/wiki/CentOS CentOS 7]. <br />
* User creation is done on cpu1 and automatically synchronised across servers via NIS.<br />
* Normal users do not have package manager installation privileges.<br />
* The storage from storage1 is mounted as an NFS share on /home in the other 4 servers.<br />
* Root password is not available, current sudoers are hpcadmin, itsupport, richard, jurgen.<br />
=== Known issues ===<br />
See [[to-do|here]] for a to-do list of things that should be fixed.<br />
<br />
=== GitLab Service ===<br />
Running on CPU1. Uses Nginx server with port 9171.<br />
Currently not blocking non-department users.<br />
<br />
Visibility of user repositories is private amongst member of the same Group. We created the department-wide group '''Radiology'''.<br />
<br />
Backup with: `sudo gitlab-backup create` , default path /var/opt/gitlab/backups<br />
<br />
=== Mediawiki Service ===<br />
Running on CPU1. Uses Apache server on port 80.<br />
Currently not blocking non-department users.<br />
<br />
=== Emails ===<br />
Todo. Required for password resets and admin alerts.<br />
=== Backups===<br />
Todo. Updated tar to v1.32.<br />
=== Firewall ===<br />
* Disabled firewalld. Using iptables defaults from IT services.<br />
* Confirmed all HKU IPs (public and private IP ranges) are whitelisted.<br />
* In addition to the defaults, our opened ports are 22, 80, 443, 9171</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=GPU_Cluster&diff=193GPU Cluster2020-04-10T23:36:23Z<p>Admin: /* Usage */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages five servers colloquially referred to as the "GPU cluster".<br />
<br />
They were set up by IT services and handed over in February 2020. The rack is [[Physical Access|physically]] located at The Hong Kong Jockey Club Building For Interdisciplinary Research, 1/F.<br />
== Hardware Specifications ==<br />
There are four computing nodes, and one storage node that shares storage across all nodes.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! URL<br />
|-<br />
| gpu1 || 147.8.193.173 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu1`<br />
|-<br />
| gpu2 || 147.8.193.172 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu2`<br />
|-<br />
| gpu3 || 147.8.193.175 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu3`<br />
|-<br />
| cpu1 || 147.8.193.174 || 40 || NA || 512 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/cpu1`<br />
|-<br />
| storage1 || 147.8.193.171 || 12 || NA || 16 || 100 || exported as nfs to `/home` || Reverse proxy for hpc.radiology.hku.hk<br />
|}<br />
<br />
{{Note|url access is not 100% available yet, direct IP address access should always work.|warn}}<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
* Access to this wiki<br />
* Access to a [[personal wiki]]<br />
* Access to create and use a [[GitLab Service|GitLab]] account<br />
* [[SSH/SFTP| Shell]] access to the compute nodes<br />
** Users get their own user-specific home folder.<br />
** The home folder comes with a pre-installed python environment ([[anaconda]]). They may in turn use that to host a [[Jupyter Notebooks|Jupyter Notebook]] server.<br />
* Other [[Software ideas|software]] may be installed upon request.<br />
<br />
{{Note|<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.|warn}}<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct access, so password login for non-admins is disabled.<br />
<br />
==== For running code and scripts ====<br />
Choose cpu1 or any of the 3 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
Apart from GPU related things, the 4 servers should have a similar software stack. Software installed includes various scripting languages like Lua, Python, PHP, and Perl. There is also a C/C++ compiler (`gcc`) and a git client.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[userID]`) is shared across servers. E.g. if you upload a file to `cpu1`, it will also be available when you connect to `gpu2`. Additionally, users may create files and folders in `/home/shared_data` to allow other users to access the same data.<br />
<br />
If required for performance reasons, users may write in the <code>/scratch</code> directory. Unlike the <code>/home</code> folder, files stored under <code>/scratch</code> are purely '''local to a server'''. As a `/scratch` folder is accessible to all users on the server, it is advisable to restrict access to others using <code>chmod 700</code> on your files and subfolders.<br />
<br />
{{Note|* The `/scratch` folders may cleared without notice, so do '''not''' use it for long-term storage.|warn}}<br />
<br />
== Technical Overview ==<br />
This section contains information that may be useful for admins.<br />
<br />
* All GPU cluster systems run on [https://en.wikipedia.org/wiki/CentOS CentOS 7]. <br />
* User creation is done on cpu1 and automatically synchronised across servers via NIS.<br />
* Normal users do not have package manager installation privileges.<br />
* The storage from storage1 is mounted as an NFS share on /home in the other 4 servers.<br />
* Root password is not available, current sudoers are hpcadmin, itsupport, richard, jurgen.<br />
=== Known issues ===<br />
See [[to-do|here]] for a to-do list of things that should be fixed.<br />
<br />
=== GitLab Service ===<br />
Running on CPU1. Uses Nginx server with port 9171.<br />
Currently not blocking non-department users.<br />
<br />
Visibility of user repositories is private amongst member of the same Group. We created the department-wide group '''Radiology'''.<br />
<br />
Backup with: `sudo gitlab-backup create` , default path /var/opt/gitlab/backups<br />
<br />
=== Mediawiki Service ===<br />
Running on CPU1. Uses Apache server on port 80.<br />
Currently not blocking non-department users.<br />
<br />
=== Emails ===<br />
Todo. Required for password resets and admin alerts.<br />
=== Backups===<br />
Todo. Updated tar to v1.32.<br />
=== Firewall ===<br />
* Disabled firewalld. Using iptables defaults from IT services.<br />
* Confirmed all HKU IPs (public and private IP ranges) are whitelisted.<br />
* In addition to the defaults, our opened ports are 22, 80, 443, 9171</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=GPU_Cluster&diff=192GPU Cluster2020-04-10T23:31:32Z<p>Admin: /* Hardware Specifications */</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages five servers colloquially referred to as the "GPU cluster".<br />
<br />
They were set up by IT services and handed over in February 2020. The rack is [[Physical Access|physically]] located at The Hong Kong Jockey Club Building For Interdisciplinary Research, 1/F.<br />
== Hardware Specifications ==<br />
There are four computing nodes, and one storage node that shares storage across all nodes.<br />
<br />
{| class="wikitable"<br />
|-<br />
! Name !! Public IP address !! Physical CPU cores !! GPU !! RAM(GB) !! Storage (TB) !! Storage mount point !! URL<br />
|-<br />
| gpu1 || 147.8.193.173 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu1`<br />
|-<br />
| gpu2 || 147.8.193.172 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu2`<br />
|-<br />
| gpu3 || 147.8.193.175 || 16 || V100(16G)x4 || 64 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/gpu3`<br />
|-<br />
| cpu1 || 147.8.193.174 || 40 || NA || 512 || 1.6 || `/scratch` || `hpc.radiology.hku.hk/cpu1`<br />
|-<br />
| storage1 || 147.8.193.171 || 12 || NA || 16 || 100 || exported as nfs to `/home` || Reverse proxy for hpc.radiology.hku.hk<br />
|}<br />
<br />
{{Note|url access is not 100% available yet, direct IP address access should always work.|warn}}<br />
<br />
== Usage ==<br />
Users are currently expected to use the GPU cluster in the following ways:<br />
* Access to this wiki<br />
* Access to a [[personal wiki]]<br />
* Access to create and use a [[GitLab Service|GitLab]] account<br />
* [[SSH/SFTP| Shell]] access to the compute nodes<br />
** Users get their own user-specific home folder.<br />
** The home folder comes with a pre-installed python environment ([[anaconda]]). They may in turn use that to host a [[Jupyter Notebooks|Jupyter Notebook]] server.<br />
* Other [[Software ideas|software]] may be installed upon request.<br />
<br />
=== Choosing a server ===<br />
Refer to the [[GPU_Cluster#Hardware_Specifications| specs table]] for IP address information.<br />
`storage1` is not intended for direct access, so password login for non-admins is disabled.<br />
<br />
==== For running code and scripts ====<br />
Choose cpu1 or any of the 3 gpu servers. Optionally check the local resource usage with command <code>top</code>, <code>ps</code> or <code>nvidia-smi</code>.<br />
Apart from GPU related things, the 4 servers should have a similar software stack. Software installed includes various scripting languages like Lua, Python, PHP, and Perl. There is also a C/C++ compiler (`gcc`) and a git client.<br />
<br />
==== For file transfer/storage ====<br />
It doesn't matter which server you choose, since the user home folder (`/home/[userID]`) is shared across servers. E.g. if you upload a file to `cpu1`, it will also be available when you connect to `gpu2`. Additionally, users may create files and folders in `/home/shared_data` to allow other users to access the same data.<br />
<br />
If required for performance reasons, users may write in the <code>/scratch</code> directory. Unlike the <code>/home</code> folder, files stored under <code>/scratch</code> are purely '''local to a server'''. As a `/scratch` folder is accessible to all users on the server, it is advisable to restrict access to others using <code>chmod 700</code> on your files and subfolders.<br />
<br />
=== Note ===<br />
* To use the shell access features of the GPU cluster, users need to get a [[User account|server account]].<br />
* All users must be on the HKU network / [https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa VPN] to access anything.<br />
* The `/scratch` folders may cleared without notice so do not use it for long-term storage.<br />
<br />
== Technical Overview ==<br />
This section contains information that may be useful for admins.<br />
<br />
* All GPU cluster systems run on [https://en.wikipedia.org/wiki/CentOS CentOS 7]. <br />
* User creation is done on cpu1 and automatically synchronised across servers via NIS.<br />
* Normal users do not have package manager installation privileges.<br />
* The storage from storage1 is mounted as an NFS share on /home in the other 4 servers.<br />
* Root password is not available, current sudoers are hpcadmin, itsupport, richard, jurgen.<br />
=== Known issues ===<br />
See [[to-do|here]] for a to-do list of things that should be fixed.<br />
<br />
=== GitLab Service ===<br />
Running on CPU1. Uses Nginx server with port 9171.<br />
Currently not blocking non-department users.<br />
<br />
Visibility of user repositories is private amongst member of the same Group. We created the department-wide group '''Radiology'''.<br />
<br />
Backup with: `sudo gitlab-backup create` , default path /var/opt/gitlab/backups<br />
<br />
=== Mediawiki Service ===<br />
Running on CPU1. Uses Apache server on port 80.<br />
Currently not blocking non-department users.<br />
<br />
=== Emails ===<br />
Todo. Required for password resets and admin alerts.<br />
=== Backups===<br />
Todo. Updated tar to v1.32.<br />
=== Firewall ===<br />
* Disabled firewalld. Using iptables defaults from IT services.<br />
* Confirmed all HKU IPs (public and private IP ranges) are whitelisted.<br />
* In addition to the defaults, our opened ports are 22, 80, 443, 9171</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Diagnostic_Radiology_Wiki&diff=191Diagnostic Radiology Wiki2020-04-10T23:29:51Z<p>Admin: </p>
<hr />
<div>This is the internal wiki of the HKU Department of Diagnostic Radiology.<br />
<br />
== Statement of Purpose ==<br />
This wiki contains information on using the [[Server Overview|computer resources]] of the [https://radiology.hku.hk/ Department of Diagnostic Radiology]. This includes [[guides for new users]], hardware specifications, and technical details for [[Admin|administrators]].<br />
<br />
== Quick links ==<br />
*[[GPU Cluster| GPU/HPC cluster information]]<br />
*[http://147.8.193.174:9171 Department self-hosted GitLab]<br />
*[[Student email list]]<br />
<br />
== Getting started ==<br />
=== Using the department hardware ===<br />
* [[Server Overview|Department IT infrastructure overview]]<br />
<br />
=== Software specific guides ===<br />
* [[SPPS|HKU SPPS]]<br />
* [https://www.its.hku.hk/documentation/guide/cloud/o365-student HKU Microsoft Office]<br />
* [[HKU MATLAB]]<br />
* [[SmartDraw|HKU SmartDraw]] (diagrams and flowcharts)<br />
* [https://www.its.hku.hk/news/news190/vmware-license HKU VMware]<br />
* [http://moodle-support.hku.hk/sites/moodle-support.hku.hk/files/pdf/Panopto_Userguide_To_install_Panopto_recorder_on_the_personal_computer.pdf HKU Panopto] (Screen recording)<br />
<br />
=== Using this wiki software ===<br />
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:MediaWiki User's Guide]<br />
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]<br />
<br />
== Site info ==<br />
Number of pages: {{NUMBEROFPAGES}}<br />
<br />
Number of users: {{NUMBEROFUSERS}}<br />
<br />
Mediawiki version: {{CURRENTVERSION}}<br />
<br />
== Contact ==<br />
For technical issues please contact the current [[admin]].</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=MediaWiki:Mainpage&diff=190MediaWiki:Mainpage2020-04-10T23:29:02Z<p>Admin: Created page with "Diagnostic Radiology Wiki"</p>
<hr />
<div>Diagnostic Radiology Wiki</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Nginx_container&diff=159Nginx container2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>Our [https://en.wikipedia.org/wiki/Reverse_proxy reverse proxy] runs on `storage1` in a docker container. It is useful because:<br />
* We have a single [[domain registration|domain]] that is used to access multiple websites/nodes by memorable URLs instead of IPs.<br />
* It provides a TLS security layer, so any `http` traffic becomes secure `https`.<br />
<br />
== Updating the configuration ==<br />
<br />
Warning: Configuration may be non-trivial depending on the proxy scenario.<br />
<br />
To update the nginx config, re-run a new reverseproxy image: edit the config file `/home/jurgen/dc/nginxproxy/nginx.conf` and rebuild the dockerfile tagged as `reverseproxy`. Then `docker-compose up -d` will restart the proxy with the latest reverseproxy image.<br />
<br />
== Upstream targets ==<br />
* `hpc.radiology.hku.hk/wiki` maps to localhost mediawiki: `containername/wiki` for port 80, 443<br />
* `hpc.radiology.hku.hk/git` maps to localhost gitlab: `containername/git` for port 22, 80, 443<br />
* `hpc.radiology.hku.hk/cpu1` maps to remote node `cpu1` for port 22<br />
* `hpc.radiology.hku.hk/gpu1` maps to remote node `gpu1` for port 22<br />
* `hpc.radiology.hku.hk/gpu2` maps to remote node `gpu2` for port 22<br />
* `hpc.radiology.hku.hk/gpu3` maps to remote node `gpu3` for port 22<br />
<br />
== Path based proxy resolving vs domain based ==<br />
Note that symmetric pathing means mediawiki and gitlab may not host on their default container path `/`; asymmetric proxying creates issues (e.g. link breakage) that are hard to solve. Even better would be to use tier-4 domain-based proxying (e.g. `wiki.radiology.hku.hk`), but that would require domain delegation from ITS and running our own DNS server.<br />
<br />
<!--TABULATE THIS STUFF PLZ--></div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Nginx_proxy&diff=161Nginx proxy2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[Nginx_container]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Personal_wiki&diff=163Personal wiki2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>Personal wiki's are a fine alternative to cloud based note apps, using a browser you can write rich formatted text with embedded images and file attachments. These articles can be easily inter-linked and searched.<br />
<br />
Personal wikis run in separate docker containers, backup snapshots are saved at regular intervals on the server. Users can request to export their docker snapshots from an admin, e.g. if they want to migrate to another server platform.<br />
<br />
This functionality is currently experimental, a basic mediawiki is straightforward to install, but additional extensions (often required for formatting-related features) may be complex to install properly. Automating docker snapshots needs to be scripted too.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Physical_Access&diff=165Physical Access2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>The space from the GPU cluster is rented from HKU [http://cgs.hku.hk/ CPOS]. No guest is allowed in the data centre. For vendor onsite support, user should contact CPOS at least 1 day before the access request. Access to the data centre must be accompanied by CPOS IT personnel.<br />
<br />
There are no monitor / keyboard / mouse in the server room and you may bring along required devices in your visit. A special power cable is required to connect the monitor to the UPS power supply (this cable may be available on-site). A key is also required, ask [[Admin|Cao Peng]] for it, physical access should be a last resort to fix problems.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Reverse_proxy&diff=167Reverse proxy2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[Nginx_container]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=SSH/SFTP&diff=169SSH/SFTP2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>Shell access is arguably the most important feature of the GPU cluster, as it allows researchers to run their code, e.g. using the [[Anaconda|anaconda]] environment.<br />
<br />
[https://en.wikipedia.org/wiki/Secure_Shell SSH] allows commandline access to the connected server. <br />
<br />
[https://en.wikipedia.org/wiki/SSH_File_Transfer_Protocol SFTP] allows file transfers. Store any data you want in your home directory. Currently there is no storage capacity limiter.<br />
<br />
To connect with SSH or SFTP, you need to use a client program.<br />
<br />
== Windows Clients ==<br />
* Modern powershell or PuTTy are some of the clients available for SSH<br />
* WinSCP or Filezilla are typical SFTP clients.<br />
<br />
Input your [[user account|user ID]], password and server IP address as appropriate.<br />
<br />
== SSH Port forwarding or tunnelling ==<br />
SSH can improve security. If a HTTP connection is too insecure, and you are not on a VPN, consider using SSH to connect to the GitLab or MediaWiki services. In simple terms, your application (e.g. browser, git client) talks to a localhost port instead of an external address/port, the SSH connection then transparently forwards that data.<br />
<br />
The syntax in powershell or bash is:<br />
`ssh -L local_port:remote_address:remote_port username@server.com`<br />
You can then leave that tunnel open in the background, traffic targeting localport will move through it. This will be the recommended method to connecting with Jupyter Notebooks once the firewalls are hardened.<br />
<br />
== See also ==<br />
* [https://www.jetbrains.com/help/pycharm/configuring-remote-interpreters-via-ssh.html Using PyCharm with a remote interpreter]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=SSH_Keys&diff=171SSH Keys2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>You can create SSH keys using the Bash environment on the GPU cluster.<br />
<br />
`ssh-keygen -t rsa -b 4096` will create a private/public pair.<br />
<br />
Private key is for you (client), public is for the server you want to connect to. For SSH autologin add the public key string to the authorized_keys file in `~/.ssh`, and remember to `chmod 600` that folder. To connect with the PuTTy client you'll need to convert the private key to PPK format using PuTTyGen.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=SSH_login&diff=173SSH login2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[SSH/SFTP]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Server_Overview&diff=175Server Overview2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>The department of [https://radiology.hku.hk/ Diagnostic Radiology] manages multiple IT resources such as servers, terminals, projectors and printers.<br />
<br />
* <big>[[GPU Cluster]].</big> Primarily for machine learning applications and data storage.<br />
* <big>[[Cyclotron fileserver]]</big>. Older PC still used by some students.<br />
* <big>[[PACS|PACS servers]]</big>. Used to store patient scans.<br />
* <big>[[Terminals]]</big>. Designated PCs used to access PACS servers or QM e-health records.<br />
* <big>[[MicroPET]]</big>. Lab system for the microPET/MRI scanner. <br />
* <big>[[MARS]]</big>. Lab system for the multispectral CT scanner.<br />
* <big>[[Peripherals]]</big>. Equipment like projectors, writing tablets, printers, etc.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Ssh&diff=179Ssh2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[SSH/SFTP]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Ssh_login&diff=181Ssh login2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[SSH/SFTP]]</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Student_email_list&diff=183Student email list2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>{| class="wikitable sortable"<br />
|-<br />
! Name !! Email !! Office<br />
|-<br />
| jurgen|| jurgen@hku.hk|| Cyclotron<br />
|-<br />
| Example || Example || Example<br />
|-<br />
| Example || Example || Example<br />
|}<br />
<br />
<br />
Note that `ID@hku.hk` is an alias for `ID@connect.hku.hk`. They resolve to the same account, but the "connect" version is the official one needed to login to Google services, and is the only one retained after leaving HKU.</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Summary&diff=185Summary2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[Server Overview]]<br />
Summary overview</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=User_account&diff=189User account2020-04-10T23:25:37Z<p>Admin: 1 revision imported</p>
<hr />
<div>User accounts for the [[GPU cluster]] must be created by someone with administrative-level access to the servers. Currently (March 2020) Cao Peng is designated [[Admin]]. <br />
<br />
The standard process is: <br />
* Request account from Admin<br />
* Receive ID and password via email or WhatsApp.<br />
<br />
== Initial setup ==<br />
* [[SSH login]] and change your password upon first login, using the command <code>passwd</code>.<br />
<br />
After this, the user will have a folder on `/home/[userID]` that can't be accessed by non-admins.<br />
<br />
== Deactivate your anaconda environment (optional) ==<br />
The [[Anaconda]] base environment may be activated by default when you first log in. To prevent this automatic activation type: `conda config --set auto_activate_base false`<br />
<br />
== Guide to using MATLAB commandline ==<br />
Just use `matlab` on the commandline to start the interactive console. <br />
See [https://www.mathworks.com/help/matlab/ref/matlablinux.html the MATLAB documentation] for more options.<br />
<br />
(currently not installed systemwide, but users can [https://www.mathworks.com/downloads/web_downloads/download_release?release=R2020a download] and install in their home folder by themselves)</div>Adminhttps://mediawiki_radwiki_1/wiki/index.php?title=Hpc&diff=155Hpc2020-04-10T23:25:36Z<p>Admin: 1 revision imported</p>
<hr />
<div>#REDIRECT [[GPU Cluster]]</div>Admin