Integrate Artifactory with AWS SDK v2 for S3 Storage

JFrog Installation & Setup Documentation

Content Type
Installation & Setup

Artifactory's S3 binary storage provider supports AWS SDK v2 starting from Artifactory 7.125.4. This integration allows you to leverage the latest AWS features and optimizations for a more robust and efficient storage solution, while maintaining full backward compatibility with your existing S3 configurations. AWS SDK v2 receives all active development, new features, and security updates, ensuring your storage integration remains current.

Important

Amazon Web Services has decided to make SDK v1 end-of-life at the end of 2025. Therefore, JFrog strongly recommends that all Artifactory customers currently using SDK v1 transition to SDK v2 at this point in time. For more information, see the AWS announcement.

Enabling AWS SDK v2 in Artifactory

To enable AWS SDK v2 in Artifactory, add the awsSdkV2 parameter to your S3 provider configuration in the binarystore.xml file and set it to true, as shown below.

<config version="2">
    <chain template="s3-storage-v3-direct"/>
    <provider type="s3-storage-v3" id="s3-storage-v3">

        <awsSdkV2>true</awsSdkV2>

        <!-- Other S3 configuration parameters -->

    </provider>
</config>

Note

A restart of Artifactory is required for this change to take effect.

Configuration Parameters Relevant to AWS SDK v2

You can modify the behavior of the AWS SDK v2 integration using the parameters below in your binarystore.xml file.

S3 Provider Parameters Introduced in AWS SDK v2

The following parameters are new in AWS SDK v2.

Parameter

Type

Default

Description

awsSdkV2

Boolean

false

Enables or disables the AWS SDK v2 integration.

blockingDataReadThreads

Integer

15

The number of threads in the dedicated pool for adapting Artifactory's blocking I/O to the SDK's non-blocking clients.

crtTargetThroughputInGbps

Double

10.0

The target network throughput (in Gbps) for the high-performance CRT client. This helps throttle the client on networks with limited bandwidth.

connectionAcquisitionTimeout

Integer

-1

The connection acquisition timeout for the AWS client in milliseconds. A value equal to or less than 0 causes Artifactory to use the client's default value.

disableChecksumValidation

Boolean

false

Disables automatic checksum validation during S3 operations.

Note

Give careful consideration before enabling this setting. For more information on the AWS checksum validation mechanism, see the AWS documentation.

Existing S3 Provider Parameters Relevant to AWS SDK v2

The following parameters are used in AWS SDK v1 and are also relevant to AWS SDK v2.

Parameter

Type

Default

Description

multiPartLimit

Integer

100,000000 (bytes)

File size threshold (in bytes) over which file uploads are chunked and multi-threaded.

multipartElementSize

Integer

8 MB

The chunk size when multiPartLimit is used. A value equal to or less than 0 causes Artifactory to use the AWS default, which is 8 MB.

connectionTimeout

Integer

not set

Sets the connection timeout (in milliseconds) for the HTTP clients used by the AWS SDK. A value equal to or less than 0 will cause Artifactory to use the clients' default values.