linux下elasticsearch单机安装(包括elasticsearch-head安装配置)

服务器上提前安装好jdk1.8以上版本
计划将elasticsearch安装到 /data目录下

下载安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.4-linux-x86_64.tar.gz
其他版本可到如下链接下载: https://www.elastic.co/cn/downloads/elasticsearch

解压压缩包

tar -xzvf elasticsearch-7.17.4-linux-x86_64.tar.gz

修改系统配置

文件句柄数:
vi /etc/security/limits.conf
增加以下配置

* soft nofile 65536
* hard nofile 65536

修改vm.max_map_count的大小:( 默认的操作系统对 mmap 计数的限制可能太低,这可能会导致内存不足异常)
vi /etc/sysctl.conf
增加如下配置

vm.max_map_count=262144

创建数据目录

mkdir /data/elasticsearch-7.17.4/data
mkdir /data/elasticsearch-7.17.4/logs

创建启动用户和分配权限

es不能被root账号启动,因此单独创建一个账号
命令如下:

 groupadd es
 useradd -g es es
 chown -R es:es /data/elasticsearch-7.17.4

修改es配置

修改解压后的elasticsearch-7.17.4/config/elasticsearch.yml文件

# 节点名称
node.name: node-1
# 开启安全功能
xpack.security.enabled: true
# 监听网路
network.host: 0.0.0.0
# 启用单点
discovery.type: single-node
# 修改数据目录
path.data: /data/elasticsearch-7.17.4/data
#
# Path to log files:
#
path.logs: /data/elasticsearch-7.17.4/logs

启动es,并初始化账号

注意,需要切换用户启动es
进入elasticsearch-7.17.4/bin目录

su es
#后台启动(可以先用 ./elasticsearch 启动看看是否异常,正常启动后,在重新后台启动)
./elasticsearch -d
#初始化账号(执行下边命令,出现 Please confirm that you would like to continue [y/N] 按y,之后设置密码)
./elasticsearch-setup-passwords interactive
#退出es账号
exit

验证

http://ip:9200/
在弹出界面输入账号[elastic]和上边设置的密码,出现以信息,说明es安装启动完成

{
  "name" : "node-1",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "tXpgbxD1QzauHrboD6gXWA",
  "version" : {
    "number" : "7.17.4",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "79878662c54c886ae89206c685d9f1051a9d6411",
    "build_date" : "2022-05-18T18:04:20.964345128Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

elasticsearch-head的安装

elasticsearch增加跨域配置

修改elasticsearch-7.17.4/config/elasticsearch.yml文件

#跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,Content-Type

elasticsearch-head的安装

下载地址 https://github.com/mobz/elasticsearch-head

#没git直接下载源码也行
git clone git://github.com/mobz/elasticsearch-head.git
cd elasticsearch-head
npm install
npm install -g grunt-cli
npm run start

备注1:发现了一个PhantomJs的问题,安装 bzip2 后解决

yum install bzip2

备注2:如果端口冲突,编辑 Gruntfile.js 修改端口
如下9100改为其他端口

connect: {
                        server: {
                                options: {
                                        port: 9100, 
                                        base: '.',
                                        keepalive: true
                                }
                        }
                }```

## 验证
http://elasticsearch-head的ip:9100/?base_uri=http://elasticsearch的ip:9200&auth_user=elastic&auth_password=elastic的密码
注意:密码有特殊字符需要 urlencoded转码,不想用elastic可以单独创建一个账号,分配 all,monitor,manage 的权限。

你可能感兴趣的:(数据库,java,elasticsearch,linux,搜索引擎)