【JAVA版】Storm程式整合Kafka、Mongodb樣本及部署

來源:互聯網
上載者:User

標籤:

一、環境
  • 一台Centos6.5主機
  • Mongo 3.0
  • Kafka_2.11-0.8.2.1
  • Storm-0.9.5
  • Zookeeper-3.4.6
  • java 1.7 (後因在mac上打包的jar由1.8編譯沒法兒運行,改為java 1.8)
  • 其餘環境暫略
二、運行啟動
  1. 啟動zookeeper

    確認配置正確,配置相關可自行搜尋。

    [[email protected] zookeeper-3.4.6]#pwd/data0/xxx/zookeeper-3.4.6[[email protected] zookeeper-3.4.6]#bin/zkServer.sh start

    這裡路徑在zookeeper根目錄啟動,主要是這樣運行會自動在目前的目錄產生一個記錄檔。也就是說在哪個目錄啟動,記錄檔就在哪兒。這是為了將記錄檔放在該目錄的一種做法。

  2. 啟動kafka
    /data0/xxx/kafka_2.11-0.8.2.1/bin/kafka-server-start.sh /data0/xxx/kafka_2.11-0.8.2.1/config/server-0.properties > /data0/xxx/kafka_2.11-0.8.2.1/logs/server-0.log 2>&1 &/data0/xxx/kafka_2.11-0.8.2.1/bin/kafka-server-start.sh /data0/xxx/kafka_2.11-0.8.2.1/config/server-1.properties > /data0/xxx/kafka_2.11-0.8.2.1/logs/server-1.log 2>&1 &/data0/xxx/kafka_2.11-0.8.2.1/bin/kafka-server-start.sh /data0/xxx/kafka_2.11-0.8.2.1/config/server-2.properties > /data0/xxx/kafka_2.11-0.8.2.1/logs/server-2.log 2>&1 &

    這裡我在單機上起了3個kafka進程,作為單機叢集。
    配置0樣本:

    broker.id=0port=9092host.name=172.16.0.100num.network.threads=3num.io.threads=8socket.send.buffer.bytes=102400socket.receive.buffer.bytes=102400socket.request.max.bytes=104857600log.dirs=/data0/xxx/kafka_2.11-0.8.2.1/log_0num.partitions=1num.recovery.threads.per.data.dir=1log.retention.hours=168log.segment.bytes=1073741824log.retention.check.interval.ms=300000log.cleaner.enable=falsezookeeper.connect=localhost:2181zookeeper.connection.timeout.ms=6000
    server-0.properties
  3. 啟動storm
    /data0/xxx/storm-0.9.5/bin/storm nimbus > /data0/xxx/storm-0.9.5/log/nimbus.log 2>&1 &/data0/xxx/storm-0.9.5/bin/storm supervisor > /data0/xxx/storm-0.9.5/log/supervisor.log 2>&1 &/data0/xxx/storm-0.9.5/bin/storm ui > /data0/xxx/storm-0.9.5/log/ui.log 2>&1 &/data0/xxx/storm-0.9.5/bin/storm logviewer > /data0/xxx/storm-0.9.5/log/logviewer.log 2>&1 &

    依次啟動nimbus、supervisor、ui、logviewer
    storm設定檔樣本:

    storm.zookeeper.servers:    - "172.16.0.100"nimbus.host: "172.16.0.100"storm.local.dir: "/data0/xxx/storm-0.9.5/workdir"storm.messaging.netty.max_retries: 30storm.messaging.netty.min_wait_ms: 100storm.messaging.netty.max_wait_ms: 1500supervisor.slots.ports:  - 6700  - 6701  - 6702  - 6703supervisor.worker.start.timeout.secs: 60
    storm.yaml
三、初始化設定

    在kafka中建立topic,配置資料來源匯入kafka等等略。另外還有mongodb的初始化設定,建索引等。

四、storm程式
  • 環境:mac air、Eclipse IDE for Java Developers(這是我用的版本,需要maven)
  • 程式碼範例
  • 提交運行
    /path/bin/storm jar ds.nginx-0.0.1-SNAPSHOT-jar-with-dependencies.jar cms.ds.nginx.LogTopology ds_nginx_topology remote

【JAVA版】Storm程式整合Kafka、Mongodb樣本及部署

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.