Deploying CDP Flip

This section provides detailed instructions on how to deploy CDP Flip using the Devtron in the OpenShift.

Prerequisites

Make sure to create cdp-flip secret in HashiCorp vault before deploying CDP Trigger.

To create CDP Flip secret in the HashiCorp vault, follow the steps below:

  1. Create a cdp-flip secret sample key and value, and update the actual values as shown below.
    {
      "CUSTOMIZATION_AERO_CLUSTER": "<CUSTOMIZATION_AERO_CLUSTER>",
      "DB_PASSWORD": "<DB_PASSWORD>",
      "DB_URL": "<DB_URL>",
      "DB_USERNAME": "<DB_USERNAME>",
      "KAFKA_CONSUMER_PREFIX": "flip",
      "KAFKA_TOPIC_LIST": "dmp_rt_segments",
      "KafkaConsumerConfig": "<KafkaConsumerConfig>"
    }
  2. Create separate service account cdp-dev-app-sa with appropriate roles and permissions, and update ConfigMaps data with actual values.
  3. Create required Kafka topics before deployment.

Deploy CDP Flip

  1. Navigate to the Devtron Chart Store, and select the cdp-flip chart to deploy.

  2. Now, configure and deploy the cdp-trigger charts.

  3. In the YAML section, update the ConfigMap using the below details and deploy the chart.
    APP_INFRA: k8s
    APP_REGION: ap-south-1
    APP_TYPE: trigger--mu
    AWSRegion: us-east-1
    AerospikeAppPushBin: ap
    AerospikeBookKeepingBin: bk
    AerospikeCacheExpiry: "48"
    AerospikeEmailBin: email
    AerospikeIcAndBookKeepingSetPrefix: impression_
    AerospikeIcAndBookKeepingSetTTL: "8760"
    AerospikeImpressionCapBin: ic
    AerospikeNamespace: cdpstore
    AerospikePushFallbackBin: appfb
    AerospikePushFallbackSet: fallback
    AerospikePushFallbackSetTTL: "48"
    AerospikeRamanujanBin: tc
    AerospikeRamanujanSet: ramanujan
    AerospikeRamanujanSetTTL: "48"
    AerospikeSegmentSetTTL: "48"
    AerospikeSmsBin: sms
    AerospikeTimeout: "100000"
    AerospikeTriggerApiBin: ""
    AerospikeWebPushBin: wp
    AerospikeWhatsAppBin: wsap
    AppPushDelayedTriggerTopic: dmp_apn_tr
    AppPushImmediateTriggerTopic: dmp_apn_tr
    CeleryParamIgnore: IGNORE_IF_PRESENT
    CeleryParamOverride: OVERRIDE
    CeleryParamTrigger: TRIGGER
    CeleryTimeThresholdMinutes: "30"
    CeleryTriggerTopic: CeleryETALem
    EXECUTOR_SERVICE_MAX_THREADS: "4"
    EXECUTOR_SERVICE_MIN_THREADS: "2"
    EXECUTOR_SERVICE_QUEUE_SIZE: "100"
    EXECUTOR_SERVICE_THREAD_TTL: "5"
    EmailDelayedTriggerTopic: dmp_email_tr
    EmailImmediateTriggerTopic: dmp_email_tr
    InboundKafkaTopic: trigger_inbound
    KAFKA_CONSUMER_GROUP_ID: -trigger
    KAFKA_POLL_INTERVAL: "200"
    KAFKA_PRODUCER_EVENT_TYPE: "5656"
    KAFKA_PRODUCER_META: "true"
    KAFKA_PRODUCER_POOL_SIZE: "10"
    KAFKA_TOPIC_CONSUMER_BATCH_SIZE: 10,10,10
    KAFKA_TOPIC_CONSUMER_DEFAULT_BATCH_TIMEOUT_MS: 1000,1000,1000
    KAFKA_TOPIC_CONSUMER_DEFAULT_BATCH_TIMEOUT_TRIGGER: 5000,5000,5000
    KAFKA_TOPIC_CONSUMERS: 6,6,6
    KAFKA_TOPIC_LIST: dmp_rt_segments,ETANotify,dmp_journey_trigger
    KafkaCeleryNotify: ETANotify
    KafkaJourneyTopic: dmp_journey_trigger
    KafkaRTSegment: dmp_rt_segments
    KafkaRTSegmentOffline: dmp_rt_segments_offline
    LOG_LEVEL_APP: debug
    LOG_LEVEL_METRICS: info
    LOG_LEVEL_ROOT: info
    LOG_LEVEL_UTILS: info
    MAX_BATCH_EXECUTE_RETRIES: "3"
    MAX_EVENT_BATCH_LAG: "8"
    MysqlMapRefreshIntervalMinute: "1"
    OPEN_TSDB_HOST: <OPEN_TSDB_HOST>
    OPEN_TSDB_HOST_TO_BE_ADDED: "true"
    OPEN_TSDB_PORT: "80"
    ReportingIntervalInMin: "55"
    RtsSegOfflineRefreshDsName: rtsegofflinerefresh
    RtsSegOnlineRefreshDsName: rtsegonlinerefresh
    RtsSegRefreshDsName: rtsegrefresh
    SmsDelayedTriggerTopic: dmp_sms_tr
    SmsImmediateTriggerTopic: dmp_sms_tr
    TriggerApiDelayedTriggerTopic: dmp_trapi_tr
    TriggerApiImmediateTriggerTopic: dmp_trapi_tr
    UserFailureKafkaTopic: trigger_failure
    WebPushDelayedTriggerTopic: dmp_wpn_tr
    WebPushImmediateTriggerTopic: dmp_wpn_tr
    WhatsAppDelayedTriggerTopic: dmp_wsap_tr
    WhatsAppImmediateTriggerTopic: dmp_wsap_tr
    alertToEmailId: ""
    emailType: SMTP
    fromEmailId: ""
    hostname: trigger-prod-mu
    smtpHost: <OPEN_TSDB_HOST>
    smtpPort: "<smtpPort>"

  4. On successful deployment, validate the deployment as shown below.