Deploying the S3 to S3 Avro with S3 Notifications ReadyFlow

Learn how to use the Deployment wizard to deploy the S3 to S3 Avro with S3 Notifications ReadyFlow using the information you collecting using the prerequisites checklist.

The CDF Catalog is where you manage the flow definition lifecycle, from initial import, to versioning, to deploying a flow definition.

  • You have an enabled and healthy CDF environment.

  • You have imported at least one flow definition.

  • You have been assigned the DFCatalogAdmin or DFCatalogViewer role granting you access to the CDF Catalog.

  • You have been assigned the DFFlowAdmin role for the environment to which you want to deploy the flow definition.

  1. In DataFlow, from the left navigation pane, click Catalog.
    Flow definitions available for you to deploy are displayed, one definition per row.
  2. Launch the Deployment wizard.
    1. Click the row to display the flow definition details and versions.
    2. Click a row representing a flow definition version to display flow definition version details and the Deploy button.
    3. Click Deploy to launch the Deployment wizard.
  3. From the Deployment wizard, select the environment to which you want to deploy this version of your flow definition.
  4. From the Overview, give your flow deployment a unique name and pick the NiFi Runtime Version for your flow deployment .
    • You can use this name to distinguish between different versions of a flow definition, flow definitions deployed to different environments, and similar.

    • You can pick the NiFi Runtime Version for your flow deployment. Cloudera recommends that you always use the latest available version, if possible.

  5. In Parameters, specify parameter values like connection strings, usernames and similar, and upload files like truststores, and similar.
    For parameters specific to this ReadyFlow, see the example table below.
  6. Specify your Sizing & Scaling configurations.
    NiFi node sizing
    • You can adjust the size of your cluster from Extra Small to Large
    Number of NiFi nodes
    • You can set whether you want to automatically scale your cluster according to flow deployment capacity requirements. When you enable autoscaling, the minimum NiFi nodes are used for initial size and the workload scales up or down depending on resource demands.
    • You can set the number of nodes from 1 to 32.
  7. From KPIs, you may choose to identify key performance indicators (KPIs), the metrics to track those KPIs, and when and how to receive alerts about the KPI metrics tracking.

    See Working with KPIs for complete information about the KPIs available to you and how to monitor them.

  8. Review a summary of the information provided and make any necessary edits by clicking Previous. When you are finished, complete your flow deployment by clicking Deploy.

Once you click Deploy, you are being redirected to the Alerts tab in the detail view for the deployment where you can track its progress.

For the S3 to S3 Avro with S3 Notifications ReadyFlow, the following parameters are required, using the information you collected in Meeting the prerequisites.

Table 1. S3 to S3 Avro with S3 Notifications ReadyFlow configuration parameters
Parameter Name Description Example
CDP Workload User Specify the CDP machine user or workload user name that you want to use to authenticate to the object stores (via IDBroker) and to the schema registry. Ensure this user has the appropriate access rights to the object store locations and to the schema registry.
CDP Workload User Password Specify the password of the CDP machine user or workload user you're using to authenticate against Kafka and the object store.
CDPEnvironment

DataFlow will use this parameter to auto-populate the Flow Deployment with Hadoop configuration files required to interact with S3.

DataFlow automatically adds all required configuration files to interact with Data Lake services. Unnecessary files that are added won't impact the deployment process.

CSV Delimiter If your source data is CSV, specify the delimiter here.
Data Input Format Specify the format of your input data.

JSON

CSV

Avro

Destination S3 Bucket Specify the name of the destination S3 bucket you want to write to. The full path will be constructed out of s3a://#{Destination S3 Bucket}/#{Destination S3 Path}/[subdirectory]/${filename} ([subdirectory] is the original directory of the file if the #{Source S3 Path} prefix is not specified)
Destination S3 Path Specify the path within the destination bucket where you want to write to. The full path will be constructed out of s3a://#{Destination S3 Bucket}/#{Destination S3 Path}/[subdirectory]/${filename} ([subdirectory] is the original directory of the file if the #{Source S3 Path} prefix is not specified)
Notification SQS Queue URL URL of the SQS Queue set up for delivering notifications about S3 object creation events. The SQS Queue must be in the same region as the source S3 Bucket and the bucket needs to be configured to send notifications to the queue.
Schema Name Specify the schema name to be looked up in the Schema Registry used to parse the source files.
Schema Registry Hostname Specify the hostname of the Schema Registry you want to connect to. This must be the direct hostname of the Schema Registry itself, not the Knox Endpoint.
Source S3 Bucket Specify the name of the source S3 bucket you want to read from.
Source S3 Path Specify the path within the source bucket where you want to read files from. If notifications are received with a source object key not matching the Source S3 Path (as a prefix), they will be filtered out and will not be loaded. The Source S3 Path will be stripped off from the source object key and will be replaced with the Destination S3 Path in the destination object key.
Source S3 Region Specify the AWS region of your source S3 Bucket and S3 Event Notification SQS Queue. Supported values are: us-gov-west-1, us-gov-east-1, us-east-1, us-east-2, us-west-1, us-west-2, eu-west-1, eu-west-2, eu-west-3, eu-central-1, eu-north-1, eu-south-1, ap-east-1, ap-south-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, ap-northeast-2, ap-northeast-3, sa-east-1, cn-north-1, cn-northwest-1, ca-central-1, me-south-1, af-south-1, us-iso-east-1, us-isob-east-1, us-iso-west-1