Backup of Adding Storage to a SoftNAS VM on VMware

Adding Storage to your Source and Target SoftNAS Virtual Machine

You will not be adding storage to the third virtual machine created, as it acts as a 3rd party witness and controller to all SNAP HA™ failover and takeover operations. The following steps will be performed on the two virtual machines designated as source and target for HA and replication.

  1. Log into your vSphere client and find the first of the newly created VMs. In this example, the VM is named SofTNAS_Kai_1.  Right-click the virtual machine and select Edit Settings.


    Note: Adding hard disks can be done regardless of whether the virtual machine powered up, or offline. If changing the available RAM, the VM must be powered off. 
     

  2. In Virtual Machine Properties for your selected machine, click Add



  3. Select Hard Disk from the available options, and click Next.





  4. Select Create a New Virtual Disk, and click Next.

  5. Select Disk capacity, and Disk Provisioning.  If space is at a premium in your environment, we recommend thin-provisioning. Thick-provisioning VMware datastores provides increased write performance, and should be preferred over thin-provisioning of VMDKs when optimal performance is required. 

    Here you can also decide where you wish to draw this additional storage capacity from. By default, Store with the virtual machine will be selected, which simply means that the VMDK will be stored in the same datastore used by the virtual machine itself. Alternatively, you can select a different datastore, by clicking the radio button labelled Specify a datastore or datastore cluster. One reason to do this might be that one datastore offers better performance than another – for example, one might be comprised of SSD storage, while the other consists of magnetic drives. For this POC example, we will stick with the default.


  6.  Next, you will be provided with advanced options. As it states, these will rarely need to be changed. The effects of each change are explained alongside each option. For this POC, the default settings will be kept.  Click Next.

  7. Next, a summary of your selections will be presented.  Verify the selections and click Finish if all is as expected.



  8.  The VMDK (hard disk) will be created and added to your virtual machine after a few moments. Wait for the disk to be added.



  9. If using SoftNAS’ Software RAID, you will need to add a number of disks commensurate with the RAID level selected. Repeat the above process as necessary to provide the number of disks required for your desired RAID level (for example, RAID 1 will require two VMDKs of the same size and configuration).

    In order to show a basic software RAID configuration in upcoming steps, two hard disks will be created, and configured with RAID 1 in the upcoming Creating a Pool and Volume section.

Preparing the Target Node

Repeat the process above, and add the same number and configuration of disks to your target virtual machine. Your second virtual machine should mirror the first virtual machine in every aspect, up until this point.

Remember, no additional disks need to be added to the HA controller node.  This will remain a default SoftNAS virtual machine, with no additional configuration changes. 

Creating a CIFS enabled Volume in your Source Virtual Machine


As mentioned at the beginning of this document, we are guiding you towards the creation of a CIFS enabled volume on a highly available pairing of SoftNAS virtual machines. With VMware, the underlying storage available will have a great deal to do with performance – if your underlying disks are SSD, performance will be better than with magnetic drives. This is perhaps self-evident, but must be mentioned as you will want to ensure your POC mirrors your intended use case as closely as possible.

With VMware, the underlying storage is not added via the SoftNAS® StorageCenter™ interface, but from within VMware itself, as described in Adding Storage. However, it is possible to leverage AWS or Azure storage as described in SoftNAS’ product  documentation.

For more information about adding disk devices from cloud services, see the following:

However, for the purposes of this document, we will be using the disks created in the previous section. They will, however, need to be partitioned. 

Partitioning Disks

  1. Log into your ‘source’ SoftNAS virtual machine via your web browser, and the IP address assigned to your virtual machine.

    Note: In order to access your virtual machine, you must be logged into the same network your virtual machines are hosted on.

  2. In the Storage Administration Pane, select the Disk Devices option under the Storage section.
    The Disk Devices panel will be displayed.



  3. Disk devices must be partitioned prior to use. The available devices are listed in the Available Devices grid, as shown below.


    The Device Usage column indicates the current status of the device, which can be:

    • Device needs partition - the initial state for a new device that has no partition
    • Available to assign - the device is partitioned and ready for use in a storage pool
    • Used in pool <poolname> - the device is in use by the indicated storage pool name


  4. Use the buttons on the toolbar to partition the devices for initial use.

    1. Use Partition All to partition all disk devices.

    2. Alternatively, select each disk device, then use Create Partition to partition each device individually. 

    3. Remove Partition can be used to remove an existing partition that is no longer needed.

