Kafka Connect for Splunk

## Kafka Connect

Kafka Connectとは、Apache Kafka に含まれるフレームワークであり、Kafka と他システムとのデータ連携に使うことができます。Kafka にデータをいれたり、Kafka からデータを出力したりスケーラブルなアーキテクチャで複数サーバでクラスタを組むことができます。Kafka と Kafka Connect が接続する部分を Connector と呼び、Producer 側の Connector は SourceConsumer 側の Connector は Sinkと呼びます。Splunk Connect for Kafkaとは、Kafka Connectのプラグインを拡張して、Splunkに対して、データを送信できるようにしたものです。


## Splunk Connect for Kafka

Splunk Connect for Kafkaは、sink Connectorであり、このアプリケーションを使用すると、KafkaのTopic情報を***Splunk HTTP Event Collector***にて購読することができます。Splunk PlatformにEventとしてIndexさえすれば、他のSplunk内に含まれるデータ含めた複合的な分析を行うことができます。
Splunk Connect for Kafkaは、Splunk Baseからダウンロードすることができます。



| Item      |       Information |
|:-----------------|------------------|
Version 	|1.1.1|
Vendor Products |	Kafka Connect|
Visible in Splunk Web| 	No. This product does not contain any views. |


![Kafka_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482612/b72f0860-6213-5b1d-6527-ed44f203ffea.png)



## Plan your deployment

以下の２つのデプロイメントオプションが選択です。Splunk Connect for Kafkaは、コンテナ、仮想マシン、物理マシンで動作するため、動作環境の選択肢は多いですが、既存のKafak Connect Clusterと同期させることはお勧めしません。

- Splunk Connect for Kafka in a dedicated Kafka Connect Cluster (best practice).
- Splunk Connect for Kafka in an existing Kafka Connect Cluster.

## System requirements

Splunk Connect for Kafkaのシステム要件は下記のとおりである。HTTP Event Collector tokenの設定を忘れないように留意する。

- A Kafka Connect environment running Kafka version 1.0.0 or later.
- Java 8 or later.
- Splunk platform environment of version 6.5 or later.
- Configured and valid HTTP Event Collector (HEC) tokens.


## Architecture requirements

Splunk Connect for Kafkaは、２つのタイプのシステムアーキテクチャをサポートしています。 一つ目は、Splunkプラットフォームに直接データを送信する方式です。2つ目は、Heavy Forwarderを介する方式です。それぞれのデータフローの流れを示すと以下のようになります。

1. A Kafka Connect Cluster-> Splunk Indexer Cluster (HEC)
2. A Kafka Connect Cluster -> Heavy Forwarders (HEC) -> Splunk Indexer Cluster


## Sizing guidelines








## Splunk側の事前設定


Splunk HEC でデータを受信するように設定する必要があります。Splunk Web にアクセスし、[Settings] メニューから [Data inputs] を選択して、[HTTP Event Collector] を選択します。[Global Settings] を選択して、[All tokens] が [enabled] になっていることを確認してから、[保存] を選択します。

<img width="800" alt="スクリーンショット 2020-01-14 16.19.28.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482612/6836c41d-a097-e711-60f6-a2f7363de7b6.png">


次に、[New Token] を選択して、新しい HEC エンドポイントとトークンを作成します。
事前に決めた ACK ありか ACK なしかに応じて、[Enable indexer acknowledgment] を設定します。ACK ありの場合はこのチェックボックスを選択し、ACK なしの場合は選択を解除します。

![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482612/2ac659b4-beae-2e29-bbc2-fe43acf3a6fc.png)


アクセストークンが発行されるので、メモします。
Example Access Token)　60220e79-a5df-491a-9403-8bc825fae3a3


## Install to Kafka Connect for Splunk from Splunk Base


[Splunk Base](https://splunkbase.splunk.com/app/3862/)から、Kafka Connectをインストールするためのファイルをダウンロードする。次にダウンロードしたファイルをアップロードする。

![222.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/482612/59807e14-b64f-6dda-69d5-5e8c3fc33554.png)



## XXXXXXXXXXX

Start your Kafka Cluster and confirm it is running.

```
curl http://localhost:8083
{"version":"5.3.2-ccs","commit":"7d63e5707dee50f3","kafka_cluster_id":"vr_uG6_ZQk6HxWiwQeqOVg"}
```