Как подключить приложение WSO2 к Azure Event Hub с помощью SASL? - PullRequest
0 голосов
/ 25 января 2019

Я не могу подключиться к источнику Kafka (Azure Event Hub от Kafka), потому что для этого требуется аутентификация SASL.

WSO2sp / Siddhi может считывать дополнительные конфигурации по параметру необязательный .configuration ; Я не уверен, что установил правильные значения там.

Я пробовал связанный с этим вопрос: Ошибка коннектора WSO2 EI611 Kafka. Jaas.conf не найден

Но это относится к более старой версии WSO2.

Я думаю, что есть проблема с символом ":" в строковом соединении:

Endpoint=sb://xxxx.servicebus.windows.net/;SharedAccessKeyName=tp-stream;SharedAccessKey=123454tqliUPRM5NrnL3sSDJPpCMpmctogQDqvjlehw=;EntityPath=mapping-raw

Поскольку Сиддхи использует «:» для разделения значений, как в следующей ссылке. https://wso2 -extensions.github.io / сиддхи-IO-Кафка / апи / последний / # Кафка-источник

Также может возникнуть проблема с версией Kafka: WSO2 поддерживает версию Kafka 0.10.0.0, а концентратор событий Azure поддерживает протокол подключения Kafka 1.0 и выше.

@source(
    type='kafka', 
    bootstrap.servers='xxxx.servicebus.windows.net:9093',
    topic.list='mapping-raw',
    group.id='$Default',
    threading.option='single.thread',
    optional.configuration='security.protocol:SASL_SSL,sasl.mechanism:PLAIN,sasl.username:$ConnectionString,sasl.password:Endpoint=sb://xxxx.servicebus.windows.net/;SharedAccessKeyName=tp-stream;SharedAccessKey=123454tqliUPRM5NrnL3sSDJPpCMpmctogQDqvjlehw=;EntityPath=mapping-raw',
 @map(type='json', @attributes( 
    Channel='$.Channel', 
    Application='$.Application',
    SentDate='$.SentDate',
    Process='$.Process',
    EntityType='$.EntityType',
    EntityKey='$.EntityKey',
    Entity = '$.Entity'
    )))

define stream ObjectMappingStream (Channel string, Application string, SentDate string, Process string, EntityType string, EntityKey string, Entity string);

Я ожидаю, что смогу прочитать событие из топологии mapping-raw.

Я получаю в WSO2 ошибку:

Не удалось построить кафку потребителя

...