You are here: Home > Analyse > Internet Measurements > RIPE Atlas

VM anchor Installation

Installation instructions

You can create a Virtual Machine to be used as a RIPE Atlas anchor, provided it meets certain requirements.

The following requirements ensure a consistent environment for the operation of RIPE Atlas VM anchors across different virtualisation technologies that may be used by anchor hosts.

Network requirements

Network-wise, RIPE Atlas VM anchors have the following requirements:

  • The anchor must have native IPv4 and IPv6 (if IPv6 is not announced in the host ASN)
  • Static IPv4 and IPv6 addresses need to be unfiltered (not firewalled)
  • The VM anchor may require up to 10 Mbit bandwidth (it currently requires much less)

Hardware requirements

Create a VM with the following virtual hardware specifications:

  • 2 vCPUs, amd64 (x86_64) platform
  • 2GB of RAM
  • 50GB of storage
  • 1 virtual NIC

OS requirements (for installing Linux on VM)

  • A minimal CentOS7 installation
  • The NIC must be presented as eth0. You should add net.ifnames=0 to the kernel boot command line
  • The storage to be presented as a single block device, with the following partition layout:
  • partition 1: 256MB for /boot, ext4
  • partition 2: remaining space, LVM Physical Volume
  • 4GB for the / logical volume, ext4
  • 20GB for the /var logical volume, ext4
  • 4GB for the /tmp logical volume, ext4
  • 20GB for the /home logical volume, ext4
  • 2GB for swap logical volume

Install Linux on the VM anchor

Below is an example CentOS7 Anaconda kickstart installation config, that will install the operating system:

install  
cmdline  
text  
lang en_US.UTF-8  
keyboard us  
rootpw --iscrypted !! --lock  
firewall --service=ssh  
authconfig --enableshadow --passalgo=sha512 --enablefingerprint  
selinux --enforcing  
timezone --utc UTC  
bootloader --location=mbr --append="crashkernel=auto console=ttyS0,115200n8 net.ifnames=0"  
clearpart --drives=/dev/sda --all --initlabel  
zerombr  
part /boot --fstype=ext4 --size=256 --ondisk=/dev/sda  
part pv.01 --grow --size=1 --ondisk=/dev/sda  
volgroup vg01 --pesize=4096 pv.01  
logvol / --fstype=ext4 --name=lv_root --vgname=vg01 --grow --size=2048 --maxsize=4096 --fsoptions="noatime,nodiratime,discard"  
logvol /var --fstype=ext4 --name=lv_var --vgname=vg01 --grow --size=2048 --maxsize=20480 --fsoptions="noatime,nodiratime,discard"  
logvol /tmp --fstype=ext4 --name=lv_tmp --vgname=vg01 --grow --size=1024 --maxsize=4096 --fsoptions="noatime,nodiratime,discard"  
logvol /home --fstype=ext4 --name=lv_home --vgname=vg01 --grow --size=1024 --maxsize=20480 --fsoptions="noatime,nodiratime,discard"  
logvol swap --name=lv_swap --vgname=vg01 --recommended  
network --bootproto=static --hostname=nl-ams-as3333.anchors.atlas.ripe.net --ip=192.0.2.2 --netmask=255.255.255.248 --gateway=192.0.2.1 --ipv6=2001:db8:0:0::2/64 --ipv6gateway=2001:db8:0:0::1 --nameserver=8.8.8.8,2001:4860:4860::8888 --device=eth0 --onboot=yes  
shutdown

%packages --nobase  
@core  
%end

%post --log=/var/log/ks-post.log  
# Bootstrap SSH key  
mkdir -p /root/.ssh  
chmod 700 /root/.ssh  
/bin/cat <<EOF > /root/.ssh/authorized_keys  
<< snip authorized key >>  
EOF  
# Set selinux context for sshd  
/usr/bin/chcon -R -v --type=ssh_home_t /root/.ssh  
%end

This kickstart file should be changed as follows:

  • the network line should be updated with the network settings for your Anchors
  • the snip authorized key line should be replaced with the SSH key that you will be sent by email after your Anchor registration has been accepted

Below is an example virt-install command to create the VM:

virt-install \  
   --name=nl-ams-as3333.anchors.atlas.ripe.net \  
   --file=/VMs/nl-ams-as3333.anchors.atlas.ripe.net.qcow2,size=50 \  
   --vcpus=2 \  
   --ram=2048 \  
   --os-type=linux \  
   --os-variant=rhel6 \  
   --graphics none \  
   --console pty,target_type=serial  \  
   --network type=direct,source=p4p1,source_mode=bridge,model=virtio \  
   -x 'console=ttyS0 noverifyssl ks=https://x.x.x.x/ks/anchor.ks ksdevice=eth0 ip=a.b.c.d netmask=255.255.255.192 gateway=a.b.c.d' \  
   --location /path/to/CentOS-7-x86_64-Minimal-1708.iso

You should modify the arguments as needed for your installation.

Start the virtual Machine

It is important that once you have installed the Anchor, you log in to your RIPE Atlas account, go to the My Atlas menu and then Anchors, and check the boxes “Software is installed” and Anchor is connected to the network so the RIPE NCC gets notified and can begin these tests.

Pass internal tests to verify measurements are possible

The RIPE NCC will perform some internal tests to check that the anchor is properly set up. If it isn't, we will contact you to troubleshoot.

NOTE: Your anchor will not be fully activated until we have finished these internal tests. We will notify you when they are complete.

Your RIPE Atlas VM anchor has been successfully setup!

Once all verifications are complete, the anchor will be fully activated and will become public:

  • You will be able to locate it on the map of anchors
  • It will appear on the list of anchors
  • You can use it as a probe for your own measurements
  • You will be able to select the anchor as a target under My Measurements
  • It will be added to the anchoring measurements that the RIPE NCC runs for you
  • You will start earning credits you can use to perform your own customised measurements

We develop RIPE Atlas in cooperation with the Internet community, and we want to know what you think. Find out how to get in touch.