IBM Event Streams to Netcool/OMNIbus連携


Red Hat Open Shift on IBM Cloudの性能監視にsysdigをりようすることとなったので、既存監視システムのNetcoolに連携する必要があったので手順をまとめみる

Event Streams準備

IBM Event Streams for IBM Cloudを開始する
(フリープランでもNetcoolへの連携は可能)

トピック

「管理」画面より新規のトピックを作成しておく

接続情報

「サービス資格情報」画面よりMessageBus Probe接続用に資格情報を作成しておく

作成した鍵の詳細から以下の情報を確認しておく
* api_key
* kafka_brokers_sasl
* user
* password

MessageBus Probe設定概要

導入手順はNetcool/OMNIbusの一般的なProbeのインストール手順と同様

構成が必要なのは以下のファイル

  • $OMNIHOME/probes/linux2x86/message_bus_kafka.props
  • $OMNIHOME/java/conf/kafkaClient.properties
  • $OMNIHOME/java/conf/kafkaConnectionProperties.json
  • $OMNIHOME/java/conf/kafkaTransport.properties

$OMNIHOME/probes/linux2x86/message_bus_kafka.props
Manager : 'Kafka'
MessageLog : '$OMNIHOME/log/message_bus_kafka.log'
PropsFile : '$OMNIHOME/probes/linux2x86/message_bus.props'
RulesFile : '$OMNIHOME/probes/linux2x86/message_bus_kafka.rules'
TransportType : 'KAFKA'
TransportFile : '$OMNIHOME/java/conf/kafkaTransport.properties'
TransformerFile : '$OMNIHOME/probes/linux2x86/message_bus_parser_config.json'
MessagePayload : 'JSON'

Event Streamsで作成した資格情報等をここで設定する 

$OMNIHOME/java/conf/kafkaClient.properties
key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
value.deserializer=org.apache.kafka.common.serialization.StringDeserializer

key.serializer=org.apache.kafka.common.serialization.StringSerializer
value.serializer=org.apache.kafka.common.serialization.StringSerializer

acks=all
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
ssl.protocol=TLSv1.2
ssl.enabled.protocols=TLSv1.2
ssl.keystore.location=/opt/IBM/tivoli/netcool/platform/linux2x86/jre_1.8.0/jre/lib/security/cacerts
ssl.keystore.password=changeit
ssl.keystore.type=JKS
group.id=<Consumer-group-Name>

sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required serviceName="kafka" username="token" password="*************************";

Event Streamsへの接続情報を設定する

$OMNIHOME/java/conf/kafkaConnectionProperties.json

{
  "zookeeper_client" :
    {
      "target" : "",
      "properties" : "",
      "java_sys_props" : "",
      "topic_watch": false,
      "broker_watch": false
    },
  "brokers" :"<KAFKA_BROKERS_SASL>",
  "topics": "<Event Streams TOPIC NAME>",
  "kafka_client" :
    {
      "properties" : "$OMNIHOME/java/conf/kafkaClient.properties",
      "java_sys_props" : "$OMNIHOME/java/conf/kafkaClient_javaSys.properties"
    }
}
$OMNIHOME/java/conf/kafkaTransport.properties

KafkaClientMode=CONSUMER
ConnectionPropertiesFile=$OMNIHOME/java/conf/kafkaConnectionProperties.json

古いバージョンのMessageBus Probe(11.0で確認)では資格情報の互換性の問題によりエラーとなるため、最新バージョン(13.0.x)の利用を推奨