Alluxio
ProductsLanguageHome
AI-3.4
AI-3.4
  • Overview
  • Getting Started with K8s
    • Resource Prerequisites and Compatibility
    • Install on Kubernetes
    • Monitoring and Metrics
    • Cluster Administration
    • System Health Check & Quick Recovery
    • Collecting Cluster Information
  • Storage Integrations
    • Storage Integrations Overview
    • Amazon AWS S3
    • HDFS
    • Aliyun OSS
    • COS
    • TOS
    • GCS
  • Client APIs
    • Alluxio Python Filesystem API based on FSSpec
    • FUSE based POSIX API
    • S3 API
  • Features
    • Alluxio Namespace and Under File System Namespaces
    • Cache Preloading
    • Cache Evicting
      • Cache Evicting by TTL
      • Cache Evicting by Priority
    • Cache Filter
    • Cache Free
    • Directory-Based Cluster Quota
    • File Replication
    • File Segmentation
    • Client Writeback
    • Index Service
    • I/O Resiliency
  • Performance Benchmarks
    • Fio (POSIX) Benchmark
    • COSBench (S3) Benchmark
    • MLPerf Storage Benchmark
    • Performance Optimization
  • Reference
    • User CLI
    • S3 API Usage
    • Third Party Licenses
  • Release Notes
Powered by GitBook
On this page
  • Prerequisites
  • Basic Setup
  • Advanced Setup
  • Enabling HTTPS
  • [Experimental] OSS multipart upload
  1. Storage Integrations

Aliyun OSS

Last updated 3 months ago

This guide describes how to configure as Alluxio's under storage system.

Aliyun Object Storage Service (OSS) is a massive, secure and highly reliable cloud storage service provided by Alibaba Cloud. OSS provides multiple storage classes to help you manage and reduce storage costs.

For more information about Aliyun OSS, please read its

Prerequisites

If you haven't already, please see before you get started.

In preparation for using OSS with Alluxio:

<OSS_BUCKET>

<OSS_DIRECTORY>

The directory you want to use in the bucket, either by creating a new directory or using an existing one

<OSS_ACCESS_KEY_ID>

<OSS_ACCESS_KEY_SECRET>

<OSS_ENDPOINT>

Basic Setup

Use the to add a new mount point, specifying the Alluxio path to create the mount on and the OSS path as the UFS URI. Credentials and configuration options can also be specified as part of the mount command by specifying the --option flag as described by .

An example command to mount oss://<OSS_BUCKET>/<OSS_DIRECTORY> to /oss:

bin/alluxio mount add --path /oss/ --ufs-uri oss://<OSS_BUCKET>/<OSS_DIRECTORY> \
  --option fs.oss.accessKeyId=<OSS_ACCESS_KEY> --option fs.oss.accessKeySecret=<OSS_ACCESS_KEY_SECRET> \
  --option fs.oss.endpoint=<OSS_ENDPOINT>

Note that if you want to mount the root of the OSS bucket, add a trailing slash after the bucket name (e.g. oss://OSS_BUCKET/).

Advanced Setup

Note that configuration options can be specified as mount options or as configuration properties in conf/alluxio-site.properties. The following sections will describe how to set configurations as properties, but they can also be set as mount options via --option <key>=<value>.

Enabling HTTPS

To enable the use of the HTTPS protocol for secure communication with OSS with an additional layer of security for data transfers, configure the following setting in conf/alluxio-site.properties:

alluxio.underfs.oss.secure.http.enabled=true

[Experimental] OSS multipart upload

The default upload method uploads one file completely from start to end in one go. We use multipart-upload method to upload one file by multiple parts, every part will be uploaded in one thread. It won't generate any temporary files while uploading.

To enable OSS multipart upload, you need to modify conf/alluxio-site.properties to include:

alluxio.underfs.oss.multipart.upload.enabled=true

There are other parameters you can specify in conf/alluxio-site.properties to potentially speed up the upload.

# Timeout for uploading part when using multipart upload.
alluxio.underfs.object.store.multipart.upload.timeout
# Thread pool size for OSS multipart upload.
alluxio.underfs.oss.multipart.upload.threads
# Multipart upload partition size for OSS. The default partition size is 64MB. 
alluxio.underfs.oss.multipart.upload.partition.size

or use an existing bucket

ID used to identify a user. See

Secret used to verify the identity of the user. See

Endpoints are the domain names that other services can use to access OSS. See

Create a new bucket in the OSS console
How to Obtain AccessKey Pair
How to Obtain AccessKey Pair
Regions and OSS Endpoints in the Public Cloud
Aliyun OSS
documentation
Prerequisites
mount table operations
configuring mount points