Follow

InfiniGuard NetBoostFS

Overview

The NetBoost File System (NetBoostFS) includes your servers in the deduplication process, to minimize bandwidth and send only unique data over the network.  Since the NetBoost File System appears as a native file system on the client, or backup host, any program that can write to a file system can use NetBoostFS.

NetBoostFS enables a hybrid or collaborative approach to deduplication, combining the best features of both target and source-based systems. It moves a portion of the deduplication process to the backup server, so that only unique blocks are transmitted to the target appliance. This system, which leverages many of the underlying functionalities of InfiniGuard DDE replication, allows InfiniGuard DDE NetBoost to accelerate backups where network bandwidth is the limiting factor.

The NetBoost File System uses FUSE (File System in User Space) to export file system requests to a custom daemon. The behavior is similar to NFSv3 exports and mounts. The daemon converts file system requests as appropriate, and transports new user data  to the InfiniGuard DDE using the distributed deduplication features of InfiniGuard DDE NetBoost.

NetBoostFS is intended to be used by backup applications not supported directly by Infinidat application-specific plug-ins.

System Requirements for the InfiniGuard NetBoostFS Plug-in

The InfiniGuard is a fully configured system with 3 Data Deduplication Engines (DDEs); 2 active 1 passive, in addition to storage, network and power management systems.  This document will focus on installing and configuring the NetBoostFS Plug-in with the Deduplication Engines that will be referred to as "DDE".

The following components are required for NetBoostFS operation with the InfiniGuard:

  • DDE requirements:
    • InfiniGuard DDE software version 3.1 or greater.
    • One or more application-specific shares.
  • Client server requirements:
    • Supported platforms:
      • Red Hat Enterprise Linux (RHEL) 7 x86-64-bit
      • CentOS 7 x86-64-bit
      • FUSE-libs RPM must be installed.

NetBoostFS Plug-in Instillation and Configuration

The following steps are required to configure the client or backup server with the InfiniGuard DDEs.

Install the NetBoostFS Plug-in

Note

Yum is the primary tool for obtaining, installing, deleting, querying and managing Red Hat Enterprise Linux (RHEL) RPM software. This process assumes you are able to connect to the server, use the command-line interface (CLI) and are familiar with yum. For more information, the RHEL7 System Administrator's Guide covers yum usage in Chapter 9: Yum.

If necessary the NetBoostFS Plug-in can be downloaded from the InfiniGuard Plug-in Repository.

Before you can configure the InfiniGuard DDE with NetBoostFS, you must download and install the NetBoostFS Plug-in on the application Media Server, MediaAgent, Storage Note or other Linux server using yum.

  1. Download the NetBoostFS Plug-in for your platform from the Infinidat Service and Support, InfiniGuard Client Plug-ins page.
  2. Complete these steps to use yum to install the NetBoostFS rpm file.

a.  Connect to the server and open  a CLI window.

b.  Enter #  yum  install  infinidat-netboostfs-1.0.0-3752.e17.x86_64.rpm (sample filename used).

The system checks for and resolves file dependencies, checks file size and other attributes, and returns a confirmation before proceeding.

c.  At  Is this  ok?  [y/d/n], type y and press Enter.

The system runs the install package and returns NetBoostFS installation was successful.

Note

The RPM installs a manual page which can be accessed by running

man -l /opt/infinidat/netboostfs/share/man/man8/netboostfs.8

Configure the InfiniGuard DDE

This section assumes the InfiniGuard is fully configured and you will be adding NetBoostFS to a client server.  For additional information, see the InfiniGuard User Guide and other documents.

Log into the InfiniGuard.

Use the InfiniGuard Floating IP address to login from your remote browser.

Log into the InfiniGuard GUI using your Administrator username and password.

Create an Application Specific NAS Share

Notice that when Dedup Engines is selected in the Home menu on the left, both active DDEs are presented in the configuration window.

Select the DDE that will be configured with the NetBoost client server, and click Configuration

The NAS Summary tab showing the NAS and Application Specific Shares List should appear by default.

  Click Add to launch the Add NAS Share dialog.

 Type a unique name for the share in the Name box.

Under Protocol, select Application Specific, then click Apply.

The NAS and Application Specific Shares List screen appears, listing the new share.   For more information on InfiniGuard DDE Shares See the User Guide: NAS Configuration

 

Create an Authenticated User

