Configuration
The RFC Source Connector package includes detailed configuration documentation, which can be found in the following locations:
Additionally, the connector package includes configuration template files in the etc/
subfolder:
rfc-source-connector.properties
The connector utilizes extensive validators and recommenders and has been tested with the Confluent Control Center UI.
Benefits of Configuring through Confluent Control Center
The RFC Source Connector fully supports configuration through the Confluent Control Center UI. Compared to using property files, configuring through this UI offers several advantages:
- Suggested property values
- A comprehensive list of recommended settings
- Incremental visibility into relevant configuration options
- A wide range of interactive validations
- And more
To maintain optimal performance, the Confluent Control Center UI displays a maximum of 1000 recommendations at a time.
Once the required fields for an RFC/RFM source are entered in the configuration UI, a new section will appear, allowing you to configure additional service entities. Value recommendations for the group name are loaded only after entering a prefix with an asterisk, such as Z*
.
To see how easy it is to set up the RFC Source Connector using the Confluent Control Center, watch this screen recording.
SAP® System Connection
The RFC/RFM Source Connector includes configuration properties from SAP® JCo, which are identified by the prefix jco.
. For a detailed description of these properties, please refer to the Java documentation of the com.sap.conn.jco.ext.DestinationDataProvider
interface. The JCo JavaDoc can be found within the sapjco3.jar
package.
A basic configuration for a SAP® JCo client destination is as follows:
# SAP Netweaver application host DNS or IP
jco.client.ashost = 127.0.0.1
# SAP system number
jco.client.sysnr = 20
# SAP client number
jco.client.client = 100
# SAP RFC user
jco.client.user = user
# SAP user password
jco.client.passwd = password
If you’re using SAP’s Message Server for load balancing, replace jco.client.ashost
with jco.client.mshost
.
To ensure encryption and data integrity, use SAP® Secure Network Connection (SNC) properties. The connector also supports various authentication types, including user/password, SNC Single Sign-On (SSO) using X509 certificates, and SAP® cookie V2 logon ticket.
SAP® Authorizations
To be able to establish communication between the connector and the SAP® system and within the framework of authorization management, you need an SAP® user. The SAP® user must be of type Communications or Dialog. To save SAP® dialog resources, the Communications type is recommended.
Minimum Required Authorizations
-
Object S_RFC:
ACTVT: 16
RFC_NAME: RFCPING, SMLG_GET_DEFINED_GROUPS, RFC_GET_FUNCTION_INTERFACE, RFC_METADATA_GET
RFC_TYPE: FUNC -
Object S_RFC:
ACTVT: 16
RFC_NAME: RFC1, RSDS_BAPI
RFC_TYPE: FUGR
Configuration Support with our CLI Tool
The RFC connector’s package includes a command line interface (CLI) to help with various tasks such as:
- Validating connector properties
- Testing SAP® connections
- Listing available RFMs as well as query details of an RFM
Since the CLI is written in Scala you can execute it in either Scala or Java.
Prerequisites
To run the CLI you need to provide the following dependencies in the CLASSPATH:
- Scala runtime libraries
- kafka-clients
- kafka-connect-rfc connector libraries
- SAP Java Connector 3.1 SDK
Since a Java runtime is provided by the Confluent Platform and the Scala runtime libraries are part of the connector package, executing the CLI with Java would not require installing Scala.
- Java
-
java -cp <kafka-connect-rfc>:<kafka-clients>:\ <kafka-avro-serializer>:<sapjco3> \ org.init.ohja.kafka.connect.rfc.source.RFCDetailsApp \ <command> <options>
- Scala
-
scala -cp <kafka-connect-rfc>:<kafka-clients>:\ <kafka-avro-serializer>:<sapjco3> \ org.init.ohja.kafka.connect.rfc.source.RFCDetailsApp \ <command> <options>
The required Kafka libraries are usually located in:
/usr/share/java/kafka/
/usr/share/java/kafka-serde-tools/
Available Commands
ping
: Test the SAP® connection.list-groups
list-rfm
: List all available RFMs from the SAP system.rfm-details
: Print meta information of an RFM.extract-schema
: Print the avro schema of an RFM source. Extracting Avro schemas requires the presence ofio.confluent.kafka-connect-avro-converter
in the classpath.
usage:
RFCDetailsApp <command> <options>
commands:
ping
list-groups
list-rfm -g <group>
rfm-details -n <rfm name>
extract-schema -n <rfm name>
mandatory options:
-p <path to connector properties file>
Avro schemas may differ if the Single Message Transform(s) in the connector configuration are used.