Create the Storage Pool

  1. Click the Storage Pools option under the Storage section in the Storage Administration Panel (on the left).



  2. The Storage Pools panel will be displayed with the list of all the existing storage pools that are already allocated. To create a new storage pool, click Create.

  3. The Add Storage Pool dialog will be displayed. 


    1. Here you can choose whether you wish to deploy a standard pool, using block or object storage, or whether you wish to create tiered storage pools via our SmartTiers™ feature. SoftNAS' SmartTiers™ is a multi-tiered storage environment providing automated data movement based on managed policies, ensuring that your organization can create for itself the best solution possible for managing the data explosion their organizations are currently experiencing. SoftNAS’ SmartTiers™ provides the ability to seamlessly move blocks of data from high performance, low latency storage to more economical, larger capacity storage based on the value of the data. 

      • Standard - If Standard is selected, our patented original SNAP HA™ methodology will be implemented, replicating your block storage across two nodes, with minute by minute updates to ensure parity. 
      • SmartTiers™ If SmartTiers is selected, the SmartTiers pool wizard will be initiated, allowing you to create tiered storage. 

      Click Next to begin creating your pool via the Create a New Storage Pool dialog box.

  4. Upon clicking Next, the Create a New Storage Pool wizard will open. Fill in the required information based on the directions to follow:
    1. Enter the name for the storage pool to be created in the Pool Name text entry box. 


      Some example storage pool naming schemes might include:

      • Generic naming: naspool1, naspool2, ...
      • Disk-type naming: SAS1, SAS2, SATA1, SATA2
      • Use-case naming: OS1, OS2, Exchange1, SQLData1, UserData1, Geology, Accounting, IT, R&D, QA, Corp01, etc.
    2. Select the redundancy level from the RAID Level drop down list.

      Note: If using hardware RAID at the disk controller level and have a single data disk presented to SoftNAS for a storage pool, then software RAID may not be required; in such case, select No RAID/JBOD, as the RAID is implemented at a lower level and no Software RAID will be necessary.

    3.  Select the disks to be allocated to this storage pool.

      Note: Each of the devices show the Disk Availability status as Available for Use. This implies that these disks are already partitioned. New disk devices must be partitioned before use. Remember to select the appropriate number of disks for your Software RAID selection.

    4. In the Choose Pool Options step, check the box in the Forced Creation field to overwrite any older pools on the disks selected. 

      Note:
      If any of the disk devices chosen have been used as a part of another storage pool in the past (e.g., one that was deleted), use the Forced Creation option to overwrite the previous data in order to use the disk in a different pool (a precaution to prevent accidental data loss).

    5. Decide whether you wish to add LUKS Encryption (optional).

      Note:
      LUKS encryption allows you to add a layer of security to your SoftNAS volumes and pools, and if implemented along with Data-In-Flight encryption via SMB3 for CIFS, or by tunneling through SSH for NFS, can protect your data both at rest and in-flight.

      • To add LUKS encryption check the box.
      • In the Type dropdown, select Password.
      • Provide a password and confirm. 


    6. Choose the required Sync Mode:

      standard:

      This is the default option. Synchronous file system transactions (fsync, O_DSYNC, O_SYNC, etc) are written out (to the intent log) and then secondly all devices written are flushed to ensure the data is stable (not cached by device controllers). 

      always:

      For the ultra-cautious, every file system transaction is written and flushed to stable storage by a system call return. This obviously has a big performance penalty. 

      disabled:

      Synchronous requests are disabled. File system transactions only commit to stable storage on the next DMU transaction group commit which can be many seconds. This option gives the highest performance, but may result in out-of-spec behavior, application data loss and increased vulnerability to replay attacks, as ZFS is ignoring the synchronous transaction demands of applications such as databases or NFS. This option does *NOT* affect ZFS on-disk consistency. Administrators should only use this when these risks are understood.

  5. Click Create.