Create credentials for the NetBoostFS Plug-in to use to authenticate the Application Specific Share.

Select the DDE where the Application Specific Share was created and click the Configuration tab on the left side.

Click System then Managed Users tabs.

In the Authenticated Users table, click Add.

Use the Manage Authenticated Users dialog to add the new authenticated user then, click Apply.

These will be the credentials used to mount the NetBoostFS share.  For more information on managing authenticated users; see the User Guide: System Configuration Manage Users

Continue to Mount the NetBoostFS Share.

Mount the NetBoostFS Share

Perform the following steps on the backup application Media Server, MediaAgent, Storage Node or other client server to allow access to the share created in the previous section

Use your preferred text editor to create a Credentials file with the username=<username> on one line and password=<password> on another. Take note of the location of this file.

Example: [root@io-wt-20 opt]# cat /opt/infinidat/netboostfs/.netboostfscred

username=netboostfs
password=123456

Note

You will only need to create the credentials file once.

Create a local mount point where the share will be mounted in the following command.

Enter /opt/infinidat/netboostfs/bin/netboostfs  -o credentials=<path  to  credentials  file>  <InfiniGuard DDE hostname>:/<sharename>  <mountpoint>.

Example:   /opt/infinidat/netboostfs/bin/netboostfs -o credentials=/opt/infinidat/netboostfs/.netboostfscred 172.31.32.103:/netboostfs1 /netboostfs1


 At this point, any data  being written into the NetBoostFS share on the client gets written to the InfiniGuard DDE.


Caution

This Mount is not persistent as described in the above examples.  If a backup target is not persistent it will not persist across reboots. Therefore, if the server/host mounting the file system is rebooted, the fuse file system must be remounted before use. Failure to do so, could cause a condition where data is accidentally written to the mount point rather than the mounted file system and the local disk capacity could be then filled. Best Practices recommends that the file system used for persistent data backup be mounted persistently.

Persistent Mount configuration for NetBoostFS

The infinidat-netboostfs rpm installed the following two scripts in the /sbin directory on the server where the NetBoostFS plug-in is install to assist with persistently mounting NetBoostFS.

  • mount.netboostfs
  • umount.fuse.netboostfs 

In order to allow for the NetBoostFS mount to remain persistent throughout server reboots, the following line should be added to /etc/fstab:

Example entry:

172.20.44.198:/NetBoostFS /mnt/netboostfs netboostfsdefaults,_netdev,credentials=/opt/netboostfs/credentials 0 0

 Entry-construct:

First-field="DDE-Device-Data-IP:/share-name" second-field="/mount-point" third-field="netboostfs" fourth-field="defaults,_netdev,credentials=(path-to-credential-file)" fifth-field="0" sixth-field="0"

This will allow for netboostfs to remain mounted throughout reboots.

Mount and unmount NetBoostFS command

To manually mount or unmount an NetBoostFS share on the client, type the following in the command line:

  • mount -t netboostfs
  • mount -a

  • umount netboostfs
  • umount -a

TLS Configuration Option for NetBoostFS

NetBoostFS can be configured to secure its communications with TLS (Transport Layer Security) by adding tls_certificates=<directory> to the credentials file.

Note

This is an advanced and optional configuration option. Your company may require using TLS for added security.

The TLS certificates directory must contain the following files:

  • cert.pem - The client’s public certificate.
  • key.pem - The client’s private key.
  • cacert.pem - The certificate authority’s certificate. This certificate will be used to verify the server’s certificate.

 In addition, the TLS certificates directory may optionally contain:

  • crl.pem - A certificate revocation list.

Best Practice Consideration with NetBoost  

The following are some considerations for optimizing the NetBoostFS environment.

  • A host can only have a single NetBoostFS plugin installed at a time.
  • Infinidat does not support concurrent access to a share from multiple client hosts as there would be issues around coherency when accessing the same files on multiple hosts
  • Each DDE supports up to 128 Application Specific or NAS shares (256 per InfiniGuard). The UI shows how many are configured and how many remain. When the limit is reached no new devices can be created on that DDE.
  • Each DDE supports up to 768 concurrent streams (1536 concurrent streams per InfiniGuard) which can be aggregated between multiple NetBoostFS client servers.
  • The best performance is expected for backups with between 50 and 100 streams per NetBoostFS client.  Of course, the client server and network largely influence results.


Troubleshooting, Help and support

