Deploying HCL CDP SMSEmailSender
This section provides detailed instructions on how to deploy HCL CDP SMS Email Sender using the Devtron in the AWS.
Prerequisites
Make sure to create cdp-smsemailsender secret in the AWS secret manager before deploying CDP SMS Email Sender.
To create CDP SMS Email Sender secret in the AWS secret manager, follow the steps below:
- Create a cdp-smsemailsender secret sample key and value, and update the actual values as
shown below.
{ "KafkaBootstrapServer": "bootstrap.servers::<KAFKA_HOST_1>:9096,<KAFKA_HOST_2>:9096", "KafkaUsername": "<KAFKA_USER>", "KafkaPassword": "<KAFKA_PASSWORD>", "VrmDbUsername": "<DB_USER>", "VrmDbPassword": "<DB_PASSWORD>", "KafkaProducerHostName": "trigger-sender-mu", "ADCB_DEVMAG_CERTIFICATE_PASSWORD": "", "ADCB_PRODMAG_CERTIFICATE_PASSWORD": "", "s3.accessKeyId": "", "s3.secretKey": "", "s3.region": "ap-south-1", "RedisIP": "<REDIS_HOST>", "RedisPort": "6379", "MysqlHost": "<DB_HOST>", "MysqlPort": "3307", "MysqlDb": "vrm?autoReconnect=true", "5979_ACL_USER_ID": "", "5979_ACL_PASS": "", "5979_ACL_APP_ID": "", "5979_ACL_SUB_APP_ID": "", "BLOW_FISH_KEY": "<SECRET_KEY>", "MGAGE_XML_API": "<API_KEY>", "KENSCIO_CLIENT_END_POINT_URL": "", "KENSCIO_USERNAME": "", "KENSCIO_PASSWORD": "", "KENSCIO_SYSTEM_ID_KEY": "", "KENSCIO_SYSTEM_ID": "", "KENSCIO_MESSAGE_ID_KEY": "", "KENSCIO_MESSAGE_ID": "", "AerospikeCluster": "<AERO_HOST_1>,<AERO_HOST_2>", "AerospikePort": "13000", "Namespace": "cdpstore", "Expiry": "-1", "Timeout": "3000", "USAerospikeCluster": "", "USAerospikePort": "13000", "USNamespace": "", "MUAerospikeCluster": "<AERO_HOST_1>,<AERO_HOST_2>", "MUAerospikePort": "13000", "MUNamespace": "cdpstore", "SupportedRegion": "aps1", "ExcludedCampaigns": "", "KAFKA_TOPIC_LIST": "dmp_sms_core_aps1,dmp_email_core_aps1,dmp_wsap_core_aps1,dmp_trapi_core_aps1", "KAFKA_TOPIC_CONSUMERS": "6,6,6,6", "KAFKA_TOPIC_CONSUMER_BATCHSIZE": "10,10,10,10", "KAFKA_TOPIC_CONSUMER_DEFAULT_BATCH_TIMEOUT_MS": "1000,1000,1000,1000", "KAFKA_TOPIC_CONSUMER_DEFAULT_BATCHTIMEOUT_TRIGGER": "5000,5000,5000,5000", "TSDB_HOST": "<TSDB_HOST>", "allowTrafficForSpecificCampaign": "false", "IncludedCampaigns": "4658,6035,6238,6037,6184,6349,6450,6455,6525", "URL_SHORTENER_S3_BUCKET": "lem-url-shortener", "URL_SHORTENER_S3_BUCKET_EMAIL": "lem-email-url-shortener", "PII_MIN_IDLE_THREADS": "2", "PII_MAX_IDLE_THREADS": "4", "KafkaBootstrapServerUS": "", "KafkaUsernameUS": "", "KafkaPasswordUS": "", "SesEnabled": "true", "PIILookUpEnabled": "true", "KafkaConsumerConfig": "bootstrap.servers::<KAFKA_HOST_1>:9096,<KAFKA_HOST_2>:9096|security.protocol::SASL_SSL|sasl.jaas.config::org.apache.kafka.common.security.scram.ScramLoginModule required username='<KAFKA_USER>' password='<KAFKA_PASSWORD>';|sasl.mechanism::SCRAM-SHA-512|client.dns.lookup::use_all_dns_ips|group.id::k8s-trigger-sender", "KafkaProducerConfig": "bootstrap.servers::<KAFKA_HOST_1>:9096,<KAFKA_HOST_2>:9096|security.protocol::SASL_SSL|sasl.jaas.config::org.apache.kafka.common.security.scram.ScramLoginModule required username='<KAFKA_USER>' password='<KAFKA_PASSWORD>';|sasl.mechanism::SCRAM-SHA-512|client.dns.lookup::use_all_dns_ips|acks::all|max.block.ms::5000", "KafkaProducerRegion": "aps1", "KafkaProducerConfigaps1": "bootstrap.servers::<KAFKA_HOST_1>:9096,<KAFKA_HOST_2>:9096|security.protocol::SASL_SSL|sasl.jaas.config::org.apache.kafka.common.security.scram.ScramLoginModule required username='<KAFKA_USER>' password='<KAFKA_PASSWORD>';|sasl.mechanism::SCRAM-SHA-512|client.dns.lookup::use_all_dns_ips|acks::all|max.block.ms::5000", "AerospikeUser": "<AERO_USER>", "AerospikePassword": "<AERO_PASSWORD>" } - Update ConfigMaps data with actual values, and create required Kafka topics before deployment.
Deploy CDP SMS Email Sender
- Navigate to the Devtron Chart Store, and select the cdp-smsemailsender chart
to deploy.
- Now, configure and deploy the cdp-smsemailsender charts.
- In the YAML section, update the ConfigMap using the below details and deploy the chart.
KAFKA_EXECUTOR_SERVICE_MIN_THREADS: "32" KAFKA_EXECUTOR_SERVICE_MAX_THREADS: "64" KAFKA_EXECUTOR_SERVICE_THREAD_TTL: "5" KAFKA_EXECUTOR_SERVICE_QUEUES_SIZE: "1000" TRAPI_KAFKA_EXECUTOR_SERVICE_MIN_THREADS: "32" TRAPI_KAFKA_EXECUTOR_SERVICE_MAX_THREADS: "64" TRAPI_KAFKA_EXECUTOR_SERVICE_THREAD_TTL: "5" TRAPI_KAFKA_EXECUTOR_SERVICE_QUEUES_SIZE: "1000" MAX_EVENT_BATCH_LAG: "16" KAFKA_CONSUMER_GROUP: k8s-trigger-sender EMAIL_HTTPS_CONNECTION_COUNT: "10" EMAIL_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "6000" MANDRILL_CLIENT_END_POINT_URL: "<masked-email-provider>" kMS_DECRYPT_TIMEOUT: "3" FROM_EMAIL_ID: user@domain.com ALERT_TO_EMAIL_ID: user@domain.com SMS_HTTPS_CONNECTION_COUNT: "10" SMS_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "6000" REDIS_MAX_CONNECTIONS: "20" REDIS_KEY_TTL_IN_SEC: "7776000" TRAPI_HTTPS_CONNECTION_COUNT: "45" TRAPI_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "4000" TRAPI_HTTPS_CONNECTION_READ_TIMEOUT_SECONDS: "122" TRAPI_HTTPS_CONNECTION_WRITE_TIMEOUT_SECONDS: "123" TRAPI_HTTPS_CONNECT_TIMEOUT_SECONDS: "124" CLICK_TRACKER: "<masked-tracker-url>" CLICK_TRACKER_SMS: "<masked-tracker-url>" OPEN_TRACKER: "<masked-tracker-url>" PASS_THROUGH_SUPPORTED_VENDOR: Phonon DB_REFRESH_INTERVAL_MS: "120000" TRAPI_CONFIG_REFRESH_INTERVAL: "600000" MINIMUM_IDLE_THREADS: "3" MAXIMUM_IDLE_THREADS: "6" TRAPI_TOPIC_PREFIX: dmp_trapi_core S3_ENDPOINT: "<masked-s3-endpoint>" S3_PROTOCOL: HTTPS S3_MAX_ERROR_RETRY: "3" S3_MAX_CONNECTIONS: "10" S3_MAX_RW_RETRY: "3" S3_TIMEOUT_SOCKET: "5000" S3_TIMEOUT_CONNECTION: "10000" S3_TIMEOUT_CLIENTEXECUTION: "50000" S3_TIMEOUT_REQUEST: "5000" S3_REQUEST_METADATA_FOLDER: trapi_req_metadata URL_SHORTENER_DOMAIN: "<masked-shortener-domain>" URL_SHORTENER_DOMAIN_EMAIL: "<masked-shortener-email-domain>" URL_SHORTENER_AVOID_CONFLICT: "true" URL_SHORTENER_CONFLICT_MAX_RETRIES: "3" URL_SHORTENER_MULTIPLY_FACTOR: "10000" SHORTEN_CLICK_TRACKER_EMAIL: "<masked-shortener-url>" KAFKA_PRODUCER_POOL_SIZE: "10" KAFKA_PRODUCER_META: "true" PRODUCER_EVENT_TYPE: "1234" CELERY_PARAM_SENDER: SENDER_aps1 CELERY_PARAM_IGNORE: IGNORE_IF_PRESENT CELERY_TOPIC: CeleryETA KAFKA_PRODUCER_CHANNELS: email,sms,trapi,wasp EMAIL_IMPRESSION_TOPIC: sms_email_events SMS_IMPRESSION_TOPIC: sms_email_events TRAPI_IMPRESSION_TOPIC: trapi_events TRAPI_FEEDBACK_IMPRESSION_TOPIC: sms_email_events WASP_IMPRESSION_TOPIC: whatsapp_events USER_FAILURE_KAFKA_TOPIC: sender_failure ADCB_DEVMAG_TRAPI_CERTIFICATE_FILE_PATH: "<masked-cert-path>" ADCB_DEVMAG_TRAPI_CERTIFICATE_S3_FILE_PATH: "<masked-cert-path>" ADCB_PRODMAG_TRAPI_CERTIFICATE_S3_FILE_PATH: "<masked-cert-path>" ADCB_PRODMAG_TRAPI_CERTIFICATE_FILE_PATH: "<masked-cert-path>" TRAPI_CERTIFICATE_ENDPOINT: "<masked-cert-service>" TRAPI_CERTIFICATE_CAMPAIGN_SUFFIX: "<masked-value>" COMPONENT_NAME: trigger_sender_us REPORTING_INTERVAL_IN_MIN: "55" WHATSAPP_HTTPS_CONNECTION_COUNT: "120" WHATSAPP_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "10" METRIC_FILE_PATH: /disk1/config/sms-email-sender/metrics.ini METRIC_DUMPER_FILE_PATH: /disk1/config/sms-email-sender/metricDumper.ini HTTPS_CONNECTION_COUNT: "10" HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "60" SERVER_PORT: "8085" COMMON_HTTPS_CONNECTION_COUNT: "100" COMMON_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "60" ADCB_STAGE_HTTPS_CONNECTION_COUNT: "10" ADCB_STAGE_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "600" ADCB_STAGE_HTTPS_CONNECTION_READ_TIMEOUT_SECONDS: "125" ADCB_STAGE_HTTPS_CONNECTION_WRITE_TIMEOUT_SECONDS: "120" ADCB_STAGE_HTTPS_CONNECT_TIMEOUT_SECONDS: "130" ADOBE_HTTPS_CONNECTION_COUNT: "15" ADOBE_HTTPS_CONNECTION_KEEP_ALIVE_SECONDS: "120" ADOBE_HTTPS_CONNECTION_READ_TIMEOUT_SECONDS: "900" ADOBE_HTTPS_CONNECTION_WRITE_TIMEOUT_SECONDS: "900" ADOBE_HTTPS_CONNECT_TIMEOUT_SECONDS: "124" SENDER_FEEDBACK_TOPIC: dmp_sst_nba_di_api LIVSPACE_IVR_LPEU_APID: "99" LIVSPACE_IVR_BPEU_APID: "89" APP_TYPE: trigger-sender-us APP_REGION: ap-south-1 APP_INFRA: k8s LOG_LEVEL_APP: debug LOG_LEVEL_METRICS: info LOG_LEVEL_UTILS: debug LOG_LEVEL_PII_STORAGE: debug LOG_LEVEL_KMS: debug LOG_LEVEL_ROOT: info S3_ACCESSKEYID: "" S3_SECRETKEY: "" S3_REGION: ap-south-1 defaultBusinessRegion: aps1 inboundKafkaTopic: sender_inbound ergoLeadApi: "<masked-api>" VRM_DRIVER: org.mariadb.jdbc.Driver DBDRIVER: jdbc:mariadb TSDB_PORT: "80" KafkaProducerConfiguse1: "<masked>" KafkaProducerConfigtaw1: "<masked>" KENSCIO_USERNAME: "<masked>" KENSCIO_PASSWORD: "<masked>" KENSCIO_SYSTEM_ID_KEY: "<masked>" KENSCIO_SYSTEM_ID: "<masked>" KENSCIO_MESSAGE_ID_KEY: "<masked>" KENSCIO_MESSAGE_ID: "<masked>" ADCB_DEVMAG_CERTIFICATE_PASSWORD: "<masked>" 5979_ACL_USER_ID: "<masked>" 5979_ACL_PASS: "<masked>" 5979_ACL_APP_ID: "<masked>" 5979_ACL_SUB_APP_ID: "<masked>" BLOW_FISH_KEY: "<masked>" MGAGE_XML_API: "<masked>" emailType: SES KMS_IMPLEMENTATION: AWS
- On successful deployment, validate the deployment as shown below.