1 Getting Started with Storage Software Appliance

Oracle Cloud Infrastructure Storage Software Appliance, on-premise distribution, is a cloud storage gateway that you can install on premises and then use to easily connect your on-premises applications and workflows to your Oracle Cloud Infrastructure Object Storage Classic instance in the cloud.

Note:

If you are using Oracle Cloud Infrastructure Object Storage Service instances in the cloud, use Oracle Cloud Infrastructure Storage Gateway. See Overview of Storage Gateway in Oracle Cloud Infrastructure Documentation.

About Oracle Cloud Infrastructure Storage Software Appliance

Oracle Cloud Infrastructure Storage Software Appliance is a cloud storage gateway that you can install and then use to easily connect your on-premises applications and workflows to your service instance. It provides the following benefits:

  • Applications can interact with your service instance over a secure HTTPS connection using the REST API or the Java SDK. For legacy applications and environments that can’t use the REST API or Java SDK, Oracle Cloud Infrastructure Storage Software Appliance provides POSIX-compliant file access to the account or tenancy in your service instance using the NFSv4 protocol.

    Note:

    The appliance supports NFS v4 I/O in 2 modes: asynchronous and POSIX Sync. For more information about the modes, see the field Sync Policy in the table in Step 9 in Adding a FileSystem.

    Use the appliance as a data mover, to transfer files to and from your service instance. The appliance is not a replacement for general purpose network attached storage (NAS), though it behaves similarly to NAS.

    Content repositories and storing secondary copies of data are ideal use cases for the appliance. Don't run applications and executables directly from the appliance mount points, particularly if the appliance cache is not large enough for all the files that the applications will access. Applications typically create temporary files and modify them often, affecting the operational efficiency of the appliance.

  • Files in your service instance are stored as objects in a flat namespace within a container or bucket. However, enterprise applications typically work with files in nested directories. Oracle Cloud Infrastructure Storage Software Appliance transparently handles the storage of files as objects in your account or tenancy.

    Your applications can store files in and retrieve files from your account or tenancy through filesystems that you create in Oracle Cloud Infrastructure Storage Software Appliance and mount on your local host. A filesystem in this context represents a mapping between a directory on a local host and a container or bucket in your service instance, depending on the storage service. It defines the connection credentials that Oracle Cloud Infrastructure Storage Software Appliance must use to connect to an account or tenancy.

  • To ensure that your data is secure, you can configure Oracle Cloud Infrastructure Storage Software Appliance to encrypt files when they’re being stored and decrypt them when they have to be retrieved.

  • Oracle Cloud Infrastructure Storage Software Appliance caches frequently retrieved data on the local host, minimizing the number of REST API calls to your service instance and enabling low-latency, high-throughput file I/O.

Oracle Cloud Infrastructure Storage Software Appliance doesn’t support third-party storage cloud services.

The following figure shows the flow of data between your on-premises applications and Oracle Cloud Infrastructure Object Storage Classic through Oracle Cloud Infrastructure Storage Software Appliance.

Caution:

Don’t use the REST API, Java library, or any other client to retrieve, create, update, or delete objects in a container or bucket that’s mapped to a filesystem in Oracle Cloud Infrastructure Storage Software Appliance. Doing so will cause the data in the appliance to become inconsistent with data in your storage service. You can’t recover from this inconsistency.

To prevent unauthorized users from retrieving, creating, updating, or deleting objects in a container or bucket that’s connected to a filesystem in Oracle Cloud Infrastructure Storage Software Appliance, define custom roles, assign them to the appropriate container, assign the roles to only the users that should have access to the container, and specify only one of these users when defining the filesystem to be connected to the container or bucket.

Oracle Cloud Infrastructure Storage Software Appliance automatically backs up and stores all of its important configuration data in your service instance. If the host on which Oracle Cloud Infrastructure Storage Software Appliance is installed crashes, another instance of the appliance can be started quickly using the stored configuration data.

Features of Storage Software Appliance

Oracle Cloud Infrastructure Storage Software Appliance facilitates easy, secure, reliable data storage and retrieval from your service instance.

POSIX-Compliant NFS Access to Oracle Cloud Infrastructure Object Storage Classic and Oracle Cloud Infrastructure Object Storage