Our focus is to make it better, faster, easier, while reducing cost and complexity. Our success will be measured by our clients.

Self Help

Before reaching out to Infinidat Storage Support the following should be understood by administrators and considered before calling.

How can I free up disk space on my DDE?

There are multiple ways you can remove data from your DDE:

  • Delete data from your NAS share or VTL partition. 
  • Erase or re-label tapes from your backup application. 
  • Delete the virtual media altogether.
  • If the DDE is a replication target system, delete replicated snapshots.

After you take one or more of the previous actions, and after space reclamation completes, space consumed will be returned to the system.

When should I schedule replication for best performance?

Optimize your performance by scheduling your backups, and replication to run at different times throughout the day.

How can I increase my deduplication ratio?

Optimize your deduplication ratio by disabling software compression, encryption, and multiplexing in the backup application. Space reduction rates are a combination of deduplication and compression and a direct result of the number of redundant backups of data over the life cycle of defined retention. Therefore, client that run more full backups with higher retention values tend to see greater reduction rates than clients that run frequent incremental backups with shorter retention rates.

What should I do when my backups fail?

Backup jobs may fail for some of these reasons:

  1. The DDE ran out of space during the backup window. 
  2. Your backup host lost network connectivity to the DDE.
  3. Your backup application may have crashed. Try re-running the backup
  4. Your client in backup or the data mover managing backup traffic is over-whelmed and unable to process the work at hand.
  5. A backup policy or resource configuration access is misconfigured.

Documentation

The complete InfiniGuard documentation set is available here: https://support.infinidat.com/hc/en-us/articles/360000491457-InfiniGuard-3-0-documentation

Scope of Support

Support Services shall be provided 24 hours per day, 7 days a week. As part of the Support Services, Infinidat shall provide Installation Services, Updates, Telephone Support, Online Support, Remote Support (if applicable), and Onsite Support (if applicable), solely with respect to a Supported Release of the Product.

Service Levels

Infinidat shall provide Telephone Support, Online Support and Error Correction services in accordance with the chart below, as long as access to the Product is granted to Infinidat.

Response time for acknowledgement by Infinidat

  • Infinidat will provide you with an acknowledgement of the Support Request within the following time periods:
    • Priority A - 1 hour
    • Priority B - 4 hours
    • Priority C - next business day Onsite Support Availability
  • Onsite support will be provided within the following time periods, after Infinidat deems Onsite Support is necessary:
    • Priority A - 4 hour
    • Priority B - next business day
    • Priority C - to be scheduled with you

Contacting Infinidat

See instructions here: https://support.infinidat.com/hc/en-us/sections/360000024169-How-to-contact-INFINIDAT-Support

INFINIDATPlugin.conf


Additional Information

Further, it is not recommended that customizations be made by adjusting the NetBoostFS configuration file:

Best Practices suggest consulting with Infinidat support before configuration file changes are made.

#########################################################################

#

# INFINIDATPlugin.conf

#

# Description     : Plugin configuration settings

#

#

#

# DEBUG_LEVEL - Defines the level of logging to enable. The value of

#               this option defines the level of log messages to

#               output. Set it to one of the following:

#

#   EMERGENCY

#   ALERT

#   CRITICAL

#   ERROR

#   WARNING

#   NOTICE

#   INFO

#   DEBUG

#   TRACE

#

#   Default (when this value isn't set in this file): ERROR

#

DEBUG_LEVEL=INFO

 

 

# OPDUP_TIMEOUT - Defines timeout of an Optimized Duplication/Copy

#                 of an extent in seconds.

#

#   Default: 43200 (seconds = 12 hours)

#OPDUP_TIMEOUT=43200

 

 

# IO_PATH - Defines the method of communication used between the plugin and the

# backup server.

# Possible values are:

#   1 for DM v2

#   2 for NAS

#   3 for DM v1

#   4 for NetBoost (RedHat and SUSE Linux only)

#

#   Default: 1 (All Unix/Linux platforms except RedHat and SUSE Linux)

#   RedHat and SUSE Linux default: 4

#IO_PATH=4

 

 

# OPDUP_MBYTES - Defines optimized duplication request length for NetBackup application.

#                As of NetBackup 6.5.5, it requests the plugin to copy in terms of

#                256KB at a time. The plugin aggregates them into OPDUP_MBYTES before

#                requesting the server to replicate.

#                The value is set in megabytes.

