Menu

Druid Historical Install

module.exports = header: 'Druid Historical Install', handler: (options) ->

IPTables

ServicePortProtoParameter
Druid Historical8083tcp/http
  @tools.iptables
    header: 'IPTables'
    rules: [
      { chain: 'INPUT', jump: 'ACCEPT', dport: options.runtime['druid.port'], protocol: 'tcp', state: 'NEW', comment: "Druid Historical" }
    ]
    if: options.iptables

Configuration

  @service.init
    header: 'rc.d'
    target: "/etc/init.d/druid-historical"
    source: "#{__dirname}/../resources/druid-historical.j2"
    context: options: options
    local: true
    backup: true
    mode: 0o0755
  @file.properties
    header: 'Runtime'
    target: "/opt/druid-#{options.version}/conf/druid/historical/runtime.properties"
    content: options.runtime
    backup: true
  @file
    header: 'JVM'
    target: "#{options.dir}/conf/druid/historical/jvm.config"
    write: [
      match: /^-Xms.*$/m
      replace: "-Xms#{options.jvm.xms}"
    ,
      match: /^-Xmx.*$/m
      replace: "-Xmx#{options.jvm.xmx}"
    ,
      match: /^-XX:MaxDirectMemorySize=.*$/m
      replace: "-XX:MaxDirectMemorySize=#{options.jvm.max_direct_memory_size}"
    ,
      match: /^-Duser.timezone=.*$/m
      replace: "-Duser.timezone=#{options.timezone}"
    ]
  @system.mkdir (
    target: "#{path.resolve options.dir, location.path}"
    uid: "#{options.user.name}"
    gid: "#{options.group.name}"
  ) for location in JSON.parse options.runtime['druid.segmentCache.locations']

Dependencies

path = require 'path'