Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Swarm Software Requirements

Following are the Swarm packages that work with and comprise SwarmFS. Download the latest bundle from the Downloads section on the DataCore Support Portal.

Best practice for upgrades

 Unless you need to remain on older versions of Elasticsearch and Content Gateway, upgrade all of the Swarm components to the versions included in your Swarm bundle.

For reference, this is how packages are named for the components in the table below:

  • Storage: caringo-storage-*.rpm
  • Storage UI: caringo-storage-webui-*.rpm
  • Elasticsearch: elasticsearch-*.rpm, elasticsearch-curator-*.rpm
  • Search: caringo-elasticsearch-search-*.rpm
  • Gateway: caringo-gateway-*.rpm
  • Content UI: caringo-gateway-webui-*.rpm
  • Swarm FS: caringo-nfs-*.rpm, caringo-nfs-libs-*.rpm

ComponentConfiguration Requirements
Storage

Enable Overlay Index: index.overlayEnabled= true  — see Configuring the Overlay Index

Enable Replicate on Write (ROW)  — see Configuring ROW Replicate On Write

Set ec.segmentConsolidationFrequency=100 (Caution: Do not allow the cluster to run near capacity.)

Set health.parallelWriteTimeout (v10.0+) to a non-zero value, such as 1209600 (2 weeks).

Storage UISet the Swarm Search feed to have a 1 second Batch Timeout

Elasticsearch

In the Elasticsearch configuration (config/elasticsearch.yml), make changes needed for SwarmFS:

  • Remove: filter: lowercase 
    (case-insensitive metadata searching in Swarm is incompatible with SwarmFS)
  • Remove: script.indexed: true (use with ES 2.3.3 only)
  • Add: script.inline: true (use with ES 2.3.3 and 5.6.12 only)
SearchUpgrade to the latest Search RPM when you upgrade Storage.
Gateway

SwarmFS can be deployed onto the same Linux server as the Content Gateway.

Content UIRecommended for viewing and managing objects in the Swarm cluster.
NFS

Do not install SwarmFS server on the same host as Elasticsearch.

Implementing SwarmFS

Important

Before proceeding, complete your SwarmFS Planning.

For SwarmFS, do the following:

  1. Install one or more SwarmFS servers for NFS 4 on designated hardware. See SwarmFS Server Installation.

  2. Create the exports needed for your implementation. See SwarmFS Export Configuration.

    Tip

    You can export the same bucket more than once, each with values (such as Read buffer size) that are optimized for a type of usage. You can then point your clients and applications to the share that best matches their workload. 
  3. For functional verification and troubleshooting, create a test domain and bucket and then create an export for that bucket.

  4. For each of your SwarmFS exports, conduct basic testing of read, write, and delete using your NFS client mounts.

  5. To help protect the credentials used to access the Ganesha config file and the file itself, you can implement HTTPS in front of your service proxy port: see Replicating Feeds over Untrusted Networks.

Mounting the Exports

When mounting your SwarmFS exports, follow these guidelines:

Important

In production environments, do not mount any SwarmFS exports on your Ganesha server.

SwarmFS will allow you to mount a share immediately, but there is a grace period (1+ minute) before the content will show there. To prevent content from appearing to be missing on newly mounted shares, add ExportAfterGrace = TRUE; to your ganesha.conf file. (v2.3)

Linux

Mount the exports as normal, with these explicit options:

  • Timeout — Increase the timeout, timeo, to 9000.
  • Version — To ensure that you mount using the correct protocol, add the "-t nfs" and "vers=<nfsvers>" options.
    Best practice: Mount using NFS v4.1. If your client does not support 4.1, then fall back to 4.0.
NFS v4.1
mount -t nfs -o timeo=9000,vers=4.1 SwarmNFSserver:/ /mnt/SwarmNFS
NFS v4.0
mount -t nfs -o timeo=9000,vers=4 SwarmNFSserver:/ /mnt/SwarmNFS

Adjust the mount command as needed for your OS version. For example, specify version this way on Ubuntu 10.04: 

mount -t nfs4 -o timeo=9000 SwarmNFSserver:/ /mnt/SwarmNFS
macOS

Not supported.

WindowsNot supported; Windows has no NFS 4.x client.

  • No labels