Secure Agent Services > Data Integration Server > Data Integration Server properties
  

Data Integration Server properties

To change or optimize behavior of the Data Integration Server, configure the Data Integration Server properties. Configure Data Integration Server properties in the System Configuration Details area when you edit a Secure Agent.
The following image shows some of the Data Integration Server properties:
When you view or edit a Secure Agent and select the Data Integration Server, the Data Integration Server properties appear in the System Configuration Details area. In this image, the service type is set to "All Types," and several Tomcat, Tomcat JRE, and Tomcat Log4j properties are displayed.
You can configure the following Data Integration Server properties:
Type
Name
Description
Tomcat
NetworkTimeoutPeriod
Amount of time, in seconds, that the Secure Agent tries to reestablish communication with Informatica Intelligent Cloud Services. Default is 300.
Tomcat
NetworkRetryInterval
Frequency, in seconds, in which the Secure Agent tries to contact Informatica Intelligent Cloud Services within the specified timeout period. Default is 5.
Tomcat
INFA_DTM_STAGING_ENABLED_CONNECTORS
Applies to certain Cloud Data Warehouse connectors.
Enables the Data Integration Server to optimize staging target data in a local flat file before loading the data to the target.
To optimize staging, set this property to the plugin ID of the connector.
For more information, see the help for the appropriate connector.
Tomcat
INFA_DTM_RDR_STAGING_ENABLED_CONNECTORS
Applies to certain Cloud Data Warehouse connectors.
Enables the Data Integration Server to optimize the staging of source data in a local flat file after reading the data from the source.
To optimise staging, set this property to the plugin ID of the connector.
For more information, see the help for the appropriate connector.
Tomcat
INFA_DTM_LKP_STAGING_ENABLED_CONNECTORS
Applies to certain Cloud Data Warehouse connectors.
Enables the Data Integration Server to optimize the staging of lookup data in a local flat file after reading the data from the lookup object.
To optimize staging, set this property to the plugin ID of the connector.
For more information, see the help for the appropriate connector.
Tomcat JRE
JRE_OPTS
JRE VM options for the Apache Tomcat process.
Tomcat JRE
INFA_MEMORY
JRE VM options that are set for virtual machine memory for the Apache Tomcat process.
DTM
AgentConnectionTimeout
Number of seconds that the Secure Agent communication requests to wait before it times out. Default is 5.
DTM
JVMOption1 - JVMOption5
JVM options that configure advanced properties for the Data Integration Server such as the maximum and minimum JVM heap size, the maximum record size for Intelligent Structure Discovery, or proxy settings for certain connectors. For example, to change the maximum JVM heap size from the default value of 512 MB to 2048 MB, you might set JVMOption1 to '-Xmx2048m'.
By default, you can configure up to five advanced properties using JVMOption1 through JVMOption5. To configure additional properties, you can add custom DTM properties for the Data Integration Server named JVMOption6, JVMOption7, etc. Ensure that the option numbers are sequential and that you do not skip numbers.
For information about the JVM options that you can set, see the Data Integration help, the help for the appropriate connector, or the Knowledge Base on Informatica Network.
OS_PROFILE
EnableOSProfileForTaskExecution
Enables or disables the OS Profile functionality. Values are true or false. Default is false.
Note: The OS Profile functionality is only available in Linux.
By default, tasks run with the same operating user as the Secure Agent. When you enable the OS Profile functionality, you can run tasks with a different operating system user.
For example, you have different departments using the same Informatica Intelligent Cloud Services installation and you need isolation.
Tip: You can view the name of the OS Profile user in the session log for completed tasks.
OS_PROFILE
FailTasksForMissingOsProfileMapping
If the OS Profile functionality is enabled, this property fails a task if the mapping to the operating system user for a given task is missing. Values are true or false. Default is true.
Set this property to false to not fail the task in this scenario and instead run the task with the Secure Agent's operating system user.
OS_PROFILE
ShareSystemDirectories
Shares the system directories that were created for the Secure Agent user with the operating system user. Values are true or false. Default is false.
Enable sharing if you want to share information such as user parameters. However, for improved isolation and reduced possibility of errors, don't share these directories.
The default behavior creates new system directories for the operating system user under Data_Integration_Server/data/osprofiles_filesystem/<profile_name>
The system directories save mapping information, sessions logs, and user parameters.
OS_PROFILE
OSProfileUserMappingFile
Location of the YAML file that contains mapping information between the Secure Agent user or location and the operating system user.
Changes to the mapping file apply automatically, without needing to restart the Secure Agent.
For more information about this property, see Creating the OSProfileUserMappingFile.
OS_PROFILE
OSProfileScriptForTaskExecution
Location of the script file that will be used for task execution.
For more information about this property, see Setting the OSProfileScriptForTaskExecution.
Note: Do not change the values of other Data Integration Server properties unless Informatica Global Customer Support instructs you to do so.

Creating the OSProfileUserMappingFile

