中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

wso2~自定義kafka-event-publisher

自定義event/publishers的步驟

介紹

  • event/publishers功能位于carbon平臺的event菜單,選擇publishers菜單項即可打開發布者配置列表,你可以添加自定義的發布者,它們接收apim的相關事件
  • 核心組件: org.wso2.carbon.event.output.adaptor.kafka
  • 功能: 將APIM的事件數據發送到Kafka中
  • 選擇的通知輸入流: org.wso2.apimgt.notification.stream
  • 輸出的事件適配類型: kafka
  • 消息格式: json
  • 參考:

組件的依賴包

在carbon中(zhong)的(de)event/publishers中(zhong),添加(jia)一(yi)個kafka的(de)發(fa)布者,然后(hou)配置相關kafka配置即(ji)可,它(ta)(ta)依賴下面一(yi)些jar包(bao),需要(yao)將它(ta)(ta)們添加(jia)到/lib目(mu)錄

  • jopt-simple-3.2.jar
  • kafka_2.10-0.8.1.jar
  • kafka-clients-0.8.2.1.jar
  • log4j-1.2.17.jar
  • metrics-annotation-2.2.0.jar
  • metrics-core-2.2.0.jar
  • org.osgi.core-6.0.0.jar
  • osgi.cmpn-6.0.0.jar
  • pax-logging-api-1.11.10.jar
  • scala-library-2.10.5.jar
  • snappy-java-1.1.2.1.jar
  • zkclient-0.11.jar
  • zookeeper-3.3.4.jar

helm對kafka-event-stream的支持

carbon/event下面(mian)的publishers以(yi)xml文(wen)件的形式(shi)被(bei)存儲到文(wen)件目錄(lu)/home/wso2carbon/wso2am-4.5.0/repository/deployment/server/eventpublishers下面(mian),當你自己(ji)在carbon平臺添加自定(ding)義的publisher后,由(you)于(yu)這個目錄(lu)沒有(you)掛載到磁盤,所以(yi)重啟apim之后,自定(ding)義的publisher就丟失(shi)(shi)了;知道為什么(me)會丟失(shi)(shi),我們(men)就可以(yi)對helm-charts進(jin)行優(you)化了。

流程圖

  1. 添加toml原內容文件(all-in-one/confs/kafka_notice.toml)
<?xml version="1.0" encoding="UTF-8"?>
<eventPublisher name="kafka_notice" processing="enable"
                statistics="disable" trace="disable" xmlns="//wso2.org/carbon/eventpublisher">
    <from streamName="org.wso2.apimgt.notification.stream" version="1.0.0"/>
    <mapping customMapping="disable" type="json"/>
    <to eventAdapterType="kafka">
        <property name="topic">{{ .Values.kafka.topic }}</property>
        <property name="meta.broker.list">{{ .Values.kafka.host }}</property>
    </to>
</eventPublisher>
  1. 添加configmap(all-in-one/templates/am/wso2am-kafka-conf.yaml)
{{- if .Values.kafka.enabled}}
apiVersion: v1
kind: ConfigMap
metadata:
  name: kafka-notice-conf
  namespace : {{ .Release.Namespace }}
data:
  kafka_notice.xml: {{ tpl (.Files.Get "confs/kafka_notice.toml") . | quote }}
{{- end }}
  1. 修改deployment(all-in-one/templates/am/wso2am-deployment.yaml)
{{- if .Values.kafka.enabled}}
      volumeMounts:
        - name: kafka-notice-conf
          mountPath: /home/wso2carbon/wso2am-4.5.0/repository/deployment/server/eventpublishers/kafka_notice.xml
          subPath: kafka_notice.xml
{{- end }}
    volumes:
      - name: kafka-notice-conf
        configMap:
          name: kafka-notice-conf
  1. 在values.yaml中添加kafka相關配置
kafka:
  enabled: true
  topic: apim-topic
  host: 192.168.1.17:9092

經過上面的(de)(de)調整,你的(de)(de)helm-chart已經支(zhi)持了(le)kafka的(de)(de)event/publisher的(de)(de)配置了(le),下(xia)次重(zhong)啟apim,你的(de)(de)kafka-event/publisher就不(bu)會丟失(shi)了(le)

posted @ 2025-05-30 09:05  張占嶺  閱讀(41)  評論(0)    收藏  舉報