elsticsearch部署
elsticsearch安装包下载
wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.3.4/elasticsearch-2.3.4.tar.gz
解压elasticsearch-2.3.4.tar.gz
tar –zxvf elsticsearch-2.3.4.tar.gz
配置elsticsearch配置文件
vi config/elasticsearch.yml
#集群的名称,同一个集群该值必须设置成相同的
cluster.name: myel
#该节点的名字
node.name: node13
#该节点所属的机架
node.rack: r1
#设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,
#用逗号隔开,例:path.data:/path/to/data1,/path/to/data2
path.data: /var/elasticsearch/data
#设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.logs: /var/elasticsearch/logs
#设置为true来锁住内存。因为当jvm开始swapping时es的效率会降低,所以要保证它不swap,
#可以把ES_MIN_MEM和ES_MAX_MEM两个环境变量设置成同一个值,并且保证机器有足够的内存
#分配给es。同时也要允许elasticsearch的进程可以锁住内存,linux下可以通过
#`ulimit-l unlimited`命令。
bootstrap.mlockall: true
#设置绑定的ip地址,可以是ipv4或ipv6的
network.host: 192.168.3.13
#设置对外服务的http端口,默认为9200。
http.port: 9200
#设置集群中的Master节点的初始列表,可以通过这些节点来自动发现其他新加入集群的节点
#如discovery.zen.ping.unicast.hosts: #["10.0.0.209:9300","10.0.0.206:9300","10.0.0.208:9300"]
discovery.zen.ping.unicast.hosts: ["192.168.3.12:9300"]
#设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点。
#(total number of nodes / 2 + 1):默认为1,对于大的集群来说,可以设置大一点的值(2-4)
#discovery.zen.minimum_master_nodes: 3
安装head插件
bin/plugin install mobz/elasticsearch-head
设置elasticsearch启动用户
useradd elsearch
配置elasticsearch logs与data文件目录,与插件存放目录plugins和配置目录scripts
mkdir –p /var/elasticsearch/data
mkdir –p /var/elasticsearch/logs
mkdir –p /usr/local/elasticsearch-2.3.4/plugins
mkdir –p /usr/local/elasticsearch-2.3.4/config/scripts
配置elsearch用户目录权限
chomn –R elsearch:root /var/elasticsearch/.
安装插件:mobz/elasticsearch-head
bin/plugin install mobz/elasticsearch-head
启动elasticsearch
./bin/elasticsearch
测试elasticsearch目前使用head工具代替kibana
访问http://localhost:9200/_plugin/head
logstash安装
logstash安装包下载
wget https://download.elastic.co/logstash/logstash/logstash-2.4.0.tar.gz
解压logstash-2.4.0.tar.gz
tar –zxvf logstash-2.4.0.tar.gz
安装logstash-input-kafka插件
gem install logstash-input-kafka
logtash启动
./bin/logstash –f config/logstash.config
logstash启动配置文件:
vi config/logstash.conf
input{
kafka {
zk_connect =>"localhost:2080,localhost:2081,localhost:2082"
group_id =>"logstash"
topic_id =>"logstash"
reset_beginning => false
consumer_threads => 5
decorate_events => true
}
}
output{
elasticsearch {
hosts =>["192.168.3.12:19000","192.168.3.12:19001"]
}
}
环境配置
安装gem
yuminstall -y ruby
yuminstall -y ruby-devel ruby-docs ruby-ri ruby-rdoc
yuminstall -y rubygems
gem换源 原先的gem源:https://rubygems.org/
gemsources –l//查看当前gem源
移除https://rubygems.org源
gemsources --remove https://rubygems.org/
增加http://ruby.taobao.org/源
gemsources -a https://ruby.taobao.org/
更新缓存
gemsources -u
.gemspec 编译为 .gem安装文件
gembuild ~.gemspec
.gem 文件安装 本地安装
geminstall -l ~.gem
.gem 插件安装 verbose 为查看安装详情
geminstall -verbose ~
ruby-build 安装
gitclone https://github.com/rbenv/ruby-build.git
rbenv 安装
gitclone https://github.com/rbenv/rbenv.git ~/.rbenv
cd~/.rbenv && src/configure && make -C src
echo'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
生效 ~/.bash_profile文件
source~/.bash_profile
jruby-9.1.2.0安装
rbenvinstall jruby-9.1.2.0
配置jruby-9.1.2.0环境变量
elasticsearch堆错误及内存过小
配置/etc/security/limits.conf添加
elsearchsoft nofile 65536
elsearchhard nofile 65536
elsearchsoft memlock unlimited
elsearchhard memlock unlimited
添加 vm.max_map_count=262144到/etc/sysctl.conf 文件
配置log4j日志写入kafka操作:注意当前kafka版本为2.10
log4j.xml配置文件:
value="%d [%-5p] [%t] -[%l] %m%n" />
依赖包导入:
到kafka安装目录 libs文件夹下面获取依赖包
log4j写入kafka测试小程序:
http://download.csdn.net/detail/u014312858/9680446