When defining OS_PROFILE properties, you need to create a YAML file that contains mapping information between the Secure Agent user or location and the operating system user. This is set in the OSProfileUserMappingFile property in the Data Integration Server service.
Create a YAML file using the following example as a template:
- profileName: userprofile1
profileType: USER
systemNames:
- osp_idmc_1
osMapping:
osUser: osprofileuser1
pmVariables:
PMRootDir: /home/osprofileuser1/pmdata
PMSessionLogDir: /mnt/shared/Vadi/osprofile
PMBadFileDir: /home/osprofileuser1/pmbadfile
PMCacheDir: /home/osprofileuser1/pmcache
PMTargetFileDir: /home/osprofileuser1/pmtrgtfile
PMSourceFileDir: /home/osprofileuser1/pmsrcfile
PmExtProcDir: /home/osprofileuser1/pmextproc
PMTempDir: /home/osprofileuser1/pmtemp
PMLookupFileDir: /home/osprofileuser1/pmlookupfile
PMStorageDir: /data/agent/userparam
- profileName: userprofile2
profileType: USER
systemNames:
- osp_idmc_2
osMapping:
osUser: osprofileuser2
- profileName: locationprofile1
profileType: LOCATION
systemNames:
- osprofilefoldertest1
- osprofiletestfolder2
osMapping:
osUser: osprofileuser1
- profileName: locationprofile2
profileType: LOCATION
systemNames:
- osprofilefoldertest1\test
- osprofiletestfolder\test
osMapping:
osUser: osprofileuser2
The following table describes each property in the YAML file:
Property
Description
profileName
Name of the profile. Must be unique.
This property is required.
profileType
Describes whether this mapping is based on the Secure Agent user or location. Valid values are USER or LOCATION.
Note: If both User and Location profile types are specified for the same task, then User has the higher precedence.
systemNames
This section contains a list of Informatica Intelligent Cloud Services (IICS) system names.
  • - If profileType = USER, then the system names are a list of IICS users.
  • - If profileType = LOCATION, then the system names are a list of IICS location names. Use the absolute path for every location.
osMapping
This section contains a mapping to the operating system.
osUser
The operating system user.
pmVariables
A list of the PM variables to override. The following variables can be overridden:
  • - PMRootDir
  • - PMSessionLogDir
  • - PMBadFileDir
  • - PMCacheDir
  • - PMTargetFileDir
  • - PMSourceFileDir
  • - PmExtProcDir
  • - PMTempDir
  • - PMLookupFileDir
Note: The override directories must be accessible by both Secure Agent and operating system users. To ensure this, add both the Secure Agent and operating system users to the profile OS user group.

Setting the OSProfileScriptForTaskExecution

When defining OS_PROFILE properties, you need to define a script that will be used for task execution. This is set in the OSProfileScriptForTaskExecution property in the Data Integration Server service.
Choose one of the following methods to create your OS profile script:
Use the following table to help you decide which method to use:
Method
Advantage
Disadvantage
Use pmimpprocess (recommended)
More secure, with the one time sticky bit set as root.
More difficult to customize, as pmimpprocess is an executable.
The sole purpose of this executable is to switch users.
Use default script
Easily customizable. For example, you need to configure Kerberos.
Requires the Secure Agent user to be able to sudo, which means adding the user to /etc/sudoer.
Once this is done, the user assumes near root-user privileges, which is less secure.

Configuring the pmimpprocess

To configure the OS profile script using pmimpprocess, perform the following steps:
  1. 1Locate the pmimpprocess process in the following location:
  2. <Secure Agent installation directory/downloads/package-ICSAgentRuntime.<latest_version>/package/ICS/main/bin/rdtm
  3. 2Copy pmimpprocess to the Secure Agent.
  4. For example:
    <Secure Agent installation directory>/apps/Data_Integration_Server/ext/pmimpprocess
  5. 3Run the following command to change the permissions of pmimpprocess:
  6. chmod 755 pmimpprocess
  7. 4Log in as the root user or sudo as root.
  8. 5Run the following command to change the ownership and access permissions of pmimpprocess:
  9. chown root:root pmimpprocess
    chmod u+s pmimpprocess
  10. 6Enter the location of pmimpprocess for the value of the OSProfileScriptForTaskExecution property in Data Integration Server properties.
  11. For example:
    <Secure Agent installation directory>/apps/Data_Integration_Server/ext/pmimpprocess

Using the default script

If you prefer to use the script method, locate the script in the following location:
Data_Integration_Server/ext/infa-osprofile-dtm.sh
Note: The script method is intended for advanced technical users only.
The following illustration shows the default script:
#!/bin/sh
input_args="$@"
env_var_file=$(mktemp)
chmod +r "${env_var_file}"
printenv | sed 's/\(^[^=]*\)=\(.*\)/export \1="\2"/'>"${env_var_file}"
echo "sudo su - ${ENV_INFA_DTM_OSPROFILE_USER} -c . ${env_var_file}; cd ${PWD}; ${input_args}" >/tmp/xx
sudo su - ${ENV_INFA_DTM_OSPROFILE_USER} -c ". ${env_var_file}; cd ${PWD}; ${input_args}"
exit_code=$?
rm "${env_var_file}"
exit "${exit_code}"
Update the script as appropriate to meet your needs.