🖊️
Research Computing
  • Research Computing
  • HPC Cluster Build Workshop
    • Jetson Nano Initial Setup
    • First Boot
    • Networking Setup
    • Local and Global Storage
    • Set up root account
    • pdsh and /etc/hosts
    • IP forwarding for compute nodes
    • Adding Users
    • Testing the Installation to date
    • Modules: Lmod
    • MPI introduction
    • MPI hello.f90
    • MPI hello.c
    • MPI Benchmarks
    • Game of Life
    • Slurm
Powered by GitBook
On this page

Was this helpful?

  1. HPC Cluster Build Workshop

Networking Setup

PreviousFirst BootNextLocal and Global Storage

Last updated 5 years ago

Was this helpful?

The master node will have two network interfaces if a USB-ethernet connector is present: eth0 and eth1. The compute nodes should have a single interface: eth0. For consistency, we will use eth0 throughout for the private network and eth1 on the master for connection to the local 'public' network.

By default, the networks will obtain their IP address using DHCP. For the master node's eth1 network, we will use this default.

Eth0 will be configured for static IP addresses. We will use the 10.0.0.X address space to avoid conflicts with external networks. For consistency, we will name compute nodes using the name of the master node and appending a 01-04. Students may name their master nodes as they please. With a master node named 'nano', for example, the compute nodes would be named nano01, nano02, nano03, and nano04. The corresponding IP addresses could then be 10.0.0.100 ('nano'), 10.0.0.101 ('nano01'), 10.0.0.102 ('nano02'), etc.

To configure a static IP address, create a file named 'eth0' in the /etc/network/interfaces.d/ directory as root (or sudo), with the following content:

The '101' below should be changed to match which node you are on (i.e. '100' for master, '101' for node01, etc.)

allow-hotplug eth0
iface eth0 inet static
        address 10.0.0.101
        netmask 255.255.255.0

Here's an example using vi as the editor:

root@nano01:~# cd /etc/network/interfaces.d
root@nano01:/etc/network/interfaces.d# vi eth0

Which should look something like this:

Alternatively, you can do all of this on the command line with a here document:

This will completely overwrite the contents of the file specified after the > symbol.

root@nano01:~# cat > /etc/network/interfaces.d/eth0 << EOF
> allow-hotplug eth0
> iface eth0 inet static
>         address 10.0.0.101
>         netmask 255.255.255.0
> EOF

You can then test by bringing the interface up:

root@nano01:~# ifup eth0

If no errors, confirm the interface is configured properly:

root@nano01:~# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.0.101  netmask 255.255.255.0  broadcast 10.0.0.255
        inet6 fe80::204:4bff:fee6:8a16  prefixlen 64  scopeid 0x20<link>
        ether 00:04:4b:e6:8a:16  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 144  bytes 21436 (21.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 149  base 0x3000  

Once you have two machines configured, test connectivity using ping and ssh:

Screen capture of vi session
Example of ping between two nodes
Example of ssh connectivity between node