本文介绍通过Logstash的配置文件管理功能,配置管道,完成数据传输。通过配置文件管理可实现多管道并行运行,目前最多支持20个。

创建管道

  1. 进入Logstash实例管理页面
  2. 单击左侧导航栏的管道管理
  3. 管道管理页面,查看管道管理方式是否为配置文件管理(默认)。
    管道管理方式
    • 是,继续执行下一步。
    • 否,单击管道管理方式右侧的修改,将管道管理方式切换为配置文件管理,再执行下一步。
      警告 管道管理方式更改,会导致原先配置的所有管道失效,正在执行的数据任务将受到影响。请先删除原有管理方式下的所有管道任务,再进行切换。
  4. 管道列表中,单击创建管道
  5. 创建管道任务页面,进行Config配置。

    Config配置详情请参见Logstash配置文件说明

    注意
    • Input插件需要监听Logstash进程所在节点的端口,请使用8000~9000范围内的端口。
    • 如果您需要在input中定义插件、驱动或其他文件,可单击查看扩展文件路径 > 前往上传,在扩展文件管理中上传对应文件。
    • 由于Logstash创建在VPC网络下,阿里云系产品建议使用同一VPC下的实例。如果需要使用外网访问Logstash,需要配置网络与安全,详情请参见NAT公网数据传输配置
  6. 单击下一步,配置管道参数。
    管道参数配置
    参数 说明
    管道ID 必选,自定义输入。
    管道工作线程 并行执行管道的Filter和Output的工作线程数量。当事件出现积压或CPU未饱和时,请考虑增大线程数,更好地使用CPU处理能力。默认值:实例的CPU核数。
    管道批大小 单个工作线程在尝试执行Filter和Output前,可以从Input收集的最大事件数目。较大的批大小可能会带来较大的内存开销。您可以设置LS_HEAP_SIZE变量,来增大JVM堆大小,从而有效使用改值。默认值:125。
    管道批延迟 创建管道事件批时,将过小的批分派给管道工作线程之前,要等候每个事件的时长,单位为毫秒。默认值:50ms。
    队列类型 用于事件缓冲的内部排队模型。可选值:memory,为基于内存的传统队列;persisted,基于磁盘的ACKed队列(持久队列)。默认值:memory
    队列最大字节数 请确保该值小于您的磁盘总容量。默认值:1024MB。
    队列检查点写入数 启用持久性队列时,在强制执行检查点之前已写入事件的最大数目。设置为0,表示无限制。默认值:1024。
    警告 配置完成后,需要进行保存和部署才能生效。保存和部署操作会触发实例变更,请在不影响业务的前提下,继续执行以下步骤。
  7. 单击保存/保存并部署
    • 保存:只将管道信息保存在Logstash里,不会触发配置,但是会触发实例变更。保存后,系统会返回管道列表页面,可单击管道列表操作栏下的立即部署,触发配置。
    • 保存部署:保存并且部署后,才会真正触发配置,并且也会触发实例变更。
    保存并部署成功后,系统提示创建成功,并返回管道列表页面。等待实例变更完成后,即可完成管道任务的创建。此时管道的状态显示为运行中

修改管道

警告 修改管道后,在保存时,会触发实例变更,请在不影响业务的情况下,执行操作。
  1. 管道列表中,单击右侧操作栏下的修改管道
  2. 修改管道任务页面,修改管道的Config配置管道参数配置管道ID不支持修改)。
  3. 单击保存/保存部署,等待实例变更完成后,即可完成管道修改。

复制管道

警告 复制管道后,在保存时会触发实例变更,请在不影响业务的情况下,执行操作。
  1. 管道列表中,单击右侧操作栏下的复制管道
  2. 复制管道任务 > 管道参数配置页面,输入管道ID,其他配置保持不变。
  3. 单击保存/保存部署,等待实例变更完成后,即可完成管道复制。

删除管道

警告
  • 管道删除后无法恢复,正在运行的管道任务会被中断,请确认后操作。
  • 管道删除操作,会触发实例变更,请在不影响业务的情况下,执行操作。
  1. 管道列表中,单击右侧操作栏下的更多 > 删除管道
  2. 删除管道对话框中,认真查看风险提示,确认后再执行下一步。
  3. 单击确定,等待实例变更完成后,即可完成管道删除。

常见问题

Q:为什么通过Logstash管道配置传输数据前,需要开启阿里云Elasticsearch集群的自动创建索引配置?

A:阿里云Elasticsearch为了保证用户操作数据的安全性,默认把自动创建索引配置设置为不允许。Logstash在传输数据的时候,使用的是提交数据的方式创建索引,而不是使用Create index API的方式。所以在使用Logstash上传数据之前,需要首先把集群的自动创建索引设置为允许,详情请参见YML文件配置

允许自动创建索引