The new storage pool is created and is ready for use.

Create the Volume

  1. Click the Volumes and LUNS option under the Storage section in the Storage Administration Panel (on the left).

  2. Click Create in the toolbar.

  3. The Create Volume dialog will be displayed.



    1.  Enter the name of the volume in the Volume Name text entry box.
    2. To select the storage pool where the storage space for the volume has to be reserved. Type the name of the storage pool, or click the Storage Pool button.


      The Choose a Storage Pool dialog will be displayed. Select the desired pool from the listed options, and click Select Pool.


      Select the required storage pool from the list of available storage pools. Click Select Pool. Back in the Create Volume dialog, the name of the selected storage pool will be displayed in the Storage Pool field.

    3.  Select the type of the volume from the Volume Type section. The available volume types are File System (NFS, CIFS, AFP) and Block Device (iSCSI LUN).
    4. For this POC, we are creating a CIFS volume. Click Share via CIFS.

    5. Select the type of the storage provisioning option. The available options include:
      Thin Provision - Dynamically allocate space as it is needed.

      Thick Provision - Preallocate space from storage pool now.

      If Thick Provision is selected, you will have to specify the size of the volume in the Volume Size field and select the size unit.
      Once a Storage Pool has been selected for a thick-provisioned volume, the amount of available space to allocate is displayed below the Volume Size field.

      The Volume Size value can be any valid numeric value; e.g., 10, 12.5, 100.0, 1.25, provided it does not exceed available storage of the pool.

    6. Select the required option for storage optimization in the Storage Optimization Options section. The available options are Compression and Deduplication. The Compression type saves disk space, but requires more of CPU space. The Deduplication type eliminates duplicates, but consumes more memory space.

      Note: When compressing a significant amount of data, be sure to observe the amount of actual CPU consumed during a typical day, and if necessary, add more CPU capacity to the SoftNAS VM as required to ensure compression is fast and efficient. If data is not highly compressible, then disabling compression provides a better performance tradeoff.

      Note: It is recommended to avoid using deduplication unless the data is highly-duplicative, because of the memory impact of deduplication. It is estimated that for every terabyte of deduplicated data managed, one gigabyte of memory is required for the deduplication lookup tables. These tables compete with cache memory, which can reduce the overall performance of SoftNAS.
       

    7. Sync mode can be determined at the volume level as well as at pool level.

      standard:

      This is the default option. Synchronous file system transactions (fsync, O_DSYNC, O_SYNC, etc) are written out (to the intent log) and then secondly all devices written are flushed to ensure the data is stable (not cached by device controllers).

      always:

      For the ultra-cautious, every file system transaction is written and flushed to stable storage by a system call return. This obviously has a big performance penalty.

      disabled:

      Synchronous requests are disabled. File system transactions only commit to stable storage on the next DMU transaction group commit which can be many seconds. This option gives the highest performance, but may result in out-of-spec behavior, application data loss and increased vulnerability to replay attacks, as ZFS is ignoring the synchronous transaction demands of applications such as databases or NFS. This option does *NOT* affect ZFS on-disk consistency. Administrators should only use this when these risks are understood. 


  4. Click Create

Preparing the 2nd Virtual Machine for HA

The second SoftNAS instance must mirror the first in almost every respect. This means adequate storage space must be provided, as well as a storage pool ready to receive the volume in a failover situation.

  1. Log onto the 2nd instance using its public IP address, the softnas username, and the default password (the instance ID, unless changed).
  2. If you have not yet done so, add two hard disks by following the instructions provided earlier in Adding Storage to your Source and Target SoftNAS Virtual Machine. Provide the same type and amount of storage and the same number of disks as for your first virtual machine
  3. Create a storage pool by following the instructions provided above in Create the Storage Pool. The pool MUST have the same name as the pool in the first SoftNAS instance.

You will NOT create a volume on the second instance. The storage pool on the 2nd instance will serve as a landing strip for the volume (and any data contained within) in a failover situation once SnapReplicate™ and SNAP HA™ have been configured.