linux elasticsearch install

tar

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。


Linux下elasticsearch安装

java 安装 

wget http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz

cd /usr

mkdir java


tar -xzvf jdk-8u151-linux-x64.tar.gz -C /usr/java


/usr/java/jdk1.8.0_171

vim /etc/profile


 在文件最后加入

export JAVA_HOME=/usr/java/jdk1.8.0_171

export JRE_HOME=/usr/java/jdk1.8.0_171/jre 

export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

使配置生效: source /etc/profile

查看java版本

java -version

普通用户

cd ~

vi .bash_profile

source  .bash_profile


export JAVA_HOME=/usr/java/jdk1.8.0_171
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar


nodejs 安装

wget https://nodejs.org/dist/v8.11.3/node-v8.11.3-linux-x64.tar.xz

cd /usr

mkdir node

[admin@node21 software]$ xz -d node-v8.11.3-linux-x64.tar.xz 


[admin@node21 software]$ tar  -xvf node-v8.11.3-linux-x64.tar -C /usr/node

配置环境变量 vi  /etc/profile

export NODE_HOME=/usr/node/node-v8.11.3-linux-x64
export PATH=$NODE_HOME/bin:$PATH


source /etc/profile 环境变量生效


maven安装

# 下载maven软件并解压

wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz


tar -zxvf apache-maven-3.2.1-bin.tar.gz -C /usr/local

cd /usr/local

mv apache-maven-3.2.1 maven


# 配置环境变量

vi /etc/profile

export M2_HOME=/usr/local/maven

export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin

# 使环境变量生效

source .bash_profile  (/etc/profile)

1.下载es安装包

wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.3.3/elasticsearch-2.3.3.tar.gz


wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.4.tar.gz


2.解压

tar -zxvf elasticsearch-2.3.3.tar.gz -C /usr/local

tar -zxcf elasticsearch-2.3.3.tar.gz

mv elasticsearch-2.3.3.tar.gz es

3.修改配置文件

进入config目录下

vi elasticsearch.yml 可以修改集群名,节点,ip等等

# 进入配置文件目录
cd es/config
# 修改
vi elasticsearch.yml

# 起个集群名
 cluster.name: huiyue
# 起个节点名
 node.name: node-1

# 指定服务器IP

network.host: 47.98.118.214
# 指定服务器端口

 http.port: 9200

# 数据目录和日志目录可以用默认的,不修改
path.data: /path/to/data

path.logs: /path/to/logs

# 搭建集群的时候在使用

discovery.zen.ping.unicast.hosts: ["192.168.10.145", "192.168.10.168"]


4.启动es
进入 bin 目录
./elasticsearch 如果说 不能以 root用户 运行

进入bin目录 修改elasticsearch.in.sh  加入一句:JAVA_OPTS="$JAVA_OPTS -Des.insecure.allow.root=true"即可


./elasticsearch -Des.insecure.allow.root=true -d


5.安装 head 插件(2.2.3 版本)

进入bin目录

cd /usr/local/es/bin/

./plugin install mobz/elasticsearch-head


6 安装 kibana 4.5.0

wget https://download.elastic.co/kibana/kibana/kibana-4.5.3-linux-x64.tar.gz

tar -xzf kibana-5.1.1-linux-x86_64.tar.gz -C /usr/local

cd kibana/

对应 es6.2.4

wget https://artifacts.elastic.co/downloads/kibana/kibana-6.2.4-linux-x86_64.tar.gz

7 install ik 1.9.3(es 6.2.4)

wget https://github.com/medcl/elasticsearch-analysis-ik/archive/v1.9.3.zip

使用elasticsearch-plugin命令安装 5.x 以上可以

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v1.9.3/elasticsearch-analysis-ik-1.9.3.tar.gz


其他方式 (繁琐不建议)

ik 安装 方式 1

es2.3.3

wget https://github.com/medcl/elasticsearch-analysis-ik/archive/v1.9.3.zip