Using Oracle Cloud Infrastructure Storage Software Appliance, your applications can interact with Oracle Cloud Infrastructure Object Storage Classic through standard protocols, without invoking direct REST API calls to the services. The appliance is compliant with POSIX standards. You can create multiple NFS shares within a single appliance instance. Using a single appliance instance, you can connect to multiple containers. The files are copied to the appliance filesystem by using the NFSv4 protocol. The appliance supports NFS in asynchronous and POSIX-Sync modes. The appliance stores the files as objects in Oracle Cloud Infrastructure Object Storage Classic by using the HTTPS protocol.

Using Oracle Cloud Infrastructure Storage Software Appliance, your applications can now also interact with Oracle Cloud Infrastructure Object Storage through standard protocols. You can connect to multiple buckets using the appliance instance, and copy the files to the appliance filesystems. The appliance stores the files as objects in the Oracle Cloud Infrastructure Object Storage tenancy and performs multipart uploads for large objects.

Caution:

Don’t use the REST API, Java library, or any other client to retrieve, create, update, or delete objects in a container or bucket that’s mapped to a filesystem in Oracle Cloud Infrastructure Storage Software Appliance. Doing so will cause the data in the appliance to become inconsistent with data in your storage service. You can’t recover from this inconsistency.

To prevent unauthorized users from retrieving, creating, updating, or deleting objects in a container or bucket that’s connected to a filesystem in Oracle Cloud Infrastructure Storage Software Appliance, define custom roles, assign them to the appropriate container, assign the roles to only the users that should have access to the container, and specify only one of these users when defining the filesystem to be connected to the container or bucket.

Granular Encryption to Enable Data Security and Storage Efficiency

Oracle Cloud Infrastructure Storage Software Appliance stores data securely in your account or tenancy. The appliance transfers data using HTTPS which encrypts data packets in flight between the appliance and the cloud. The appliance also provides the option to enable encryption of data during upload to Oracle Cloud Infrastructure Object Storage Classic, so that it remains encrypted while at rest in the cloud. Data written to Oracle Cloud Infrastructure Object Storage is always automatically encrypted in the cloud. To ensure data security, you can configure the appliance to encrypt data on premises before the data is stored in your account or tenancy, and decrypt files when they are retrieved. You can update the encryption keys at any point in time. By having granular control that enables encryption at the NFS share level, you can ensure that only sensitive data is being encrypted. This minimizes the performance cost associated with encryption. Encryption is supported at the filesystem level. You can configure encryption for each configured filesystem, which ensures that sensitive data is secured in your account or tenancy. By using more granular controls, you can increase storage efficiency.

End-to-end Data Integrity with Checksum Verification

The built-in data integrity checks ensure that data is validated as it moves through the data path, from Oracle Cloud Infrastructure Storage Software Appliance, to your account or tenancy, enabling seamless end-to-end data integrity. Checksum verification helps in ensuring the data integrity. Metadata integrity checks are performed to ensure that the metadata is in consistent state. The checksum for each file can be read using a custom interface or API.

Efficient Handing of Large Files

Oracle Cloud Infrastructure Storage Software Appliance supports large files that exceed the maximum size allowed by Oracle Cloud Infrastructure Object Storage Classic. Large files are sliced into 1 GB segments and each segment is stored as a separate object. The metadata database maintains the manifest of the segments that comprise a given object, so that multi-segment files can be reconstructed automatically when read through the appliance. The segments are uploaded sequentially.

Oracle Cloud Infrastructure Storage Software Appliance uploads large files (with file size higher than 128 MB) as multipart upload objects in Oracle Cloud Infrastructure accounts.

Support for Data Archival

Oracle Cloud Infrastructure Storage Software Appliance supports uploading and restoring objects in containers of the Archive storage class.

In metered accounts, you can create containers of two storage classes, Standard (default) and Archive. You can use Archive containers to store large data sets that you don't need to access frequently, at a fraction of the cost of storing data in Standard containers. Note that to download data stored in Archive containers, you must first restore the objects. The restoration process can take up to four hours depending on the size of the object. A few features, such as bulk upload and deletion are not supported for Archive containers. Archive containers are ideal for storing data such as email archives, data backups, and digital video masters. For information about the pricing and other terms for the Archive storage class in Oracle Cloud Infrastructure Object Storage Classic, go to https://cloud.oracle.com/storage-classic?tabID=1406491833493.

