The other day I had a project come up where I was helping a customer deploy a Linux virtual machine as a front-end for their EMC Isilon. We decided to use CentOS as the Linux front-end but after that decision we were left with putting together a plan to create this machine and then what would the steps be to complete the Linux NFS front-end. Detailed below are the steps that we took in order to create this Linux Repository.
First, we started with creating a virtual machine for CentOS to be installed on. As a general rule Veeam recommends 1 vCPU & 2 GB RAM per concurrent task. We decided to build this machine with 4 vCPU & 8 GB RAM which will yield the ability to do 4 tasks. We chose to leverage the VMXNET3 NIC as the preferred NIC due to the customer having 10GbE within their environment. We also installed the VMware Tools within the guest which I will not be covering on this blog post. The hard drive for the CentOS operating system is not needed to be more than 10 GB unless you have other plans for it. The system is merely being leveraged as a mounting point for the back-end NFS storage.
After the installation of CentOS, there was a minimal amount of configuration left to be done.
1. Configure STATIC host IP address
2. Install NFS requirements
2a. yum install nfs-utils nfs-utils-libs
3. Upon completion we also ran some startup scripts to ensure everything was working properly.
3a. chkconfig nfs on
3b. service rpcbind start
3c. service nfs start
4. Next, we created the directory for our mount point
4a. mkdir /Veeam
After we finished the pre-requisites then we needed to move onto creating the mount within the operating system. The location within CentOS to create this mount is “/etc/fstab”. I leveraged VI in order to make the configuration changes to the configuration file.
5. vi /etc/fstab
6. At the end of the file add this line (modify according to your properties)
6a. IPADDRESS:/MOUNT_POINT /Veeam nfs hard,intr,nfsvers=3,tcp,bg,_netdev,auto,nolock 0 0
6b. Hit ESC and then enter :wq! to save the configuration file.
7. Run the command “mount -a” to mount the volume
After completing the mounted NFS volume within CentOS there was one more configuration change that needed to be finalized. The last step was to add a few openings into the firewall of the machine. In order for Veeam’s repository to work properly we need port 22 tcp (SSH) and ports 2500-5000 tcp allowed so that Veeam can communicate with the server.
8. We need to add entries to the IPTABLES configuration file
8a. vi /etc/sysconfig/iptables
8b. -A INPUT -m state –state NEW -m tcp -p tcp –dport 2500:5000 -j ACCEPT
After saving the iptables. We should restart the services to make sure the firewall accepted the new rules.
service iptables restart
Upon no errors, I typically reboot the system just to make sure the mount persists upon the reboot.
After the machine comes back up, it is time to check connectivity with Veeam. Here is where we can pull the CentOS into Veeam as a Linux Repository.
Choose “Linux server” as the type.
Click “Add New” for the server to enter in the information about your Linux VM. After entering in the information for the DNS/IP Address you will need to enter in information for the SSH Connection. I chose to do the addition as root. This was easiest for us. You can chose to restrict the user’s abilities as well as add that user to the sudoers list so that they can elevate to root when necessary.
Repository is the location for you to define the path to the folder you will be storing your data on. In my example, I used “/Veeam” as my mount point and will leverage that here in this window.
Last, I chose the vPower NFS server. My choice was to leverage the Veeam Management Server as my vPower NFS server but you could name any proxy within your environment as well.
After completing this portion, I moved onto configuring my Veeam Backup job to leverage the newly created Linux NFS repository. Thank you for checking out this post and if you have any questions or corrections please feel free to let me know. -AB