Apache-flume-configuration
Apache Flume-構成
Flumeをインストールしたら、* key-valueペア*を持つJavaプロパティファイルである構成ファイルを使用して構成する必要があります。 ファイルのキーに値を渡す必要があります。
Flume構成ファイルでは、次のことが必要です-
- 現在のエージェントのコンポーネントに名前を付けます。
- ソースを説明/構成します。
- シンクを説明/構成します。
- チャネルを説明/構成します。
- ソースとシンクをチャネルにバインドします。
通常、Flumeには複数のエージェントを配置できます。 一意の名前を使用して、各エージェントを区別できます。 そして、この名前を使用して、各エージェントを構成する必要があります。
コンポーネントの命名
まず最初に、以下に示すように、エージェントのソース、シンク、チャネルなどのコンポーネントに名前を付けてリストする必要があります。
Flumeは、さまざまなソース、シンク、およびチャネルをサポートしています。 それらは以下の表にリストされています。
Sources | Channels | Sinks |
---|---|---|
|
|
|
どれでも使用できます。 たとえば、Twitterソースを使用してメモリチャネルを介してTwitterデータをHDFSシンクに転送し、エージェント名idが TwitterAgent の場合、
エージェントのコンポーネントを一覧表示した後、プロパティに値を指定して、ソース、シンク、およびチャネルを説明する必要があります。
ソースの説明
各ソースには、プロパティの個別のリストがあります。 「type」という名前のプロパティはすべてのソースに共通であり、使用しているソースのタイプを指定するために使用されます。
以下に示すように、プロパティ「type」とともに、特定のソースのすべての*必須*プロパティの値を提供して設定する必要があります。
たとえば、* twitterソース*を検討する場合、設定する値を提供する必要があるプロパティは次のとおりです。
シンクの説明
ソースと同様に、各シンクにはプロパティの個別のリストがあります。 「type」という名前のプロパティはすべてのシンクに共通であり、使用しているシンクのタイプを指定するために使用されます。 以下に示すように、プロパティ "type"と共に、特定のシンクのすべての*必須*プロパティに値を提供して構成する必要があります。
たとえば、* HDFSシンク*を検討する場合、設定する値を提供する必要があるプロパティは次のとおりです。
チャンネルの説明
Flumeは、ソースとシンク間でデータを転送するためのさまざまなチャネルを提供します。 したがって、ソースおよびチャネルとともに、エージェントで使用されるチャネルを記述する必要があります。
各チャネルを説明するには、以下に示すように、必要なプロパティを設定する必要があります。
たとえば、*メモリチャネル*を考慮する場合、設定する値を提供する必要があるプロパティは次のとおりです。
ソースとシンクをチャネルにバインドする
チャネルはソースとシンクを接続するため、以下に示すように、両方をチャネルにバインドする必要があります。
次の例は、ソースとシンクをチャネルにバインドする方法を示しています。 ここでは、* twitterソース、メモリチャネル*、および* HDFSシンク*を検討します。
Flumeエージェントの開始
構成後、Flumeエージェントを開始する必要があります。 それは次のように行われます-
ここで-
- agent -Flumeエージェントを開始するコマンド
- *-conf、-c <conf> *-confディレクトリの構成ファイルを使用
- -f <file> -欠落している場合、構成ファイルのパスを指定します
- *-name、-n <name> *-twitterエージェントの名前
- -D property = value -Javaシステムプロパティ値を設定します。