For information about the pricing and other terms for the Archive storage class in Oracle Cloud Infrastructure Object Storage, go to https://cloud.oracle.com/en_US/infrastructure/storage.

Support for File Versions Compaction and End-to-End Delete

Oracle Cloud Infrastructure Storage Software Appliance supports deletion of old file versions from your service instance.

Oracle Cloud Infrastructure Storage Software Appliance provides a traditional file system interface for the storage services.  It allows file operations with byte-level granularity, such as append, re-write, over-write, and truncate.  When a file is modified in an appliance filesystem, it results in a new version of the file being created and uploaded to the service instance.

When a file that contains multiple versions exists, the latest or most recent version of the file will always be returned when the file is read. The administrator can configure the number of versions of a file that will be retained in your service instance. File Version Compaction allows the permanent deletion of unwanted versions. Also, if a file is deleted from the filesystem, then the corresponding object(s) in the service instance will also be deleted, if file version compaction is enabled in the appliance.

Quick Access to Select Files with Cache Pinning

Oracle Cloud Infrastructure Storage Software Appliance allows you to pin select files to the filesystem cache for quick access. You can pin files to the cache for filesystems connected to any storage class, Standard or Archive.

When you upload a file to your filesystem, it’s initially stored in the filesystem cache, and then uploaded to the container or bucket, depending on the storage service. After the file has been uploaded, it may get removed from the filesystem cache by the cache manager. The cache is reclaimed using the Least Recently Used (LRU) cache management policy to meet the cache threshold that’s specified in the filesystem advanced settings. If you want specific files to be always available in the cache for quick access, you can preserve them in the filesystem cache by pinning them to the cache. Once pinned, the files are not removed from the filesystem cache, except if you specifically unpin them.

Appliance Health Check

The appliance health check service is an automated process run on Oracle Cloud Infrastructure Storage Software Appliance. You can monitor the overall system status through the health check and get insights on the appliance performance like local storage usage.

Terminology

The following table defines the key terms used in the context of Oracle Cloud Infrastructure Storage Software Appliance.

Term Description

Account

An Oracle Account is a unique customer account and can correspond to an individual, an organization, or a company that is an Oracle customer. Each account has one or more identity domains.

Bucket

A bucket is a user-created resource in Oracle Cloud Infrastructure. It can hold objects in a compartment within a namespace. A bucket is associated with a single compartment.

Compartment

A compartment is a collection of related resources (such as instances, virtual cloud networks, block volumes) that can be accessed only by certain groups authorized by an administrator. A compartment allows you to organize and control access to your cloud resources.

Container

A container is a user-created resource in Oracle Cloud Infrastructure Object Storage Classic. It can hold an unlimited number of objects, unless you specify a quota for the container. Note that containers cannot be nested.

FileSystem (or filesystem)

A FileSystem in Oracle Cloud Infrastructure Storage Software Appliance connects a directory on a local host to a container or bucket in your service instance, depending on the storage service.

Generally, file system (two words) means the mechanism that operating systems use to manage files on disks. This general meaning is distinct from the meaning of filesystem (one word) in the context of Oracle Cloud Infrastructure Storage Software Appliance.

Metadata

Metadata refers to information that is specific to a given file or object. Examples include: filename, object id, creation date, modification date, size, permissions. The appliance caches all metadata for the filesystem locally, as well as backs it up to the cloud periodically.

NFS v4

