
# 配置Plugin
DIS Flume Plugin分为Source与Sink插件，安装包中的dis-flume-plugin.conf.template文件列出了配置方法，本节介绍各种插件的配置项具体含义。
![](https://support.huaweicloud.com/usermanual-dis/public_sys-resources/note_3.0-zh-cn.png)
dis-flume-plugin.conf.template只是一个dis插件的配置样例，并不是实际运行Flume时会读取的配置文件。Flume自身提供了样例配置文件，路径为{FLUME_HOME}/conf/flume-conf.properties.template，其中{FLUME_HOME}是Flume的安装路径，用户可以基于此配置文件修改。
在配置项中，需要配置用户的SK，这属于敏感信息，如需加密，可以按如下步骤：
1. 进入dis-flume-plugin/目录 
   cd /dis-flume-plugin
   
   
2. 执行加密脚本，输入密码后回车 
   bash dis-encrypt.sh
   
   
3. 控制台打印的"Encrypt result:"后面的字符串即为加密后的结果。通过这种方式分别加密MySQL密码和用户SK，并将密文配置到配置文件中即可。
#### 配置DIS Source
 表1DIS Source配置项说明 
| 配置项                                            | 是否必填 | 说明                                                                                                                                                                | 默认值                                          |
|:---|:---|:---|:---|
| channels                                       | 是    | Flume channel的名称。                                                                                                                                                 | 请根据实际情况配置                                    |
| type                                           | 是    | Source的类型。                                                                                                                                                        | com.cloud.dis.adapter.flume.source.DISSource |
| streams                                        | 是    | 指定在DIS服务上创建的通道名称。                                                                                                                                                 | 与DIS控制台"购买接入通道"时配置的"通道名称"取值一致。               |
| ak                                             | 是    | 用户的Access Key。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。  | 请根据实际情况配置                                    |
| sk                                             | 是    | 用户的Secret Key。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。 | 请根据实际情况配置                                    |
| region                                         | 是    | 将数据上传到指定Region的DIS服务。                                                                                                                                             | 请根据实际情况配置                                    |
| projectId                                      | 是    | 用户所属区域的项目ID。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。   | 请根据实际情况配置                                    |
| endpoint  | 是    | DIS对应Region的数据接口地址。                                                                                                                                               | 请根据实际情况配置                                    |
| group.id                                       | 是    | DIS App名称，用于标识一个消费组，由英文字符、数字、-、_组成。                                                                                                                               | 请根据实际情况配置                                    |
   
#### 配置DIS Sink
 表2DIS Sink配置项说明 
| 配置项                      | 是否必填 | 说明                                                                                                                                                                                                                                                                                                       | 默认值                                      |
|:---|:---|:---|:---|
| channel                  | 是    | Flume channel的名称。                                                                                                                                                                                                                                                                                        | 请根据实际情况配置                                |
| type                     | 是    | Sink的类型。                                                                                                                                                                                                                                                                                                 | com.cloud.dis.adapter.flume.sink.DISSink |
| streamName               | 是    | 指定在DIS服务上创建的通道名称。                                                                                                                                                                                                                                                                                        | 与DIS控制台"购买接入通道"时配置的"通道名称"取值一致。           |
| ak                       | 是    | 用户的Access Key。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。                                                                                                                                         | 请根据实际情况配置                                |
| sk                       | 是    | 用户的Secret Key。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。                                                                                                                                          | 请根据实际情况配置                                |
| region                   | 是    | 将数据上传到指定Region的DIS服务。                                                                                                                                                                                                                                                                                    | cn-north-1                               |
| projectId                | 是    | 用户所属区域的项目ID。 获取方式请参见[检查认证信息](https://support.huaweicloud.com/usermanual-dis/dis_01_0030.html#dis_01_0030__section65401174173650)。                                                                                                                                            | 请根据实际情况配置                                |
| endpoint                 | 是    | DIS对应Region的数据接口地址。                                                                                                                                                                                                                                                                                      | https://dis.cn-north-1.myhuaweicloud.com |
| partitionNumber          | 否    | 通道的分区数量。 用于计算batchSize的大小。                                                                                                                                                                                                                                                | 1                                        |
| batchSize                | 否    | 一个Flume事务内批量处理的数据集大小。                                                                                                                                                                                                                                                                                    | （"partitionNumber"配置的值）\*250             |
| sendingThreadSize        | 否    | 发送线程数。默认单线程发送。 说明： 使用多线程会出现如下情况： - 发送不保证顺序。  - 当程序从异常停止恢复时重传部分数据。                  | 1                                        |
| sendingRecordSize        | 否    | 单次调用DIS数据发送接口时的数据集大小。 说明： "batchSize"表示一个事务的批量值(如1000)，而"sendingRecordSize"表示一个Rest请求的批量值(如250表示会发起四次请求)。当"batchSize"的数据全部发送成功之后，才会完成Flume的事务，否则事务不提交，重启时导致数据重传。当"sendingThreadSize"配置为"1"时，表示"sendingRecordSize"与"batchSize"配置相同值，避免数据重新上传。 | 250                                      |
| retrySize                | 否    | Sink程序调用DIS接口异常时尝试重新调用的次数。 建议使用默认值2147483647，表示会无限重试。 重试时会使用指数退避算法，并等待一段时间，以减轻异常时服务器压力。                                                                                                                                                       | 2147483647                               |
| resultLogLevel           | 否    | 每次调用DIS接口后输出最新sequenceNumber到日志的级别。 有效值与级别由低到高为 OFF \< DEBUG \< INFO \< WARN \< ERROR。 OFF：不输出日志。 如果Flume log4j配置的日志级别高于resultLogLevel配置的的值，则日志也不会输出。                                                           | OFF                                      |
| maxBufferAgeMillis       | 否    | 最长上传等待时间。单位：毫秒 - 记录队列满则立即上传。  - 记录队列未满，等待此配   置项配置的时间后上传。                                                    | 5000                                     |
| connectionTimeOutSeconds | 否    | 连接DIS接口超时时间。 单位：秒。                                                                                                                                                                                                                                                          | 30                                       |
| socketTimeOutSeconds     | 否    | 接口响应超时时间。 单位：秒。                                                                                                                                                                                                                                                            | 60                                       |
| dataEncryptEnabled       | 否    | 数据是否使用AES加密。 - 是：true。  - 否：false。                                                                                 | false                                    |
| dataPassword             | 否    | 数据加密或解密时使用的密码。 当"dataEncryptEnabled"配置项配置为"false"时无需配置"dataPassword"。                                                                                                                                                                                                     | 请根据实际情况配置                                |
| bodySerializeType        | 否    | DIS数据包上传格式(非原始数据格式)。 - json：DIS数据包封装为json格式，满足普通使用。  - protobuf：DIS数据包封装为二进制格式，可以减少体积约1/3，在数据量较大的情况下推荐使用此格式。   | json                                     |
   
