@@ -27,41 +27,62 @@ A Managed Service for Kafka Connect Connectors.
27
27
See [ Provider Versions] ( https://terraform.io/docs/providers/google/guides/provider_versions.html ) for more details on beta resources.
28
28
29
29
30
- <div class = " oics-button " style =" float : right ; margin : 0 0 -15px " >
31
- <a href =" https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_image=gcr.io%2Fcloudshell-images%2Fcloudshell%3Alatest&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md&cloudshell_working_dir=managedkafka_connector_basic&open_in_editor=main.tf " target =" _blank " >
32
- <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
33
- </a >
34
- </div >
35
30
## Example Usage - Managedkafka Connector Basic
36
31
37
32
38
33
``` hcl
39
- resource "google_compute_network" "mkc_network" {
40
- name = "my-network-0"
41
- auto_create_subnetworks = false
34
+ resource "google_project" "project" {
35
+ project_id = "tf-test%{random_suffix}"
36
+ name = "tf-test%{random_suffix}"
37
+ org_id = "123456789"
38
+ billing_account = "000000-0000000-0000000-000000"
39
+ deletion_policy = "DELETE"
40
+
41
+ provider = google-beta
42
42
}
43
43
44
- resource "google_compute_subnetwork" "mkc_subnet" {
45
- name = "my-subnetwork-0"
46
- ip_cidr_range = "10.4.0.0/16"
47
- region = "us-central1"
48
- network = google_compute_network.mkc_network.id
44
+ resource "time_sleep" "wait_60_seconds" {
45
+ create_duration = "60s"
46
+ depends_on = [google_project.project]
47
+ }
48
+
49
+ resource "google_project_service" "compute" {
50
+ project = google_project.project.project_id
51
+ service = "compute.googleapis.com"
52
+ depends_on = [time_sleep.wait_60_seconds]
53
+
54
+ provider = google-beta
55
+ }
56
+
57
+ resource "google_project_service" "managedkafka" {
58
+ project = google_project.project.project_id
59
+ service = "managedkafka.googleapis.com"
60
+ depends_on = [time_sleep.wait_60_seconds]
61
+
62
+ provider = google-beta
49
63
}
50
64
51
- resource "google_compute_subnetwork" "mkc_additional_subnet" {
52
- name = "my-additional-subnetwork-0"
65
+ resource "google_compute_subnetwork" "mkc_secondary_subnet" {
66
+ project = google_project.project.project_id
67
+ name = "my-secondary-subnetwork-00"
53
68
ip_cidr_range = "10.5.0.0/16"
54
69
region = "us-central1"
55
- network = google_compute_network.mkc_network.id
70
+ network = "default"
71
+ depends_on = [google_project_service.compute]
72
+
73
+ provider = google-beta
56
74
}
57
75
58
76
resource "google_pubsub_topic" "cps_topic" {
77
+ project = google_project.project.project_id
59
78
name = "my-cps-topic"
60
-
61
79
message_retention_duration = "86600s"
80
+
81
+ provider = google-beta
62
82
}
63
83
64
84
resource "google_managed_kafka_cluster" "gmk_cluster" {
85
+ project = google_project.project.project_id
65
86
cluster_id = "my-cluster"
66
87
location = "us-central1"
67
88
capacity_config {
@@ -71,23 +92,31 @@ resource "google_managed_kafka_cluster" "gmk_cluster" {
71
92
gcp_config {
72
93
access_config {
73
94
network_configs {
74
- subnet = "projects/${data. google_project.project.project_id}/regions/us-central1/subnetworks/${google_compute_subnetwork.mkc_subnet.id} "
95
+ subnet = "projects/${google_project.project.project_id}/regions/us-central1/subnetworks/default "
75
96
}
76
97
}
77
98
}
99
+ depends_on = [google_project_service.managedkafka]
100
+
101
+ provider = google-beta
78
102
}
79
103
80
104
resource "google_managed_kafka_topic" "gmk_topic" {
105
+ project = google_project.project.project_id
81
106
topic_id = "my-topic"
82
107
cluster = google_managed_kafka_cluster.gmk_cluster.cluster_id
83
108
location = "us-central1"
84
109
partition_count = 2
85
110
replication_factor = 3
111
+ depends_on = [google_project_service.managedkafka]
112
+
113
+ provider = google-beta
86
114
}
87
115
88
116
resource "google_managed_kafka_connect_cluster" "mkc_cluster" {
117
+ project = google_project.project.project_id
89
118
connect_cluster_id = "my-connect-cluster"
90
- kafka_cluster = "projects/${data. google_project.project.project_id}/locations/us-central1/clusters/${google_managed_kafka_cluster.gmk_cluster.cluster_id}"
119
+ kafka_cluster = "projects/${google_project.project.project_id}/locations/us-central1/clusters/${google_managed_kafka_cluster.gmk_cluster.cluster_id}"
91
120
location = "us-central1"
92
121
capacity_config {
93
122
vcpu_count = 12
@@ -96,18 +125,22 @@ resource "google_managed_kafka_connect_cluster" "mkc_cluster" {
96
125
gcp_config {
97
126
access_config {
98
127
network_configs {
99
- primary_subnet = "projects/${data. google_project.project.project_id}/regions/us-central1/subnetworks/${google_compute_subnetwork.mkc_subnet.id} "
100
- additional_subnets = ["${google_compute_subnetwork.mkc_additional_subnet .id}"]
101
- dns_domain_names = ["${google_managed_kafka_cluster.gmk_cluster.cluster_id}.us-central1.managedkafka-staging .${data. google_project.project.project_id}.cloud-staging .goog"]
128
+ primary_subnet = "projects/${google_project.project.project_id}/regions/us-central1/subnetworks/default "
129
+ additional_subnets = ["${google_compute_subnetwork.mkc_secondary_subnet .id}"]
130
+ dns_domain_names = ["${google_managed_kafka_cluster.gmk_cluster.cluster_id}.us-central1.managedkafka.${google_project.project.project_id}.cloud.goog"]
102
131
}
103
132
}
104
133
}
105
134
labels = {
106
135
key = "value"
107
136
}
137
+ depends_on = [google_project_service.managedkafka]
138
+
139
+ provider = google-beta
108
140
}
109
141
110
142
resource "google_managed_kafka_connector" "example" {
143
+ project = google_project.project.project_id
111
144
connector_id = "my-connector"
112
145
connect_cluster = google_managed_kafka_connect_cluster.mkc_cluster.connect_cluster_id
113
146
location = "us-central1"
@@ -117,17 +150,17 @@ resource "google_managed_kafka_connector" "example" {
117
150
"tasks.max" = "1"
118
151
"topics" = "${google_managed_kafka_topic.gmk_topic.topic_id}"
119
152
"cps.topic" = "${google_pubsub_topic.cps_topic.name}"
120
- "cps.project" = "${data. google_project.project.project_id}"
153
+ "cps.project" = "${google_project.project.project_id}"
121
154
"value.converter" = "org.apache.kafka.connect.storage.StringConverter"
122
155
"key.converter" = "org.apache.kafka.connect.storage.StringConverter"
123
156
}
124
157
task_restart_policy {
125
158
minimum_backoff = "60s"
126
159
maximum_backoff = "1800s"
127
160
}
128
- }
161
+ depends_on = [google_project_service.managedkafka]
129
162
130
- data "google_project" "project" {
163
+ provider = google-beta
131
164
}
132
165
```
133
166
0 commit comments