下载与安装
全新服务器实例安装流程。若旧服务器实例,请检查JDK版本。
--
1.首先下载安装JDK,要求版本JDK11
--
#### 1.1.进入home目录
```
cd /home
```
#### 1.2.创建Java目录
```
mkdir Java
```
#### 1.3.进入java目录
```
cd ./Java
```
#### 1.4.下载JDK
```
JDK wget
```
#### 1.5.解压JDK压缩包
```
tar -zxvf xxxxx.tar.gz
```
#### 1.6.配置环境变量
```
vim /etc/profile
export JAVA_HOME=/home/Java/jdk11
export CLASSPATH=.:${JAVA_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
```
#### 1.7.使环境变量生效
```
source /etc/profile
```
#### 1.8.检查Java版本
```
java -version
java version "11.0.10" 2021-01-19 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.10+8-LTS-162)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.10+8-LTS-162, mixed mode)
```
显示版本号,安装成功。
2.下载ElasticSearch
--
#### 2.1 进入home目录
```
cd /home
```
#### 2.2 创建elasticsearch目录
```
mkdir Elasticsearch
```
#### 2.3 进入elasticsearch目录
```
cd ./Elasticsearch
```
#### 2.4下载elasticsearch
```
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.11.2-linux-x86_64.tar.gz
```
>w PS:这破玩意儿可能下载不下来,可以去网站上先下载到本地,再上传到服务器。我TM就等了半天没连接上。 w(゚Д゚)w
#### 2.5解压elasticsearch
```
tar -zxvf elasticsearch-7.11.2-linux-x86_64.tar.gz
```
#### 2.6修改配置文件
```
vim /home/Elasticsearch/elasticsearch711/config/elasticsearch.yml
#集群名称,同一个集群内的所有节点集群名称必须保持一致
cluster.name: ES-Cluster
#节点名称,同一个集群内的节点名称必须保持唯一性
node.name:ES-node-01
#允许节点是否可以成为一个Master节点,ES默认集群中的第一台机器成为Master节点,如果这台机器停止,就会重新选举
node.master: true
#允许该节点存储索引数据(默认开启)
node.data: true
#ES数据存储路径,可以配置多个,使用逗号分隔,分散存储,有助于性能提升
path.data: /home/Elasticsearch/elasticsearch711/data,/home/Elasticsearch/elasticsearch711/data1
#ES日志存储路径
path.logs: /home/Elasticsearch/elasticsearch711/logs
#在ES运行起来后,锁定ES所能使用的堆内存大小,锁定内存大小一般为可用内存的一半,锁定后就不会使用交换分区,
#如果不打开此项,当系统物理内存不足是,ES将使用交换分区,ES如果交换分区,那么ES的性能将会变的很差。
bootstrap.memory_lock: true
#net绑定地址,支持IvP4及IvP6,默认绑定127.0.0.1ES的HTTP端口和集群通讯端口就会监听在此地址上
network.host: 192.168.0.1
#是否启动tcp延迟,true为不延迟,默认为false延迟。
network.tcp.no_delay:true
#是否启动TCP保持活动状态,默认为true
network.tcpkeep_alive: true
#是否应该重复使用地址,默认true,在Windows机器上默认为false
network.tcp.reuse_address: true
#TCP发送缓冲区大小,默认不设置
network.tcp.send_buffer_size: 128mb
#TCP接收缓冲区大小,默认不设置
network.tcp.receive_buffer_size: 128mb
#设置集群节点通信的TCP端口,默认是9300
transport.tcp.port: 9301
#设置是否压缩TCP传输时的数据,默认是false
transport.tcp.compress: true
#设置http请求内容的最大容量默认是100mb
http.max_content_length: 200mb
#是否开启跨域访问
http.cors.enabled: true
#开启跨域访问后的地址限制,'*'表示无限制
http.cors.allow-origin: "*"
#定义ES对外调用的http端口,默认是9200
http.port: 9200
#ES7.x 新增参数,写入候选主节点的设备地址,来开启服务时就可以被选为主节点,由discovery。zen.ping.unicast.hosts:参数改变而来
discovery.seed_hosts:["192.168.3.12:9301","192.168.3.22:9301"....]
#ES7.x 新增参数,启动30秒内,若集群为成型,那么将会记录一条警告信息,警告信息为master not fount开始,默认为10秒
discovery.cluster_formation_warning_timeout: 30s
#ES7.x 新增参数,写入候选直接点的设备地址,开启服务时就可以被选为主节点
cluster.initial_master_nodes:["192.168.3.12:9301","192.168.3.22:9301"...]
#ES7.x 新增参数,设置每个节点在选中为主节点的检查之间等待的时间,默认1s.
cluster.fault_detection.leader_check.interval: 2s
#ES7.x 新增参数,节点发送请求加入集群后,在认为请求失败后,再次发送请求的间隔时间,默认为60s.
cluster.join.timeout: 30s
#ES7.x 新增参数,设置主节点等待每个集群状态完全更新后发布到所有节点的时间,默认为30s.
cluster.publish.timeout: 90s
#集群内同时启动的数据任务个数,默认2个
cluster.routing.allocation.cluster_concurrent_rebalance: 32
#添加或删除节点及负载均衡时并发恢复的线程个数,默认4个
cluster.routing.allocation.node_concurrent_recoveries: 32
#初始化数据恢复时,并发恢复线程的个数,默认4个
cluster.routing.allocation.node_initial_primaries_recoveries: 32
#开启xpack安全验证
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.teansport.ssl.enabled: true
#证书配置
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: certs/elastic-certificatrs.p12
```
### 简单配置
```
cluster.name: my-application
path.data: /home/Elasticsearch/elasticsearch711/data
path.logs: /home/Elasticsearch/elasticsearch711/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9900
cluster.initial_master_nodes: ["node-1"]
修改 /etc/sysctl.conf
在最后一行,添加
vm.max_map_count=262144
执行 /sbin/sysctl -q
立即生效
```
启动前,需要添加用户组及用户
```
groupadd es #添加分组
useradd es -g es #添加es用户,指定用户组es -g es
passwd es #设置密码
chown -R es:es /home/Elasticsearch/ #修改用户权限
su es #切换用户
./bin/elasticsearch -d #后台方式启动
curl 127.0.0.1:9200
{
"name" : "iZ2ze59tpwttz6bvfehy3mZ",
"cluster_name" : "my-application",
"cluster_uuid" : "_na_",
"version" : {
"number" : "7.11.2",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "3e5a16cfec50876d20ea77b075070932c6464c7d",
"build_date" : "2021-03-06T05:54:38.141101Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
查询例句
curl -H "Content-Type: application/json" -XGET 'http://127.0.0.1:9900/_count?pretty' -d '{"query":{"match_all":{}}}'
```
>d PS: **以上2个压缩包,可以去47.115.13.44服务器下载,在resource文件夹下面。 ≖‿≖✧**