Setting up Connect:Direct Node for object store providers
Store Object naming and initparm.cfg
Objects on object stores can be read and written with Connect:Direct.
scheme://bucketOrContainer/objectKey
The scheme in the Connect:Direct process file name is used to search for the right entry in
the initparm.cfg
file using the name field in a file.ioexit section as the
key.
- Amazon S3
- IBM Cloud Object Storage
- Azure Blob
- Google Storage
Each of them is named an object provider. Each time a process involves an object from an
object store, the right provider must be triggered. This is performed using properties set in
the process or in the initparm.cfg
file.
Selecting the right Provider
Main property
store.providerName
property (See Stores Properties). The following names are available and valid:- Amazon S3: S3
- IBM Cloud Object Storage: COS
- Azure Blob: AZ
- Google Storage: GS
S3 is the default value and can be omitted if Amazon S3 is the expected provider.
Each provider owns its subset of properties. Use these properties to fine configure this provider usage for credentials, endpoints, and objects properties.
Using initparm.cfg file
Initparm.cfg
file include a section dedicated to store providers. The
file.ioexit
section identifies a behavior to adopt thru a set of properties.
More than one entry can exist and each of them can define a different provider and/or a
different behavior for the same provider.
# Azure
file.ioexit:\
:name=AZ:\
:library=/opt/cdunix/ndm/lib/libcdjnibridge.so:\
:home.dir=/opt/cdunix/ndm/ioexit-plugins/s3:\
:options=-Xmx640m \
-Dstore.providerName=AZ \
-Djava.class.path=/opt/cdunix/ndm/ioexit-plugins/s3/cd-s3-ioexit.jar com.aricent.ibm.mft.connectdirect.s3ioexit.S3IOExitFactory:
# Amazon S3 Production
file.ioexit:\
:name=S3Prod:\
:library=/opt/cdunix/ndm/lib/libcdjnibridge.so:\
:home.dir=/opt/cdunix/ndm/ioexit-plugins/s3:\
:options=-Xmx640m -Ds3.profileName=profileProd \
-Djava.class.path=/opt/cdunix/ndm/ioexit-plugins/s3/cd-s3-ioexit.jar com.aricent.ibm.mft.connectdirect.s3ioexit.S3IOExitFactory:
# Amazon S3 QA
file.ioexit:\
:name=S3QA:\
:library=/opt/cdunix/ndm/lib/libcdjnibridge.so:\
:home.dir=/opt/cdunix/ndm/ioexit-plugins/s3:\
:options=-Xmx640m -Ds3.profileName=profileQA \
-Djava.class.path=/opt/cdunix/ndm/ioexit-plugins/s3/cd-s3-ioexit.jar com.aricent.ibm.mft.connectdirect.s3ioexit.S3IOExitFactory:
Using sysopts
Connect:Direct sysopts can also be used to select the right store provider. All properties can
be overridden using sysopts
, the store.providerName
can also
be overridden.
# All-purpose entry, default to S3
file.ioexit:\
:name=ALL:\
:library=/opt/cdunix/ndm/lib/libcdjnibridge.so:\
:home.dir=/opt/cdunix/ndm/ioexit-plugins/s3:\
:options=-Xmx640m \
-Djava.class.path=/opt/cdunix/ndm/ioexit-plugins/s3/cd-s3-ioexit.jar com.aricent.ibm.mft.connectdirect.s3ioexit.S3IOExitFactory:
#Write to an Azure container using the all-purpose entry
To (
FILE=ALL://container/object
sysopts=’:store.providerName=AZ:az.connectionString=’aconnectionstring’:’
DISP=RPL
#Write to an S3 bucket using the all-purpose entry
To (
FILE=ALL://container/object
sysopts=’:s3.accessKey=…:s3.secretKey=…:’
DISP=RPL