es2.3.4

wget https://github.com/medcl/elasticsearch-analysis-ik/archive/v1.9.4.zip


unzip v1.9.3.zip ( elasticsearch-analysis-ik-1.9.3.zip)

mv elasticsearch-analysis-ik-1.2.6 esik


把ik包下面的ik文件拷入es的config下面
cp -rf ik es/config/
 
maven ik的源码包

cd esik
mvn clean package
 
把打包后的文件解压拷入es的plugins下面

复制代码

# 打包后esik目录下面有个target/release目录

cd esik/target/release

unzip elasticsearch-analysis-ik-1.9.3.zip

# 在es的plugins目录下新建一个ik文件夹,注意plugins文件是当你执行./plugin安装插件时会自动生成

mkdir -p es/plugins/ik

cp -rf * es/plugins/ik

# 可以把那个解压的源文件删除

rm -rf elasticsearch-analysis-ik-1.9.3.zip

# 最后在elasticsearch.yml后面增加一句

index.analysis.analyzer.ik.type : "ik"

# 重启es后生效

./elasticsearch -d


自定义分词
如果分词不够或者达不到需求,可以自定义分词 进入/es/config/ik/custom/下面,建一个.dic结尾的文件,输入你的分词 然后后退一步修改配置文件,重启后生效

curl -XGET http://127.0.0.1:9200/_analyze?pretty -H 'Content-Type:application/json' -d'               
{
  "analyzer": "ik_smart",
  "text": "听说看这篇博客的哥们最帅、姑娘最美"


}


yum install -y unzip zip


复制代码

vi IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">  
<properties>  
    <comment>IK Analyzer 扩展配置</comment>
tom/mydict.dic;custom/sin
    <!--用户可以在这里配置自己的扩展字典 -->
    <entry key="ext_dict">cu
sgle_word_low_freq.dic;custom/你建的文件.dic</entry>     
     <!--用户可以在这里配置自己的扩展停止词字典-->
    <entry key="ext_stopwords">custom/ext_stopword.dic</entry>     
</properties>

其他方式

使用elasticsearch-plugin命令安装 5.x 以上可以

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.2.4/elasticsearch-analysis-ik-6.2.4.zip


手动安装?

git clone https://github.com/medcl/elasticsearch-analysis-ik
cd elasticsearch-analysis-ik
git checkout tags/{version}
mvn clean
mvn compile
mvn package


8 elasticsearch-jdbc 安装 

https://github.com/jprante/elasticsearch-jdbc

wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/2.3.3.0/elasticsearch-jdbc-2.3.3.0-dist.zip

unzip elasticsearch-jdbc-<version>-dist.zip


wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/2.3.4.0/elasticsearch-jdbc-2.3.4.0-dist.zip

unzip elasticsearch-jdbc-2.3.4-dist.zip


netstat -tunlp|grep 端口号

9 logstash6.2.4 安装


wget https://artifacts.elastic.co/downloads/logstash/logstash-6.2.4.tar.gz


tar -zxvf logstash-6.2.4.tar.gz -C /usr

mv logstash-6.2.4 logstash

https://github.com/logstash-plugins/logstash-input-jdbc/archive/v4.3.9.zip


{
 
  "mappings": {
    "cql_article": {
      "properties": {
        "journal_title": {
          "type": "text",
          "analyzer": "ik_max_word",
          "search_analyzer": "ik_max_word",
          "fielddata": true,
          "fields": {
            "raw": {
              "type": "keyword"
            }
          }
        },
        "journal_volumn": {
          "type": "text"
        },
        "title": {
          "type": "text",
          "analyzer": "ik_max_word",
          "search_analyzer": "ik_max_word",
          "boost": 1.5
        },
        "author": {
          "type": "text"
        },
        "begin_page": {
          "type": "integer",
          "index": false
        },
        "end_page": {
          "type": "integer",
          "index": false
        },
        "publish_date": {
          "type": "date",
          "format": "yyyy-MM-dd HH:mm:ss"
        },
        "publisher": {
          "type": "text"
        }
      }
    }
  }
}


