= perfSONAR Bundle Installation = === perfSONAR Installation Options === There are five perfSONAR installation options (different packages) in which four of them contains network measurement testing tools and other one contains perfSONAR management tools. Below graphics shows the relationship between them. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps1.png)]] You can find more information on these option from [https://docs.perfsonar.net/install_options.html this page]. perfSONAR supports two major linux distributions Centos and Ubuntu/Debian. Currently CentOS 7, Ubuntu 18 and Debian 9 is supported. Other distributions may partially supported or may work but should be installed at your own risk. In addition, the above different options/packages can be installed using different methods and in different environments docker and virtual machines. === Hardware requirements === The requirements for the perfsonar-core, perfsonar-toolkit, and perfsonar-centralmanagement bundles are a minimum of 2 cores and 4GB of RAM. The perfsonar-testpoint bundle may work with 2GB of RAM, but 4GB is recommended. The clock speed requirements depends on how fast your network is, but we recommend at least 2GHz cores in general, and 2.8GHz or higher if you want to test 10G paths. While for perfsonar bare-metal installation is allways recommended other options like Virtual machines, Docker containers and cheap hardware options are supported with subject to varying level of success. For more information on hardware options please check [https://docs.perfsonar.net/install_hardware.html this page]. === perfSONAR installation === Lets now see how to install perfsonar. Perfsonar toolkit is the package that contains the full suite of the testing tools. There several methods to install this toolkit. Here we are using CentOS Toolkit ISO image to do the installation. This can be installed either on bare-metal server or on a virtual machine. First you need to write ISO image into a USB drive and boot the server from the USB. Next you will follow instructions which is almost same as installation of a CentOS 7 operating system. From below choose the Install the perfSONAR Toolkit. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps2.png)]] Next select the language. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps3.png)]] Next select the installation destination which is the hard disk of your installation. Then select a suitable partitioning scheme. Here we will chose automatic partitioning since this is a lab setup. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps4.png)]] click on Done and then select Begin Installation. While the Toolkit with the CentOS operating system is being installed you can create user account and set the root user password. Please use below user and passwords for this setup. root : NmmLab2022 user : NmmLab2022 Once installation completed you will see the below login screen. You need to login with root user. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps5.png)]] After you log in, you are prompted to add a user ID and password to log into PerfSONAR's web frontend. Make sure to remember your login information. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps6.png)]] In next step you're also asked to disable SSH access for root and add a super user instead. Just enter to accept the default selection yes. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps7.png)]] Earlier in perfSONAR installation we added user called user. Now enter the username as user so that it will be enabled as a super user to the operating system. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps8.png)]] Next step is to configure an IP address and hostname to the operating system. Before that you will have to know the interface names of your server. For that please enter below, {{{ ifconfig }}} [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps10.png)]] Next using a preferable text editor open the configuration file relevant to the network interface. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps11.png)]] Then edit the configuration file something like below. Make sure to set parameter BOOTPROTO to "none" and IPADDR, PREFIX, GATEWAY, DNS1, DNS2 as per your home/office connectivity. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps12.png)]] === Accessing the Web Interface === You may access the web interface by typing''' https:///toolkit ''' in your web browser. Initial page will be like below. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps9.png)]] There are some perfSONAR host configurations to be done before we proceeding with network measurements. For that click on the configuration on top of the page. You will be promted for a user login. Please provide the credentials we created earlier. There are three tabs and first we will fill Administrative information. Please fill the fields appropriately and it should be like below. Once done click on Save to apply the configurations. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps13.png)]] Then go back to the Dashboard and see the Host Information section on the right side. It could be like below. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps14.png)]] If the NTP Synced is No then go back to Configuration and to the second tab Host. In this tab Network Time Protocol (NTP) servers are configured for the node. Global time syncing is very important to network measurements to be accurate. So we must make sure that NTP Synced status is always Yes. [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARsetup/ps15.png)]] Click on "Select the closest servers" to update NTP server listed and check again whether NTP Synced status has come to Yes value.