Following the instructions at Configure Kafka Connect for Confluent Platform Using Confluent for Kubernetes | Confluent Documentation. On line 10, the key I have is the same as in the example (url)
(forums complains about links in my post, so I have replaced some with …)
$ kubectl apply -f connector.yaml
error: error parsing connector.yaml: error converting YAML to JSON: yaml: line 10: did not find expected key
kind: Connect
metadata:
annotations:
platform.confluent.io/connector-wget-extra-args: --no-check-certificate
spec:
build:
type: onDemand
onDemand:
plugins:
url: ...
- name: Couchbase_Kafka_Connector_4.2.7
archivePath: ...
checksum: b2aff22e3020ed8115bf7e259559c90e
storageLimit: 4G
Edit: url is just the header for name, archivePath, checksum. It does not take a value. The actual url is “archive path”. It would be useful to have an example inline vs. a pointer to a git repo.
After fixing that
error: error validating “connector.yaml”: error validating data: apiVersion not set; if you choose to ignore these errors, turn validation off with --validate=false
After fixing that with --validate=false
error: resource mapping not found for name: "" namespace: "" from "connector.yaml": no matches for kind "Connect" in version ""
kubectl get pods
NAME READY STATUS RESTARTS AGE
confluent-operator-68f4bf8785-hnvwt 1/1 Running 5 (19h ago) 3d1h
connect-0 1/1 Running 4 (19h ago) 3d1h
controlcenter-0 1/1 Running 9 (19h ago) 3d1h
elastic-0 1/1 Running 7 (19h ago) 3d1h
kafka-0 1/1 Running 7 (19h ago) 3d1h
kafka-1 1/1 Running 7 (19h ago) 3d1h
kafka-2 1/1 Running 7 (19h ago) 3d1h
kafkarestproxy-0 1/1 Running 3 (19h ago) 3d1h
ksqldb-0 1/1 Running 9 (19h ago) 3d1h
schemaregistry-0 1/1 Running 10 (19h ago) 3d1h
schemaregistry-1 1/1 Running 10 (19h ago) 3d1h
schemaregistry-2 1/1 Running 10 (19h ago) 3d1h
zookeeper-0 1/1 Running 3 (19h ago) 3d1h
zookeeper-1 1/1 Running 3 (19h ago) 3d1h
zookeeper-2 1/1 Running 3 (19h ago) 3d1h
$ kubectl get namespaces
NAME STATUS AGE
confluent Active 3d2h
default Active 3d2h
kube-node-lease Active 3d2h
kube-public Active 3d2h
kube-system Active 3d2h
A little further…
$ cat connector.yaml
apiVersion: platform.confluent.io/v1beta1
kind: Connect
namespace: confluent
metadata:
name: kafka-connect-couchbase
namespace: confluent
annotations:
platform.confluent.io/connector-wget-extra-args: --no-check-certificate
spec:
build:
type: onDemand
onDemand:
plugins:
url:
- name: Couchbase_Kafka_Connector_4.2.7
archivePath: https://packages.couchbase.com/clients/kafka/4.2.7/couchbase-kafka-connect-couchbase-4.2.7.zip
checksum: b2aff22e3020ed8115bf7e259559c90e
storageLimit: 4G
$ kubectl apply --validate=false -f connector.yaml
The Connect "kafka-connect-couchbase" is invalid: spec.image: Required value
$
adding image to spec and it works. Maybe someone could update the instructions?
spec:
image:
application: confluentinc/cp-server-connect:7.0.1
init: confluentinc/confluent-init-container:2.2.0-1