max number of threads [1024] for user [fyj] is too low, increase to at least [4096]

修改/etc/security/limits.conf,修改到提示值即可

vi /etc/security/limits.conf

* hard nofile 65536


修改 vim /etc/sysctl.conf

添加配置:vm.max_map_count=262144,

然后执行命令

sysctl -p


es head https://www.cnblogs.com/frankdeng/p/9139035.html 安装链接

 下载head插件头

[admin@node21 elk]$ wget https://github.com/mobz/elasticsearch-head/archive/master.zip

解压,会出现一个elasticsearch-head-master文件

[admin@node21 elk]$ unzip master.zip
4 使用npm安装grunt

设置npm的代理镜像,由于国外的下载较慢,所以设置为国内的,进入到elasticsearch-head-master内执行以下命令

 [admin@node21 elasticsearch-head-master]$ npm config set registry https://registry.npm.taobao.org

执行npm install,grunt是基于Node.js的项目构建工具,可以进行打包压缩,测试,执行等等的工作,head插件就是通过grunt启动。 

[admin@node21 elasticsearch-head-master]$ npm install -g grunt
[admin@node21 elasticsearch-head-master]$ npm install


报错: elasticsearch-head phantomjs-prebuilt@2.1.16 install: `node install.js`

执行 npm install phantomjs-prebuilt@2.1.14 --ignore-scripts


版本确认:

复制代码
[admin@node21 software]$ node -v
v8.11.2
[admin@node21 software]$ npm -v
6.1.0
[admin@node21 software]$ grunt -version
grunt-cli v1.2.0
grunt v1.0.1
复制代码
5 修改Head源码

由于head的代码直接执行有很多限制,比如无法跨机器访问。因此需要用户修改两个地方:

 1)修改 elasticsearch-head-master/Gruntfile.js 文件,红色部分为添加的,原来没有,设置hostname属性,设置为0.0.0.0

 vi Gruntfile.js 
             connect: {
                        server: {
                                options: {
                                        hostname: '0.0.0.0',
                                        port: 9100,
                                        base: '.',
                                        keepalive: true
                                }
                        }
                }
复制代码
2)修改跨域请求配置

不修改连接的状态如下,修改之后才能连上,这样head插件才可以访问elasticsearch。

修改文件为elasticsearch-6.2.4/config/elasticsearch.yml,添加如下两行

http.cors.enabled: true
http.cors.allow-origin: "*"
 上述连接需要手动更改http://localhost:9200/中的localhost为自己的ip才能连接得上。这里修改配置文件,改为自己的ip。
 修改head的连接地址,进入到elasticsearch-head-master/_site里,修改app.js(提示:指定内容查找  如果是用vi打开文件后,
 在命令行下输入“/关键字”; 如果是在没有打开文件的前提就用"cat 文件名 | grep "关键字""。)

vi app.js 
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";
把localhost修改成你es的服务器地址,如:
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.100.21:9200";
6 启动elasticsearch

1、启动ES(因为上述配置修改了elasticsearch-yml,重启才能生效。)

如果已经启动,先停止(/elasticsearch-6.2.4/bin)

[admin@node21 bin]$ ./elasticsearch
2、启动head

[admin@node21 elasticsearch-head-master]$ grunt server &


don't run elasticsearch as root.

因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户

第一步:liunx创建新用户  adduser XXX    然后给创建的用户加密码 passwd XXX    输入两次密码。

第二步:切换刚才创建的用户 su XXX  然后执行elasticsearch  会显示Permission denied 权限不足。

第三步:给新建的XXX赋权限,chmod 777 *  这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。所以要用root用户登录付权限。

第四步:root给XXX赋权限,chown -R XXX /你的elasticsearch安装目录。

然后执行成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值