`Home `__ OpenStack Ansible Installation Guide Storage devices --------------- This section offers a set of prerequisite instructions for setting up Object Storage storage devices. The storage devices must be set up before installing Object Storage. **Procedure 5.1. Configuring and mounting storage devices** Object Storage recommends a minimum of three Object Storage hosts with five storage disks. The example commands in this procedure assume the storage devices for Object Storage are devices ``sdc`` through ``sdg``. #. Determine the storage devices on the node to be used for Object Storage. #. Format each device on the node used for storage with XFS. While formatting the devices, add a unique label for each device. Without labels, a failed drive can cause mount points to shift and data to become inaccessible. For example, create the file systems on the devices using the **mkfs** command .. code-block:: bash $ apt-get install xfsprogs $ mkfs.xfs -f -i size=1024 -L sdc /dev/sdc $ mkfs.xfs -f -i size=1024 -L sdd /dev/sdd $ mkfs.xfs -f -i size=1024 -L sde /dev/sde $ mkfs.xfs -f -i size=1024 -L sdf /dev/sdf $ mkfs.xfs -f -i size=1024 -L sdg /dev/sdg #. Add the mount locations to the ``fstab`` file so that the storage devices are remounted on boot. The following example mount options are recommended when using XFS. .. code-block:: bash $ LABEL=sdc /srv/node/sdc xfs noatime,nodiratime, \ nobarrier,logbufs=8,noauto 0 0 $ LABEL=sdd /srv/node/sdd xfs noatime,nodiratime, \ nobarrier,logbufs=8,noauto 0 0 $ LABEL=sde /srv/node/sde xfs noatime,nodiratime, \ nobarrier,logbufs=8,noauto 0 0 $ LABEL=sdf /srv/node/sdf xfs noatime,nodiratime, \ nobarrier,logbufs=8,noauto 0 0 $ LABEL=sdg /srv/node/sdg xfs noatime,nodiratime, \ nobarrier,logbufs=8,noauto 0 0 #. Create the mount points for the devices using the **mkdir** command. .. code-block:: bash $ mkdir -p /srv/node/sdc $ mkdir -p /srv/node/sdd $ mkdir -p /srv/node/sde $ mkdir -p /srv/node/sdf $ mkdir -p /srv/node/sdg The mount point is referenced as the ``mount_point``\ parameter in the ``swift.yml`` file (``/etc/rpc_deploy/conf.d/swift.yml``). .. code-block:: bash $ mount /srv/node/sdc $ mount /srv/node/sdd $ mount /srv/node/sde $ mount /srv/node/sdf $ mount /srv/node/sdg To view an annotated example of the ``swift.yml`` file, see `Appendix A, *OSA configuration files* `__. For the following mounted devices: +--------------------------------------+--------------------------------------+ | Device | Mount location | +======================================+======================================+ | /dev/sdc | /srv/node/sdc | +--------------------------------------+--------------------------------------+ | /dev/sdd | /srv/node/sdd | +--------------------------------------+--------------------------------------+ | /dev/sde | /srv/node/sde | +--------------------------------------+--------------------------------------+ | /dev/sdf | /srv/node/sdf | +--------------------------------------+--------------------------------------+ | /dev/sdg | /srv/node/sdg | +--------------------------------------+--------------------------------------+ Table: Table 5.1. Mounted devices The entry in the ``swift.yml`` would be: .. code-block:: yaml # drives: # - name: sdc # - name: sdd # - name: sde # - name: sdf # - name: sdg # mount_point: /mnt -------------- .. include:: navigation.txt