The software described in this documentation is either no longer supported or is in extended support.
Oracle recommends that you upgrade to a current supported release.
On each node in the Gluster trusted storage pool, storage should
be allocated for Gluster volumes. In the examples in this guide, a
file system is mounted on
/data/glusterfs/myvolume/mybrick
on each
node. For information on setting up storage on nodes, see
Section 2.4.1, “Preparing Oracle Linux Nodes”. Gluster creates a
volume on this file system to use as bricks. There are number of
volume types you can use:
Distributed: Distributes files randomly across the bricks in the volume. You can use distributed volumes where the requirement is to scale storage and the redundancy is not required, or is provided by other hardware/software layers. Disk/server failure can result in a serious loss of data as it is spread randomly across the bricks in the volume.
Replicated: Replicates files across bricks in the volume. You can use replicated volumes when high-availability is required.
Distributed Replicated: Distributes files across replicated bricks in the volume. You can use distributed replicated volumes to scale storage and for high-availability and high-reliability. Distributed replicated volumes offer improved read performance.
Dispersed: Provides space efficient protection against disk or server failures (based on erasure codes). This volume type stripes the encoded data of files, with some redundancy added, across multiple bricks in the volume. Dispersed volumes provide a configurable level of reliability with minimum space waste.
Distributed Dispersed: Distributes files across dispersed bricks in the volume. This has the same advantages of distributed replicated volumes, using dispersed instead of replicated to store the data to bricks.
The generally accepted naming convention for creating bricks and volumes is:
/data/glusterfs/
volume_name
/brick_name
/brick
In this example, brick_name
is the file
system that can be mounted from a client. For information on
mounting a Gluster file system, see
Section 3.6, “Accessing Gluster Volumes”.
This section describes the basic steps to set up each of these volume types. When creating volumes, you should include all nodes in the Gluster trusted storage pool, including the node on which you are performing the step to create the volume.
The notation used in the examples to create and manage volumes may be provided in the Bash brace expansion notation. For example:
node{1,2,3}:/data/glusterfs/myvolume/mybrick/brick
This is equivalent to providing the node information in the longer form of:
node1:/data/glusterfs/myvolume/mybrick/brick
node2:/data/glusterfs/myvolume/mybrick/brick
node3:/data/glusterfs/myvolume/mybrick/brick
Note that when a volume is configured, you can enable TLS on the volume to authenticate and encrypt connections between nodes that serve data for the volume, and for client systems that connect to the pool to access the volume. See Section 3.2, “Setting up Transport Layer Security (TLS)” for more information.
For more detailed information, see the Gluster upstream documentation.
This section provides an example of creating a pool using a distributed volume.
Example 3.1 Creating a distributed volume
This example creates a distributed volume over three nodes, with one brick on each node.
#gluster volume create myvolume node{1,2,3}:/data/glusterfs/myvolume/mybrick/brick
volume create: myvolume: success: please start the volume to access data #gluster volume start myvolume
volume start: myvolume: success #gluster volume info
Volume Name: myvolume Type: Distribute Volume ID: ... Status: Started Snapshot Count: 0 Number of Bricks: 3 Transport-type: tcp Bricks: Brick1: node1:/data/glusterfs/myvolume/mybrick/brick Brick2: node2:/data/glusterfs/myvolume/mybrick/brick Brick3: node3:/data/glusterfs/myvolume/mybrick/brick Options Reconfigured: transport.address-family: inet nfs.disable: on