Skip to main content
Code42 Support

Enterprise Server Configuration Recommendations For SharePlan

Applies to:

    Overview

    Code42 recommends several enterprise server software and system adjustments to improve SharePlan performance.

    For general system requirements for an enterprise server, refer to Enterprise Server Requirements.

    Affects

    Enterprise servers running SharePlan

    Considerations

    • This procedure requires access to your enterprise server. For environments with managed appliances, please contact sales.
    • This procedure requires you to restart the enterprise server.
    • These adjustments can affect software other than SharePlan. If you have questions about the recommendations presented here, please contact your PRO Services representative.

    Before you begin

    Determine how much RAM is installed in the server that hosts your enterprise server.

    Windows Enterprise Server: Increase the Java memory limit

    Code42 recommends increasing the Java heap space up to one-half of the total RAM available on the enterprise server. Increasing the Java heap space beyond that value can cause performance problems.

    As an example, if your server has 16 GB of RAM available, then the maximum heap space you should use is 8 GB.

    Changes and Enterprise Server reinstallation
    Note that the changes in this method will not persist if you reinstall the enterprise server, and you will need to repeat the modification after a reinstallation.
    1. Navigate to the enterprise server main install directory:
      C:\Program Files\CrashPlan PROe Server
    2. Open the CrashPlanPROServer.ini file in a plain text editor.
    3. Locate the line beginning with the parameter Virtual Machine Parameters.
    4. Change the -Xmx argument of the Virtual Machine Parameters line to reflect the desired heap space. For example:
      • This argument would set the Java heap space to 4 GB:
        Virtual Machine Parameters=-Xrs -Xmx4G -Xss128K -Dapp=CPServer -Ddrools.compiler=JANINO
      • This argument would set the Java heap space to 8 GB:
        Virtual Machine Parameters=-Xrs -Xmx8G -Xss128K -Dapp=CPServer -Ddrools.compiler=JANINO
    5. Save the changes to the file.
    6. Use the Windows Services manager to restart the enterprise server service.

    OS X Enterprise Server adjustments

    Step 1: Increase the Java memory limit

    Code42 recommends increasing the Java heap space up to one-half of the total RAM available on the enterprise server. Increasing the Java heap space beyond that value can cause performance problems.

    As an example, if your server has 16 GB of RAM available, then the maximum heap space you should use is 8 GB.

    Changes and Enterprise Server reinstallation
    Note that the changes in this method will not persist if you reinstall the enterprise server, and you will need to repeat the modification after a reinstallation.
    1. Open the enterprise server's process initialization directory:
      /Library/LaunchDaemons
    2. Open the com.crashplan.proserver.plist file in a plain text editor.
    3. Locate the key beginning with the parameter ProgramArguments.
    4. Change the -Xmx argument string within the ProgramArguments key to reflect the desired heap space. For example:
      • This key would set the Java heap space to 4 GB:
        <string>-Xmx4g</string>
      • This key would set the Java heap space to 8 GB:
        <string>-Xmx8g</string>
    5. Save the changes to the file.
    6. Restart the enterprise server service.

    Step 2: Increase the open files limit

    Depending on the version of OS X, the method for increasing the open file limits is different. Use the instructions below for your version of OS X.

    OS X 10.9 and earlier

    Set the launchd soft and hard limits to 409600.

    1. Open the Terminal application.
    2. Run the following command to set the soft and hard limits to 409600:
      sudo launchctl limit maxfiles 409600 409600
    3. To make the new limits persist through system restarts, create or edit the /etc/launchd.conf file in a plain text editor and add the following line:
      limit maxfiles 409600 409600
      
    4. Make sure the permissions and file/group ownership on this file are similar to those around it. You can also set these values on a per-user basis by editing or creating a file named $HOME/.launchd.conf. This can be useful if the enterprise server is installed "as user".
    OS X 10.10 and later

    Set the launchd soft and hard limits to 409600.

    1. Open the Terminal application.
    2. Run the following command to set the soft and hard limits to 409600:
      sudo launchctl limit maxfiles 409600 409600
    3. To make the new limits persist through system, you must create two configuration files:
      1. Create a /Library/LaunchDaemons/limit.maxfiles.plist file in a plain text editor and add the following lines:
        <!--?xml version="1.0" encoding="UTF-8"?-->
        <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
          <plist version="1.0">
            <dict>
              <key>Label</key>
                <string>limit.maxfiles</string>
              <key>ProgramArguments</key>
                <array>
                  <string>launchctl</string>
                  <string>limit</string>
                  <string>maxfiles</string>
                  <string>409600</string>
                  <string>409600</string>
                </array>
              <key>RunAtLoad</key>
                <true/>
              <key>ServiceIPC</key>
                <false/>
            </dict>
          </plist>
        
      2. Create a /Library/LaunchDaemons/limit.maxproc.plist file in a plain text editor and add the following lines:
        <!--?xml version="1.0" encoding="UTF-8"?-->
        <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
          <plist version="1.0">
            <dict>
              <key>Label</key>
                <string>limit.maxproc</string>
              <key>ProgramArguments</key>
                <array>
                  <string>launchctl</string>
                  <string>limit</string>
                  <string>maxproc</string>
                  <string>2048</string>
                  <string>2048</string>
                </array>
              <key>RunAtLoad</key>
                <true />
              <key>ServiceIPC</key>
                <false />
            </dict>
          </plist>
        
    4. Make sure the permissions and file/group ownership on this file are similar to those around it. Both plist files must have root permissions (-rw-r--r--). You can ensure that root permissions are in place by running the following commands:
      sudo chmod 644 /Library/LaunchDaemons/limit.maxfiles.plist
      sudo chmod 644 /Library/LaunchDaemons/limit.maxproc.plist
      

    Step 3: Increase the sysctl open files limits

    On OS X, the launchd open file limit cannot exceed the sysctl open file limits. Set both sysctl open file limits to 409600.

    1. Open the Terminal application.
    2. Run the following commands to set the sysctl open files limits to 409600:
      sudo sysctl -w kern.maxfiles=409600
      sudo sysctl -w kern.maxfilesperproc=409600
    3. To make the new limits persist through system restarts, open /etc/sysctl.conf in a plain text editor and add the following lines:
      kern.maxfiles=409600
      kern.maxfilesperproc=409600

    Linux Enterprise Server adjustments

    For these examples, the enterprise server was installed as root in an Ubuntu environment using the enterprise server installer's default options. File paths in your environment may vary.

    Step 1: Increase the Java memory limit

    Code42 recommends increasing the Java heap space up to one-half of the total RAM available on the enterprise server. Increasing the Java heap space beyond that value can cause performance problems.

    As an example, if your server has 16 GB of RAM available, then the maximum heap space you should use is 8 GB.

    1. Navigate to the enterprise server main install directory:
      /opt/proserver/server
    2. Open .proserverrc in a plain text editor.
      If your server does not currently have a .proserverrc file, you may create one. In that case, make sure that the permissions on .proserverrc allow the enterprise server to read the file.
    3. Locate the line beginning with the parameter JAVA_MEM_ARGS.
      If you created a .proserverrc file, you must create the line shown in the next step.
    4. Change the -Xmx argument of the JAVA_MEM_ARGS line to reflect the desired heap space. For example:
      • This argument would set the Java heap space to 4 GB:
        JAVA_MEM_ARGS="-Xss256k -Xms256m -Xmx4g"
      • This argument would set the Java heap space to 8 GB:
        JAVA_MEM_ARGS="-Xss256k -Xms256m -Xmx8g"
    5. Save the changes to the file.
    6. Restart the enterprise server service.

    Step 2: Increase the open files limit for the Enterprise Server service

    1. Stop the enterprise server service by running the following command:
      sudo /opt/proserver/bin/proserver stop
    2. Open the /opt/proserver/.proserverrc file in a plain text editor.
      If this file does not already exist, create it.
    3. Add the following lines to the file:
      # Increase open files limit
      ulimit -n 409600
      
    4. Save the file.
    5. Run the following command to start the enterprise server service.
      sudo /opt/proserver/bin/proserver start
      

    Step 3: Increase virtual memory maximum limit

    1. Open the /etc/sysctl.conf configuration file in a plain text editor.
    2. Add the following line to set the virtual memory maximum limit to 409600:
      vm.max_map_count=409600
    3. Save the file.
    4. Apply the new kernel settings immediately by running the command sysctl -p /etc/sysctl.conf or restarting the host server.