
# 安装MRS 3.x及之后版本Flume客户端
#### 操作场景
使用Flume搜集日志时，需要在日志主机上安装Flume客户端。用户可以创建一个新的ECS并安装Flume客户端。
本章节适用于MRS 3.x及之后版本。
#### 前提条件
- 已创建包含Flume组件的集群。
- 日志主机需要与MRS集群在相同的VPC和子网。
- 已获取日志主机的登录方式。
- 安装目录可以不存在，会自动创建。但如果存在，则必须为空。目录路径不能包含空格。
 
#### 操作步骤
1. 获取软件包。 
   登录FusionInsight Manager，选择"集群 \> *待操作集群的名称* \> 服务 \> Flume"进入Flume服务界面，在右上角选择"更多 \> 下载客户端"，选择"选择客户端类型"为"完整客户端"，下载Flume服务客户端文件。
   客户端文件名称为"FusionInsight_Cluster_*\<集群ID\>*_Flume_Client.tar"，本章节以"FusionInsight_Cluster_1_Flume_Client.tar"为例进行描述。
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0000001533007485.png)
   
   
2. 上传软件包。 
   以**user**用户将软件包上传到将要安装Flume服务客户端的节点目录上，例如"/opt/client"。
   ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
   user用户为安装和运行Flume客户端的用户。
   
   
3. 解压软件包。 
   以**user**用户登录将要安装Flume服务客户端的节点。进入安装包所在目录，例如"/opt/client"，执行如下命令解压安装包到当前目录。
   **cd** **/opt/client**
   **tar -xvf FusionInsight** **_Cluster_1_Flume_Client.tar**
   
   
4. 校验软件包。 
   执行**sha256sum -c**命令校验解压得到的文件，返回"OK"表示校验通过。例如：
   **sha256sum -c FusionInsight** **_Cluster_1_Flume_ClientConfig.tar.sha256**
   ```
   FusionInsight_Cluster_1_Flume_ClientConfig.tar: OK
   ```
   
   
5. 解压文件。 
   **tar -xvf FusionInsight** **_Cluster_1_Flume_ClientConfig.tar**
   
   
6. 若在集群外节点安装Flume客户端，需执行如下步骤配置安装环境。在集群内节点安装可不执行该步骤。 
   1. 执行以下命令，安装客户端运行环境到新的目录，例如"/opt/Flumeenv"。安装时自动生成目录。 **sh /opt/client/FusionInsight_Cluster_1_Flume_ClientConfig/install.sh /opt/Flumeenv**
      查看安装输出信息，如有以下结果表示客户端运行环境安装成功：
      ```
      Components client installation is complete.
      ```
      
   
   2. 执行以下命令，配置环境变量。 **source /opt/Flumeenv/bigdata_env**
      
   
   
   
   
7. 在Flume客户端安装目录下执行以下命令，安装客户端到指定目录（绝对路径），例如安装到"/opt/FlumeClient"目录。客户端安装成功后安装结束。 
   **cd /opt/client/FusionInsight** **_Cluster_1_Flume_ClientConfig/Flume/FlumeClient**
   **./install.sh -d */*** *opt/FlumeClient* **-f** *MonitorServer* *角色的业务IP或主机名* **-c** *用户业务配置文件* *properties.properties放置路径* **-s** *cpu阈值* **-l /var/log/Bigdata -e** *FlumeServer* *的业务IP或主机名* **-n** *Flume*
   ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
   - "-d"：Flume客户端安装路径。
   
   - "-f"（可选）：两个MonitorServer角色的业务IP或主机名，中间用逗号分隔，若不设置则Flume客户端将不向MonitorServer发送告警信息，同时在FusionInsight Manager界面上看不到该客户端的相关信息。
   
   - "-c"（可选）：指定业务配置文件，该文件需要用户根据自己业务生成，具体操作可在Flume服务端中"配置工具"页面参考[Flume业务配置指南](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_1057.html)章节生成，并上传到待安装客户端节点上的任一目录下。若安装时未指定（即不配置该参数），可在安装后上传已经生成的业务配置文件properties.properties到"/opt/FlumeClient/fusioninsight-flume-1.9.0/conf"目录下。
   
   - "-s"（可选）：Cgroup阈值，阈值取值范围为1\~100\*N之间的整数，N表示机器cpu核数。默认阈值为"-1"，表示加入到Cgroup的进程不受cpu使用率限制。
   
   - "-l"（可选）：日志路径，默认值为"/var/log/Bigdata"（"user"用户需要对此目录有写权限）。首次安装客户端会生成名为flume-client的子目录，之后安装会依次生成名为"flume-client-*n*"的子目录，n代表一个序号，从1依次递增。在Flume客户端安装目录下的conf目录中，编辑ENV_VARS文件，搜索FLUME_LOG_DIR属性，可查看客户端日志路径。
   
   - "-e"（可选）：FlumeServer的业务IP地址或主机名，主要用于接收客户端上报的监控指标信息。
   
   - "-n"（可选）：Flume客户端的名称，可以通过在FusionInsight Manager上选择"集群 \> *待操作集群名称* \> 服务 \> Flume \> Flume管理"查看对应节点上客户端的名称。
   
   - 若产生以下错误提示，可执行命令**export JAVA_HOME=** *JDK* *路径* 进行处理。可使用**echo $JAVA_HOME** 查找JDK路径。
     ```
     JAVA_HOME is null in current user,please install the JDK and set the JAVA_HOME
     ```
     
   
   - 集群混搭时，安装跨平台客户端时，请进入/opt/client/FusionInsight_Cluster_1_Flume_ClientConfig/Flume/FusionInsight-Flume-1.9.0.tar.gz路径下进行Flume客户端安装。
    
   
   
 
#### Flume客户端Cgroup使用指导
- **加入C** **group**
  执行以下命令，加入Cgroup，假设Flume客户端安装路径为"/opt/FlumeClient"，Cgroup cpu阈值设置为50%：
  **cd /opt/FlumeClient/fusioninsight-flume-1.9.0/bin**
  **./flume-manage.sh cgroup join 50**
  ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
  - 该命令不仅可以加入Cgroup，同时也可以更改Cgroup cpu阈值。
  
  - Cgroup cpu阈值取值范围为1\~100\*N之间的整数，N表示机器cpu核数。
    
- **查询Cgroup状态**
  执行以下命令，查询Cgroup状态，假设Flume客户端安装路径为"/opt/FlumeClient"：
  **cd /opt/FlumeClient/fusioninsight-flume-1.9.0/bin**
  **./flume-manage.sh cgroup status**
  
- **退出Cgroup**
  执行以下命令，退出Cgroup，假设Flume客户端安装路径为"/opt/FlumeClient"：
  **cd /opt/FlumeClient/fusioninsight-flume-1.9.0/bin**
  **./flume-manage.sh cgroup exit**
  ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
  - 客户端安装完成后，会自动创建默认Cgroup。若安装客户端时未配置"-s"参数，则默认值为"-1"，表示agent进程不受cpu使用率限制。
  
  - 加入、退出Cgroup时，agent进程不受影响。若agent进程未启动，加入、退出Cgroup仍然可以成功执行，待下一次agent启动时生效。
  
  - 客户端卸载完成后，安装时期创建的Cgroup会自动删除。
    
 
