Установка зеркала 2 с использованием kafka connect rest api put метод не разрешен - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь выполнить установку зеркала 2, используя мой текущий кластер подключения. Основываясь на этой документации, это можно сделать через connect rest api.

https://cwiki.apache.org/confluence/display/KAFKA/KIP-382%3A+MirrorMaker+2.0#KIP -382: MirrorMaker2.0-RunningMirrorMakerinaConnectcluster

Я следовал примеру, послав этот запрос PUT :

PUT / connectors / us-west-source / config HTTP / 1.1

{
    "name": "us-west-source",
    "connector.class": "org.apache.kafka.connect.mirror.MirrorSourceConnector",
    "source.cluster.alias": "us-west",
    "target.cluster.alias": "us-east",
    "source.cluster.bootstrap.servers": "us-west-host1:9091",
    "topics": ".*"
}

, но я получаю метод, не разрешенный ответ об ошибке ответа.

{
  "error_code": 405,
  "message": "HTTP 405 Method Not Allowed"
}

API выглядит нормально, если я делаю простой GET из /, возвращая версию

{
  "version": "2.1.0-cp1",
  "commit": "bda8715f42a1a3db",
  "kafka_cluster_id": "VBo-j1OAQZSN8tO4lMJ0Gg"
}

1 Ответ

0 голосов
/ 24 апреля 2020

метод PUT не работает, использование POST работает, как показывает документация API: https://docs.confluent.io/current/connect/references/restapi.html#get - соединители

удаляет имя соединителя из URL как @ cricket_007 предложил, и оберните конфиг с новым элементом, как это:

curl --noproxy "*" -XPOST -H 'Content-Type: application/json' -H 'Accept: application/json' http://localhost:8083/connectors -d'{
    "name": "dc-west-source",
    "config": {
    "connector.class": "org.apache.kafka.connect.mirror.MirrorSourceConnector",
    "source.cluster.alias": "dc-west",
    "target.cluster.alias": "dc-east",
    "source.cluster.bootstrap.servers": "dc-west-cp-kafka-0.domain:32721,dc-west-cp-kafka-1.domain:32722,dc-west-cp-kafka-2.dc.domain:32723",
    "topics": ".*" 
    }
}
' | jq .
...