From a2084df02f33890e6c5c055a93a18ea8334e1ed1 Mon Sep 17 00:00:00 2001 From: "Feng, Hualong" Date: Thu, 28 Jul 2022 01:47:48 +0000 Subject: [PATCH] doc: Add usage and example about s3 storage class and crypto There add option usage about s3 storage class `http_s3_storage_class` and s3 SSE server side encryption `http_s3_sse_customer_key` and `http_s3_sse_customer_algorithm` And add example file in example folder. Signed-off-by: Feng, Hualong --- HOWTO.rst | 14 +++++++++++ examples/http-s3-crypto.fio | 38 ++++++++++++++++++++++++++++++ examples/http-s3-storage-class.fio | 37 +++++++++++++++++++++++++++++ fio.1 | 9 +++++++ 4 files changed, 98 insertions(+) create mode 100644 examples/http-s3-crypto.fio create mode 100644 examples/http-s3-storage-class.fio diff --git a/HOWTO.rst b/HOWTO.rst index 104cce2d..05fc117f 100644 --- a/HOWTO.rst +++ b/HOWTO.rst @@ -2692,6 +2692,20 @@ with the caveat that when used on the command line, they must come after the The S3 key/access id. +.. option:: http_s3_sse_customer_key=str : [http] + + The encryption customer key in SSE server side. + +.. option:: http_s3_sse_customer_algorithm=str : [http] + + The encryption customer algorithm in SSE server side. + Default is **AES256** + +.. option:: http_s3_storage_class=str : [http] + + Which storage class to access. User-customizable settings. + Default is **STANDARD** + .. option:: http_swift_auth_token=str : [http] The Swift auth token. See the example configuration file on how diff --git a/examples/http-s3-crypto.fio b/examples/http-s3-crypto.fio new file mode 100644 index 00000000..2403746e --- /dev/null +++ b/examples/http-s3-crypto.fio @@ -0,0 +1,38 @@ +# Example test for the HTTP engine's S3 support against Amazon AWS. +# Obviously, you have to adjust the S3 credentials; for this example, +# they're passed in via the environment. +# And you can set the SSE Customer Key and Algorithm to test Server +# Side Encryption. +# + +[global] +ioengine=http +name=test +direct=1 +filename=/larsmb-fio-test/object +http_verbose=0 +https=on +http_mode=s3 +http_s3_key=${S3_KEY} +http_s3_keyid=${S3_ID} +http_host=s3.eu-central-1.amazonaws.com +http_s3_region=eu-central-1 +http_s3_sse_customer_key=${SSE_KEY} +http_s3_sse_customer_algorithm=AES256 +group_reporting + +# With verify, this both writes and reads the object +[create] +rw=write +bs=4k +size=64k +io_size=4k +verify=sha256 + +[trim] +stonewall +rw=trim +bs=4k +size=64k +io_size=4k + diff --git a/examples/http-s3-storage-class.fio b/examples/http-s3-storage-class.fio new file mode 100644 index 00000000..9ee23837 --- /dev/null +++ b/examples/http-s3-storage-class.fio @@ -0,0 +1,37 @@ +# Example test for the HTTP engine's S3 support against Amazon AWS. +# Obviously, you have to adjust the S3 credentials; for this example, +# they're passed in via the environment. +# And here add storage class parameter, you can set normal test for +# STANDARD and compression test for another storage class. +# + +[global] +ioengine=http +name=test +direct=1 +filename=/larsmb-fio-test/object +http_verbose=0 +https=on +http_mode=s3 +http_s3_key=${S3_KEY} +http_s3_keyid=${S3_ID} +http_host=s3.eu-central-1.amazonaws.com +http_s3_region=eu-central-1 +http_s3_storage_class=${STORAGE_CLASS} +group_reporting + +# With verify, this both writes and reads the object +[create] +rw=write +bs=4k +size=64k +io_size=4k +verify=sha256 + +[trim] +stonewall +rw=trim +bs=4k +size=64k +io_size=4k + diff --git a/fio.1 b/fio.1 index ce9bf3ef..6630525f 100644 --- a/fio.1 +++ b/fio.1 @@ -2308,6 +2308,15 @@ The S3 secret key. .BI (http)http_s3_keyid \fR=\fPstr The S3 key/access id. .TP +.BI (http)http_s3_sse_customer_key \fR=\fPstr +The encryption customer key in SSE server side. +.TP +.BI (http)http_s3_sse_customer_algorithm \fR=\fPstr +The encryption customer algorithm in SSE server side. Default is \fBAES256\fR +.TP +.BI (http)http_s3_storage_class \fR=\fPstr +Which storage class to access. User-customizable settings. Default is \fBSTANDARD\fR +.TP .BI (http)http_swift_auth_token \fR=\fPstr The Swift auth token. See the example configuration file on how to retrieve this. -- 2.25.1