NFS v4 is version 4 of NFS (network file system), a distributed file system protocol defined in RFC 3530 (https://www.ietf.org/rfc/rfc3530.txt). It enables client computers to mount file systems that exist on remote servers and access those remote file systems over the network as though they were local file systems.

Object storage

Object storage provides an optimal blend of performance, scalability, and manageability when storing large amounts of unstructured data. Multiple storage nodes form a single, shared, horizontally scalable pool in which data is stored as objects (blobs of data) in a flat hierarchy of containers. Each object stores data, the associated metadata, and a unique ID. You can assign custom metadata to containers and objects, making it easier to find, analyze, and manage data.

Applications use the unique object IDs to access data directly via REST API calls. Object storage is simple to use, performs well, and scales to a virtually unlimited capacity.

Oracle Cloud Infrastructure Object Storage Classic

Oracle Cloud Infrastructure Object Storage Classic provides a low cost, reliable, secure, and scalable object-storage solution for storing unstructured data and accessing it anytime from anywhere. It is ideal for data backup, archival, file sharing, and storing large amounts of unstructured data like logs, sensor-generated data, and VM images.

Oracle Cloud Infrastructure

Oracle Cloud Infrastructure is a set of complementary cloud services that enable you to build and run a wide range of applications and services in a highly-available hosted environment. It offers high-performance compute capabilities (as physical hardware instances) and storage capacity in a flexible overlay virtual network that is securely accessible from your on-premises network.

Tenancy

A tenancy is a secure and isolated partition within Oracle Cloud Infrastructure where you can create, organize, and administer your cloud resources.

System Requirements for Installing Storage Software Appliance

This section provides details about the hardware and software that are required to install Oracle Cloud Infrastructure Storage Software Appliance.

Hardware Requirements

A server with:

  • Two dual-core CPUs (4-core CPUs recommended)
  • Recommended disk size: 300 GB
  • Minimum memory requirements (based on the maximum number of files that can be uploaded to the appliance filesystem):
    • 16 GB for filesystems up to 1 million files
    • 32 GB for filesystems up to 5 million files
    • 64 GB for filesystems up to 10 million files

Software Requirements

  • Oracle Linux 7 with UEK Release 4 or later
  • Docker 1.12.6

    Docker is an open platform for building, shipping and running distributed applications. For more information, see https://www.docker.com/.

  • NFS version 4.0

Note:

  • Docker and NFS protocol are installed automatically during the appliance installation on a host running on Oracle Linux.
  • After installing the appliance, ensure that the storage driver in Docker is devicemapper. See Verifying and Updating the Storage Driver in Docker.

Booting the Linux Host Using the UEK4 Kernel

  1. Edit /etc/yum.repos.d/public-yum-ol7.repo on the host on which you want to install the appliance:
    1. Look for the [ol7_UEKR3] section:
      • [ol7_UEKR3] name=Latest Unbreakable Enterprise Kernel Release 3 for Oracle Linux $releasever ($basearch)
      • baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL7/UEKR3/$basearch/
      • gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
      • gpgcheck=1
      • enabled=1
    2. If the [ol7_UEKR3] section doesn't exist, then add the following section:
      • [ol7_UEKR4] name=Latest Unbreakable Enterprise Kernel Release 4 for Oracle Linux $releasever ($basearch)
      • baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL7/UEKR4/$basearch/
      • gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
      • gpgcheck=1
      • enabled=1

      If the [ol7_UEKR3] section exists, then replace it with the [ol7_UEKR4] section.

  2. List all the 3.8 kernels by entering the following command:

    rpm -qa | grep kernel

  3. Remove all the 3.8 kernels from the host on which you want to install the appliance by entering the following command:

    sudo rpm -e kernel

    Note:

    You might get errors about the packages that the 3.8 kernels might depend on. If you see such errors, then remove the packages in addition to the 3.8 kernels.
  4. (Optional) Update to the latest kernel:

    sudo yum update

  5. Generate a new grub.cfg file:

    sudo grub2-mkconfig > grub.cfg

  6. Move the updated grub.cfg file to the grub2 directory:

    sudo mv grub.cfg /boot/grub2

Before you install Oracle Cloud Infrastructure Storage Software Appliance, you must install docker and nfs-utils package. For more information, see Installing Storage Software Appliance.

Verifying and Updating the Storage Driver in Docker

  1. Start docker:

    sudo systemctl start docker

  2. Verify the information in docker:

    sudo docker info

    Sample output

    Containers: 0 
    Images: 0 
    Storage Driver: devicemapper  
    Backing Filesystem: extfs 
    Server Version: 17.03.1-ce
    Storage Driver: devicemapper
    Pool Name: docker-202:1-8413957-pool
    Pool Blocksize: 65.54 kB
    Base Device Size: 10.74 GB
    Backing Filesystem: xfs
    Data file: /dev/loop0
    Metadata file: /dev/loop1
    Data Space Used: 11.8 MB
    Data Space Total: 107.4 GB
    Data Space Available: 7.44 GB
    Metadata Space Used: 581.6 kB
    Metadata Space Total: 2.147 GB
    Metadata Space Available: 2.147 GB
    Thin Pool Minimum Free Space: 10.74 GB
    Udev Sync Supported: true
    Deferred Removal Enabled: false
    Deferred Deletion Enabled: false
    Deferred Deleted Device Count: 0
    Data loop file: /var/lib/docker/devicemapper/data
    Metadata loop file: /var/lib/docker/devicemapper/metadata
    Library Version: 1.02.135-RHEL7 (2016-11-16)
    
  3. Look for Storage Driver in the output.

    If Storage Driver is not devicemapper, then perform the following steps:

    1. Stop docker:

      sudo systemctl stop docker

    2. Look for /etc/docker/daemon.json in the host.

      If the file daemon.json does not exist, then create it.

    3. Add the following text in daemon.json to set the variable storage-driver to devicemapper :
      {
      "storage-driver": "devicemapper" 
      }

      Note:

      Also, see Use the Device Mapper storage driver and update the docker configuration, if required.
    4. Restart docker:

      sudo systemctl start docker

    5. Verify the information in docker:

      sudo docker info

      Look for Storage Driver in the output and verify that the storage driver is devicemapper.

Installing Storage Software Appliance

Before You Begin

Steps for Installing Oracle Cloud Infrastructure Storage Software Appliance

Note:

If the server is running on Oracle Linux, go to Step 11 to install the appliance.

Docker and NFS protocol are installed automatically on the server.

  1. Log in to the server on which you want to install Oracle Cloud Infrastructure Storage Software Appliance.
  2. Edit /etc/yum.repos.d/public-yum-ol7.repo on the host on which you want to install the appliance.
    • Change the value of enable to 1 in addons.
    • Change the value of enable to 1 in optional_latest.
  3. (Optional) Install docker using yum:

    sudo yum install docker-engine

    Run this command only if you have to install docker manually.

  4. Restart the server:

    sudo shutdown -r now

  5. Enable non-root users to use docker client.
    1. Add a new group (docker) to the host:

      sudo groupadd docker

    2. Modify your user account and add your user name to the docker group:

      sudo usermod -a –G docker username

    3. Log out and log in again.
  6. Run the following commands to set up the appliance host to work around the docker socket:

    NO_PROXY=localhost,127.0.0.1/8,/var/run/docker.sock

    no_proxy=$NO_PROXY

  7. Start docker and ensure that docker is running by entering the following commands:
    • sudo systemctl start docker

    • sudo systemctl enable docker

  8. (Optional) Install nfs-utils using yum:

    sudo yum install nfs-utils

    Run this command only if you have to install nfs-utils manually.

    The nfs-utils package enables NFS protocol on your host.

  9. Start rpcbind and nfs-server and ensure the NFS protocol is running by entering the following commands:
    • sudo systemctl start rpcbind
    • sudo systemctl start nfs-server
    • sudo systemctl enable rpcbind
    • sudo systemctl enable nfs-server
  10. Check if the NFS protocol version is 4:

    sudo rpcinfo -p | grep nfs

  11. Extract the files from the installer to a directory on the appliance host by entering the command:

    tar -xvf installer_tar.gz

  12. Change the permission of the oscsa-install.sh file:

    chmod +x oscsa-install.sh

  13. Check the status of docker:

    sudo systemctl status docker

  14. Verify the information in docker:

    sudo docker info

  15. Run the oscsa-install.sh file:

    sudo ./oscsa-install.sh

    The default installation location on the appliance host is /opt/oscsa_gateway.

    The appliance creates local copies of the files in the local buffer until the files are copied to your account. By default, the location of the buffer is in a subdirectory of /var/lib. However, if there isn’t sufficient storage space in /var/lib, then use this option and specify a location for data storage, metadata, and log storage.

    (Optional) Alternatively, you can run the oscsa-install.sh file with any of the following options:
    • -a: To run the installation in advanced mode.
    • -p: To specify that Oracle Cloud Infrastructure Storage Software Appliance is running with a proxy server.
    • -q: To run the installation in quiet mode. 
    • -d: To install at the specified installation path.
    • -h: To display the help information.

    Sample output

    *************************************
    Imported temporary env vars from opc to this install session
    *************************************
    Checking that docker is installed and using the correct version
    Pass found docker version Docker version 17.06.2-ol, build d02b7ab
    WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use.
             Use '--storage-opt dm.thinpooldev' to specify a custom block storage device.
    WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use.
             Use '--storage-opt dm.thinpooldev' to specify a custom block storage device.
    
    *************************************
    Checking host prerequisites
    *************************************
    
    Detected linux operating system
    Checking kernel version
    Pass kernel version 4.1.12-61.1.18.el7uek.x86_64 found
    Checking NFS version
    Pass found NFS version 4
    
    *************************************
    All prerequisites have been met
    *************************************
    
    
    *************************************
    Begin installation
    *************************************
    
    Enter the install location press enter for default (/opt/oscsa_gateway/) : 
    Installing to destination /opt/oscsa_gateway/
    Copied install scripts
    Copied OCISSA image
    Starting configuration script
    
    Enter the path for OCISSA Cache storage : /oscsa/cache
    
    Enter the path for OCISSA Metadata storage : /oscsa/metadata
    
    Enter the path for OCISSA Log storage : /oscsa/log
    Writing configuration
    Importing image
    d0c367ad7015: Loading layer [==================================================>]  233.7MB/233.7MB
    1bef79313f6a: Loading layer [==================================================>]  395.6MB/395.6MB
    50affcccd4ca: Loading layer [==================================================>]  3.072kB/3.072kB
    02651725b81e: Loading layer [==================================================>]  3.072kB/3.072kB
    9d65e9622255: Loading layer [==================================================>]  62.21MB/62.21MB
    ...
    Loaded image: oscsa_gw:1.4
    Loaded image: oraclelinux:7.3
    Creating OCISSA Volume with args -v /oscsa/cache:/usr/share/oracle/ -v /oscsa/metadata:/usr/share/oracle/system/ -v /oscsa/log:/var/log/gateway 
    Applying configuration file to container
    Starting OCISSA [oscsa_gw:1.4]
    Setting up config file port with nfs
    Setting up config file port with rest
    Management Console: https://prd-linux-srv5:443
    If you have already configured an OCISSA FileSystem via the Management Console,
    you can access the NFS share using the following port.
    
    NFS Port: 32769
    Example: mount -t nfs -o vers=4,port=32769 appliance_host_name:/OCISSA FileSystem name/local_mount_point
    In the advanced setup, you can configure the following additional parameters:
    • DATASTORAGE: Specifies the disk location or mount path where the Oracle Cloud Infrastructure Storage Software Appliance disk cache will be stored.
    • MDSTORAGE: Specifies the disk location or mount path where the Oracle Cloud Infrastructure Storage Software Appliance metadata will be stored.
    • LOGSTORAGE: Specifies the disk location or mount path where the Oracle Cloud Infrastructure Storage Software Appliance logs will be stored.
    • ADMINPORT: Specifies the port on the appliance host to access the management console.
    • NFSPORT: Specifies the port on the appliance host to access NFS.

    Note:

    During the appliance installation, the directories for storing data, metadata and log storage are automatically created if they don’t exist
  16. Check the status of the firewall:

    sudo firewall-cmd --state

  17. Open the firewall ports on the appliance host by entering the following commands:
    • sudo firewall-cmd --zone=public --add-port=nfs_port/tcp --permanent
    • sudo firewall-cmd --zone=public --add-port=management_web_ui_port/tcp --permanent
    • sudo firewall-cmd --reload

    Example:

    sudo firewall-cmd --zone=public --add-port= 32774/tcp --permanent

    sudo firewall-cmd --zone=public --add-port= 32775/tcp --permanent

    sudo firewall-cmd --zone=public --add-port= 32776/tcp --permanent

    sudo firewall-cmd --reload

  18. Start the appliance:

    oscsa up

The installation might take up to 30 minutes to run, download images, and import the images into the docker.

When the installation is complete, you can see the details of Oracle Cloud Infrastructure Storage Software Appliance as shown in the following sample output.

Make a note of the management console URL, which has the following format:

https://appliance_host_name:port_number

Sample output

Starting NFS on docker host
Applying configuration file to container
Starting OSCSA [oscsa_gw:1.4]

Management Console: https://myApplianceHost.example.com:32771


If you have already configured an OCISSA FileSystem via the Management Console,
you can access the NFS share using the following port.

NFS Port: 32770

Example: mount -t nfs -o vers=4,port=32770 myApplianceHost.example.com:/OCISSA_filesystem_name /local_mount_point
In the sample output,
  • myApplianceHost.example.com is the appliance host name
  • 32771 is the management console port number

Tip:

You can use either the appliance host name or the IP address in the management console URL.

  • You can find the name of the appliance host by entering the following command:

    hostname

  • You can find the IP address of the appliance host by entering the following command:

    ip addr

The management console is a web application running within Oracle Cloud Infrastructure Storage Software Appliance. You can open the management console by using a web browser. Then you can create your administrator and log in to the management console to create your first filesystem. For more information, see Creating Your First FileSystem.

Creating Your First FileSystem

When you access the management console for the first time, the management console invokes a wizard prompting you to create the administrator credentials and your first filesystem. A filesystem is similar to a namespace containing a set of data that’s accessible through Oracle Cloud Infrastructure Storage Software Appliance. A filesystem in this context represents a mapping between a directory on a local host and a container in your account or bucket in your tenancy, depending on the storage service. The filesystem defines the connection credentials that Oracle Cloud Infrastructure Storage Software Appliance must use to connect to an account or tenancy.

Using a filesystem in the appliance, you can store and retrieve files from a directory on the appliance host (or any host from where you want to upload data) to a container or bucket.

  1. Log in to your host.
  2. Check if Oracle Cloud Infrastructure Storage Software Appliance is running by entering the following command:

    sudo docker ps

    Sample output:

    CONTAINER ID
    a4e254d80472
    IMAGE
    oscsa_gw:1.3
    COMMAND
    "/sbin/init"
    CREATED 38 minutes ago
    STATUS
    Up 38 minutes
    PORTS
    0.0.0.0:32775->111/udp, 0.0.0.0:32782->2049/tcp, 0.0.0.0:32783->3333/tcp 
    NAMES
    oscsa_gw 
  3. If Oracle Cloud Infrastructure Storage Software Appliance isn’t running in docker, then start the appliance by entering the following command:

    oscsa up

    Sample output:

    Starting NFS on docker host
    Applying configuration file to container
    Starting OSCSA [oscsa_gw:1.3]
    Management Console: https://myApplianceHost.example.com:32771
    
    If you have already configured an OCISSA FileSystem via the Management Console,
    you can access the NFS share using the following port.
    
    NFS Port: 32770
    
    Example: mount -t nfs -o vers=4,port=32770 myApplianceHost.example.com:/OCISSA_filesystem_name/local_mount_point
    
  4. Open the management console in a web browser by entering the management console URL:

    https://appliance_host_name:port_number

    For example, https://myApplianceHost.example.com:32771. The management console is displayed.

  5. Create the administrator credentials and log in to the management console.

    A wizard is displayed with a message:

    No FileSystems are created yet.

  6. Click Create a FileSystem.
  7. Enter the name of your filesystem.

    Note:

    For the character restrictions applicable when you enter a filesystem name, see Character Restrictions.

    Click Next.

  8. Enter the object storage API endpoint of your account.

    Note:

  9. If you’d like to create a filesystem in Oracle Cloud Infrastructure Object Storage Classic, go to step 9a. If you’d like to create a filesystem in Oracle Cloud Infrastructure, go to step 9b.
    1. Create a filesystem using your Oracle Cloud Infrastructure Object Storage Classic account details:
      • User name of your account (for example: jack.jones@example.com).
      • Password of your account.
      • Click Validate.
    2. Create a filesystem using your Oracle Cloud Infrastructure Object Storage tenancy details:
      • Tenant ID
      • User ID
      • Compartment ID (Optional)
      • Public key finger print
      • Private key
      • Private key passphrase
  10. Set the following options as required:
    • Enable Archive: Select this check box if you want to connect this filesystem to a container or bucket of the Archive storage class.

      For more information, see About Archive FileSystems.

  11. Click Show Advanced, and enter the required information in the advanced configuration fields. For more information, see the table in Table 2-* in Adding a FileSystem.
  12. Click Save.

    The filesystem is created and the details of the filesystem are displayed on the Dashboard page.

About Archive FileSystems

When you create an Archive filesystem, if a container or bucket by the same name doesn’t exist in your account, then the container or bucket will be created. In addition, another container or buclet named filesystem_name-archive is created.

For example, if you create an Archive filesystem with the name myFirstArchiveFS, then the following two containers or buckets are created:
  • myFirstArchiveFS-archive

    This container or bucket is of the storage class archive. All the files that are uploaded in the mounted directory on the appliance host are stored as objects in the myFirstArchiveFS filesystem and then asynchronously copied to this container. Metadata backups are also stored in this container.

  • myFirstArchiveFS

    Metadata synchronization objects are stored in this container or bucket. Metadata synchronization objects enable metadata information to be restored if the appliance installation is lost.

    In addition to metadata synchronization objects, the metadata backups are stored in an Archive container or bucket periodically.

If the filesystem name matches an existing container or bucket, and if the storage class of the container is standard, then you cannot mount the filesystem and an error message is displayed.

The appliance automatically performs daily, weekly, and monthly metadata backups.

Next Steps

Connect the filesystem to a directory on the appliance host. For more information, see Connecting a FileSystem.

To manage Oracle Cloud Infrastructure Storage Software Appliance by using the management console, see Managing and Monitoring the Appliance.
You can also do the following tasks in the management console:

Mounting FileSystems on Clients

Each filesystem in Oracle Cloud Infrastructure Storage Software Appliance maps a directory on the appliance host to a container or bucket. To establish the connection between Oracle Cloud Infrastructure Storage Software Appliance and an NFS client, you must mount the appliance filesystem on the NFS client.

Verified NFS Clients
  • Oracle Linux 6.4, 6.6 and 7.3
  • Ubuntu 14.04 and 16.04
  • CentOS 7
  • Debian 8 Jessie

Note:

The above list of NFS clients have been tested and verified. However, you can use any other NFS client apart from this list.
Steps
  1. Log in to the appliance host.
  2. Start the appliance by entering the following command:

    oscsa up

  3. Find out the NFS port number:

    oscsa info

    Make a note of the NFS port number from the output.

    Sample output:
    Management Console: https://myApplianceHost.example.com:32775
    
    If you have already configured an OSCSA FileSystem via the Management Console,
    you can access the NFS share using the following port.
    
    NFS Port: 32774
    
    Example: mount -t nfs -o vers=4,port=32774 myApplianceHost.example.com:/filesystem_name /local_mount_point
    In the sample output,
    • myApplianceHost.example.com is the appliance host name
    • 32775 is the management console port number
    • 32774 is the NFS port
  4. Log in to the NFS client from which you want to access your service instance through the appliance.
  5. Create a directory on the NFS client.
  6. Mount the filesystem on the directory which you created on the NFS client:

    sudo mount -t nfs -o vers=4, port=NFS_port appliance_host:/OSCSA_filesystem_name /local_mount_point_on_NFS_client

    In this command,
    • Replace appliance_host with the server name or IP address of the server on which the appliance is installed.
    • Replace OSCSA_filesystem_name with the filesystem name that you want to mount.
    • Replace /local_mount_point_on_NFS_client with the path to the directory you created on the NFS client.

    Example

    mount -t nfs -o vers=4, port=32774 myApplianceHost.example.com:/myFirstFS /home/xyz/abc

    In this example,

    • 32774 is the NFS port
    • myApplianceHost.example.com is the appliance host name
    • myFirstFS is the filesystem name
    • /home/xyz/abc is the path to the directory abc on the NFS client

The appliance filesystem is now mounted on the NFS client directory. You can now access the appliance filesystem from the NFS client.

For more information, see Using the Appliance to Store and Retrieve Data.

Tip:

To learn how to back up data on a Linux host and store it on your Oracle Cloud Infrastructure Object Storage Classic account using the appliance, see the tutorial Tutorial icon Backing Up Data Using Oracle Cloud Infrastructure Storage Software Appliance.

Workflow for Using Storage Software Appliance

Task Description More Information

Creating and managing a filesystem

Create a filesystem, encrypt data in a filesystem, and connect the filesystem to a container or bucket on your account or tenancy.

Storing and retrieving data using Oracle Cloud Infrastructure Storage Software Appliance

Store files from the directories on the server to the filesystems in Oracle Cloud Infrastructure Storage Software Appliance. Retrieve the files from the filesystems to the directories on the server.

Managing and monitoring Oracle Cloud Infrastructure Storage Software Appliance

Start or stop Oracle Cloud Infrastructure Storage Software Appliance. View the logs in Oracle Cloud Infrastructure Storage Software Appliance.