2017-08-10 48 views
0

我已經能夠在Kubernetes集羣中設置彈簧雲數據流1.2.0.RELEASE,導入入門應用程序並運行諸如「http | log」之類的簡單流程。 但是,當我嘗試在像「http | myApp | log」這樣的流中運行我自己的Dockerized流應用程序時,似乎無法使其工作......部署很好,流的Kafka主題按預期創建,沒有錯誤消息來自任何豆莢,但myApp處理器似乎沒有意識到Kafka主題,因此從不接收來自http源的數據。Docker化SCDF的流應用程序

我的問題是:是否有什麼特別的關於碼頭化SCDF流媒體應用程序?數據流服務器如何配置K8s窗格以將其指向正確的Kafka主題?我去了https://github.com/spring-cloud-stream-app-starters,似乎無法找到任何Dockerfile示例,所以我不知道它是如何完成入門應用程序的。

我的流應用程序非常簡單;代碼是這樣的:

@SpringBootApplication 
@EnableBinding(Processor.class) 
public class MyAppProcessor 
{ 
    ... 

    @StreamListener(Processor.INPUT) 
    @SendTo(Processor.OUTPUT) 
    List<MyPOJO> doProcessing(List<Double> doubles) { 
     .... 
    } 
} 

我也用@ServiceActivator但似乎並沒有有所作爲。

回答

0

您是否使用開箱即用的httplog應用程序來運行http | log流程?我假設你已經使用指定的012.指定的bit.ly鏈接導入應用程序(您也可以單獨註冊應用程序)。您是如何dockerize並將圖像提供給SCDF服務器的?該映像需要作爲Docker資源提供,然後進行註冊。

1

我不確定你用於處理器的依賴關係。我剛創建了一個簡單的變壓器處理器,並寫了一些關於我所做的事情的筆記。看看是否有助於讓你的榜樣。我的筆記在這裏:https://gist.github.com/trisberg/39eb9c6346cd3cd7d7c0616e152e141f#file-uppercase-notes-adoc

數據流服務器應該設置流應用程序在部署時需要連接到Kafka的屬性。

我們真的應該創建一些更多的示例並記錄如何構建Docker。我們使用io.fabric8:docker-maven-plugin來生成開箱即用的應用程序,但在我的示例中,我只是使用了一個簡單的Dockerfile