#   Default: 1024 (MB)

#OPDUP_MBYTES=1024

 

 

# LOG_FILE_LIMIT - Defines the maximum number of plugin client log files.

#

# Default: 10

#

#LOG_FILE_LIMIT=10

 

 

# LOG_LIMIT - Defines the size of the plugin client log file, in bytes.

#

# Default: 104857600 (bytes)

#

#LOG_LIMIT=104857600

 

#

# DATA_CONNECTION_BUSY_TIMEOUT - NetBoost only. Defines the total time (in seconds)

#                                that the plugin should spend trying to

#                                connect to the server.

#                                Default: 300.

#

#DATA_CONNECTION_BUSY_TIMEOUT=300

 

#

# TCP_RCVBUF - Defines the network receive-buffer size (bytes) used for DM

#

# 0: Use system default

#

#TCP_RCVBUF=5242880

 

#

# TCP_SNDBUF - Defines the network send-buffer size (bytes) used for DM

#

# 0: Use system default

#

#TCP_SNDBUF=2097152

 

#

# TCP_NODELAY - Set whether TCP option TCP_NODELAY is set for socket connections

#               Default: unset (operating system default)

# 0: disabled

# 1: enabled

#

#TCP_NODELAY=1

 

#

# WRITE_CACHE_SIZE - NetBoost only. Defines the size (in MB) of the

#                    write-behind cache.

#            Integer Values: 0 - 16.

#            Value of 0 disables write-behind cache. Max supported

#            value is 16.

#

# Default: 16

#

WRITE_CACHE_SIZE=16

 

# READ_CACHE_SIZE - NetBoost only. Defines the size (in MB) of the

#                   read-ahead cache.

#            Integer Values: 0 - 30.

#            Value of 0 disables read-ahead cache. Max supported value

#            is 30.

#

# Default: 16

#

READ_CACHE_SIZE=16

 

# SERVER_READ_BUFFERED - NetBoost only. Defines if server-managed

#                        buffering is enabled.

#            Integer Values: 0 - 1

#            Value of 0 disables server-managed buffering.

#            Value of 1 enables server-managed buffering.

#

# Default: 1

#

#SERVER_READ_BUFFERED=1

 

#

# SERVER_ENCRYPTION - NetBoost only. Turn encryption off/on

#                     Integer Value: 0/1

#            Value of 0 disables encryption regardless of server setting

#            Value of 1 encryption determined by server setting

# Default: 1 (Use encryption setting from server)

#SERVER_ENCRYPTION=1

 

#

#DMC_READ_AHEAD_SIZE_MB - Defines the size of the read ahead size in MB.

#                         Integer Values: 0 - 32.

#                         Value of 0 disables the read ahead.

#

#DMC_READ_AHEAD_SIZE_MB=16

 

#

#RECONNECT_ALLOWED - Allows the plugin to reconnect automatically to the server

#                    if it detects that a connection has been dropped.

#                    Value of 0 disables the reconnect from occurring.

#                    Default: 60 (seconds for reconnect)

#RECONNECT_ALLOWED=60

 

#

# ADMIN_ALERT_TIME - Raise admin alerts on InfiniGuard if any of bfst2_* calls do

#                    not complete within ADMIN_ALERT_TIME.

#                    This time is in seconds and default is 300 seconds.

#ADMIN_ALERT_TIME=300

 

#

# ADMIN_ALERT_LIMIT - Upper bound on the number of Admin Alerts generated per job.

#

#ADMIN_ALERT_LIMIT=1

 

#

# TCP_KEEPIDLE - Set the TCP option TCP_KEEPIDLE for socket connections.

#               This is equivalent to tcp_keepalive_time.

# Default: System settings

# Max: 276446

#

#TCP_KEEPIDLE=7200

 

#

# TCP_KEEPCNT - Set the TCP option TCP_KEEPCNT for socket connections.

#               This is equivalent to tcp_keepalive_probes.

# Default: System settings

# Max: 1215752191

#

#TCP_KEEPCNT=9

 

#

# TCP_KEEPINTVL - Set the TCP option TCP_KEEPINTVL for socket connections.

#               This is equivalent to tcp_keepalive_intvl.

# Default: System settings

# Max: 276446

#

#TCP_KEEPINTVL=75

 

Was this article helpful?
0 out of 0 found this helpful

0 out of 0 found this helpful

Comments