Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 70 additions & 4 deletions examples/cdf/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,78 @@
# See the License for the specific language governing permissions and
# limitations under the License.

- name: Coda
- name: Deploy example DFX Flow
hosts: localhost
connection: local
gather_facts: no
become: no
tags: always
tasks:
- name: Deployment results
debug:
msg: Success!
- name: Construct the deployment details
when:
- deployment is undefined
- "'run' in ansible_run_tags"
- "'teardown' not in ansible_run_tags"
ansible.builtin.include_role:
name: cloudera.exe.info

- name: Get CDP workload username for current user
when:
- "'teardown' not in ansible_run_tags"
- "'run' in ansible_run_tags"
cloudera.cloud.iam_user_info:
current_user: yes
register: __iam

- name: Extract Kafka Brokers from Info
when:
- "'teardown' not in ansible_run_tags"
- "'run' in ansible_run_tags"
- "{{ deployment.datahubs | selectattr('workloadType', 'search', 'Streams Messaging') | length > 0 }}"
ansible.builtin.set_fact:
kafka_brokers_fqdns: "{{ deployment.datahubs | selectattr('workloadType', 'search', 'Streams Messaging') | first | json_query(_jq) | first }}"
vars:
_jq: "instanceGroups[?name=='core_broker'].instances[*].fqdn"

- name: Deploy example DFX Flow - Kafka to Kafka
when:
- "'teardown' not in ansible_run_tags"
- "'run' in ansible_run_tags"
- kafka_brokers_fqdns is defined
- kafka_brokers_fqdns | length > 0
cloudera.cloud.df_deployment:
name: "{{ globals.name_prefix }}_ex_kafkatokafka"
df_name: "{{ deployment.environment.environmentName }}"
flow_name: "Kafka to Kafka"
autoscale: yes
autostart_flow: yes
parameter_groups: "{{ parameter_groups }}"
kpis: "{{ kpis }}"
vars:
parameter_groups:
- name: "kafka-to-kafka"
parameters:
- name: "CDP Workload User"
value: "{{ __iam.users[0].workloadUsername }}"
- name: "CDP Workload User Password"
value: "{{ globals.admin_password }}"
- name: "Kafka Broker Endpoint"
value: "{{ kafka_brokers_fqdns | product([':9093']) | map('join') | list | join(',') }}"
- name: "Kafka Consumer Group ID"
value: "ex_cdf_consg0"
- name: "Kafka Destination Topic"
value: "ex_cdf_dest"
- name: "Kafka Producer ID"
value: "_ex_cdf_prodc0"
- name: "Kafka Source Topic"
value: "ex_cdf_source"
kpis:
- metricId: cpuUtilization
alert:
thresholdMoreThan:
unitId: percentage
value: 25
frequencyTolerance:
unit:
id: MINUTES
value: 5
18 changes: 10 additions & 8 deletions examples/cdf/definition.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
# Commented values are shown with the defaults, uncomment and change to override

df:
readyflows:
- flow_name: "Kafka to Kafka"
# min_k8s_nodes: 3
# max_k8s_nodes: 5
# public_loadbalancer: True
Expand All @@ -32,11 +34,11 @@ env:
public_endpoint_access: yes
tunnel: yes

#datahub:
# definitions:
# - definition: "Flow Management Light Duty"
# suffix: nifi-dhub
# - definition: "Streams Messaging Light Duty"
# suffix: kafka-dhub
# - definition: "Streaming Analytics Light Duty"
# suffix: flink-dhub
datahub:
definitions:
- definition: "Flow Management Light Duty"
suffix: nifi-dhub
- definition: "Streams Messaging Light Duty"
suffix: kafka-dhub
- definition: "Streaming Analytics Light Duty"
suffix: flink-dhub