|
|
# Starting the perfSONAR MaDDash sampler project
|
|
|
|
|
|
This project doesn't do any network monitoring! It does show how you can set up the perfSONAR RPMS to set up testpoint nodes and then a central management Maddash web site, incorporating the monitoring results from the testpoint nodes.
|
|
|
This project doesn't do any network monitoring! It does show how you can set up the perfSONAR RPMS to install testpoint nodes and then a central management Maddash web site, incorporating the monitoring results from the testpoint nodes.
|
|
|
|
|
|
|
|
|
|
|
|
This is essentially a virtual machine implementation of Andy Lake's one page "MaDDash and perfSONAR Install" document (see https://docs.google.com/document/d/1k7FT66MKPy3JjpD5k0OFAFlTpSdFmZ6huhTUDQ2rGGY/edit?usp=sharing)
|
|
|
|
|
|
|
|
|
I've intentionally tested this on a small system, an Intel Nuc (NUC8i3BEK). It has a dual core Intel Core i3-8109U, 8G of RAM, and a 230g M.2 SATA drive. The project works on this level of hardware, barely. If you have a larger box for this demo system, it will save you some time during the installs.
|
|
|
I've intentionally tested this on a small system, an Intel Nuc (NUC8i3BEK). It has a dual core Intel Core i3-8109U, 8G of RAM, and a 230g M.2 SATA drive. The project works on this level of hardware. If you have a larger box for this demo system, it will make the install and operaton smoother.
|
|
|
|
|
|
|
|
|
The project uses libvirt KVM virtual machines, generally these are based on Centos or Fedora base systems. I'll be using Centos 7, (the perfSONAR/MaDDash VMs also use Centos 7). Related to using libvirt VMs, the project uses Macvtap networking. This has a number of advantages that I won't go into. It does require one extra bit of hardware however. The base system needs a second ethernet port! Many systems come native with that, use that if your system has it. The Nuc doesn't have the second port so I used an 'USB3 to Ethernet' dongle and it worked out just fine.
|
|
|
The project uses libvirt KVM virtual machines. I'll be using Centos 7, (the perfSONAR/MaDDash VMs also use Centos 7). Related to using libvirt VMs, the project uses Macvtap networking. This has a number of advantages that I won't go into. It does require one extra bit of hardware however. The base system needs a second ethernet port! Many systems come native with that, use that if your system has it. The Nuc doesn't have the second port so I used a 'USB3 to Ethernet' dongle and it worked fine.
|
|
|
|
|
|
|
|
|
A few more setup details. You'll need to have management access to a DHCP and DNS server. For networking, you could be bold and use a public network or more likely use a non-routable private segment. These git files use the 192.168.1.0/24 net, but that can be adjusted if needed.
|
|
|
You'll need to have management access to a DHCP and DNS server. For networking IPs, you could be bold and use a public network or more likely use a non-routable private segment. These git files use the 192.168.1.0/24 net, but that can be adjusted if needed (see maddash.yml).
|
|
|
|
|
|
|
|
|
Next let's plan the name, IP, MAC addr, and domain names needed for the project.
|
... | ... | @@ -29,27 +29,27 @@ Next let's plan the name, IP, MAC addr, and domain names needed for the project. |
|
|
|dj2|192.168.1.215|52:54:00:73:6f:46|dj2.ufixu.com|
|
|
|
|dj3|192.168.1.216|52:54:00:73:6f:47|dj3.ufixu.com|
|
|
|
|
|
|
If you make changes to the above table, plan to make similar edits to: Vagrantfile, review all the .yml files and possibly mesh.json & disjoint.json.
|
|
|
If you make changes to the above table, plan to make similar edits to: Vagrantfile, review all the .yml files and possibly mesh.json & disjoint.json.
|
|
|
|
|
|
|
|
|
To set the context, VMs create their own MAC addresses, thus the set suggested will be fine, as the suggested MAC addrs will be seeded to the vm's. From the MAC address, the DCHP server should provide the fixed IP number indicated. Lastly, depending on how fancy your setup is, you may be able to assign a private or public FQDN for each planned VM.
|
|
|
To set the context, VMs create their own MAC addresses, thus the set suggested will be fine, as the suggested MAC addrs will be seeded to the VMs. From the MAC address, the DCHP server should provide a fixed IP number indicated. Lastly, depending on your setup, you may be able to assign a private or public FQDN for each planned VM.
|
|
|
|
|
|
|
|
|
Build the base system with its own hard coded MAC and IP, **with the user 'vagrant' (sudo enabled) and any pword you'll remember**. Use Centos7, do a minimal install and add the EPEL repository.
|
|
|
Build the base system with its own hard coded MAC and IP, **with the user 'vagrant' (sudo enabled) and any pword you'll remember**. Use Centos7, do a minimal install and add the EPEL repository, do a final 'update'.
|
|
|
|
|
|
The base host needs two ethernet interfaces, but only one needs to be active. The easiest way to get this setup is to only plug in one ethernet cable to the base system during this initial install. Once the OS is installed, plug in the second ethernet cable into the second port or plug in the USB-enet adapter with the ethernet cable connected. Then use the following commands:
|
|
|
The base host needs two ethernet interfaces, but only one needs to be active. The easiest way to get this setup is to only plug in one ethernet cable to the base system during the initial install. Once Centos is installed, plug in the second ethernet cable into the second port or plug in the USB-enet adapter with the ethernet cable connected. Then use the following commands:
|
|
|
```
|
|
|
ip a
|
|
|
(use this to identify the second interface, on the Nuc, with USB-enet connector it is
|
|
|
(use this to identify the second interface, on the Nuc, with USB-enet dongle, it is
|
|
|
enp0s20f0u2 typically if the network has DHCP enabled, this will be assigned an IP
|
|
|
address when the cable is plugged in)
|
|
|
sudo nmcli dev disconnect enp0s20f0u2
|
|
|
ip a
|
|
|
(the interface should still be listed, and up, but not have any IP addresses)
|
|
|
(the second interface should still be listed, and up, but not have any IP addresses)
|
|
|
```
|
|
|
|
|
|
|
|
|
Once that is done you'll need to load Git, Ansible and Vagrant. Git and Ansible are straight forward yum installs. Vagrant has a yum component but the libvirt provisioner needs to be added and is often tricky.
|
|
|
Once that is done you'll need to load Git, Ansible and Vagrant. Git and Ansible are straight forward yum installs. Vagrant has a yum component and the libvirt provisioner needs to be added.
|
|
|
|
|
|
Tool install on Centos 7:
|
|
|
```
|
... | ... | @@ -73,4 +73,4 @@ ssh-keygen -o -a 256 -t ed25519 |
|
|
```
|
|
|
|
|
|
|
|
|
Return to the project README.md page for more steps, now that the base system is setup and ready to be used. |
|
|
\ No newline at end of file |
|
|
Now that the base system is setup, return to the project README.md page for more steps, |
|
|
\ No newline at end of file |