赞
踩
Elasticsearch(后面简称ES)是一个分布式、高扩展、高实时的搜索与数据分析引擎,基于Lucene搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口
也许是处于安全考虑,ElasticSearch默认是禁止使用root启动的,所以我们这里新建一个账户来管理ES
useradd -m elastic # 创建用户
echo elastic:12345 | chpasswd # 设置密码
顺便给它设置免密sudo
echo "elastic ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/elastic
chomd 0440 /etc/sudoers.d/elastic
下载解压
mkdir /data/softs/
cd /data/softs/
# 下载安装包,也可以直接使用其他方式下载然后弄进来
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.2-linux-x86_64.tar. gz
mkdir /data/server/ -p
tar -xf elasticsearch-7.3.2-linux-x86_64.tar.gz -C /data/server/
cd /data/server/
ln -s elasticsearch-7.3.2/ elasticsearch
配置环境变量
新建 /etc/profile.d/elastic.sh,输入以下代码
export ELASTIC_HOME=/data/server/elasticsearch
export PATH=$ELASTIC_HOME/bin:$PATH
使生效
su elastic
source /etc/profile.d/elastic.sh
chmod +x /etc/profile.d/elastic.sh
打开ES解压包里的配置文件进行如下配置
vim elasticsearch/config/elasticsearch.yml
# 设定elasticsearch集群的名称 cluster.name: elastic.mysite.com # 设定集群master界面的名称 node.name: master.mysite.com node.master: true node.data: true # 设定elasticsearch的存储目录,包括数据目录和日志目录 path.data: /data/server/elasticsearch/data path.logs: /data/server/elasticsearch/logs # 允许所有主机都能访问我们的 elasticsearch network.host: 192.168.203.151 #这是主服务器的IP # 设置elasticsearch对外的访问端口 http.port: 9200 # 设定主机发现 discovery.seed_hosts: ["master.mysite.com","node.mysite.com"] cluster.initial_master_nodes: ["master.mysite.com"] # 开启跨域访问支持,默认为false http.cors.enabled: true # 跨域访问允许的域名地址,(允许所有域名)以上使用正则 http.cors.allow-origin: "*"
以上的主服务器的配置, 从服务器 的其他配置一样,但节点不能跟主服务器一样
node.name: node.mysite.com
node.master: false
network.host: 192.168.203.152 # 从服务器的IP
其他配置
# 修改虚拟内存为262144
echo 'vm.max_map_count=262144' > /etc/sysctl.d/elastic.conf
sysctl -p /etc/sysctl.d/elastic.conf
# 因为ES启动的时候对文件描述有限制,所以我们需要设置限制的数量
echo 'elastic - nofile 65536' > /etc/security/limits.d/elastic.conf
# 因为我们在ES的配置文件中指定了数据和日志的目录,所以要先建好
mkdir /data/server/elasticsearch/{data,logs} -p
# 因为我们要基于elastic用户来启动软件,所以需要提前设置相关属性
chown -R elastic:elastic /data/server/elasticsearch
chown -R elastic:elastic /data/server/elasticsearch-7.3.2/
我们使用elastic账户启动
elasticsearch
或
elasticsearch -d # 后台启动
查看是否启动
netstat -tnulp | grep 9200 # 根据端口查看
curl 192.168.203.151:9200 # 查看返回值
# 查看健康状态
curl 192.168.203.151:9200/_cat/health?v
# 查看节点
curl 192.168.203.151:9200/_cat/nodes
创建和查看索引
# 创建索引
curl -XPUT 192.168.203.151:9200/index_test
# 查看索引
curl 192.168.203.151:9200/_cat/indices
# 格式化显示
curl 192.168.203.151:9200/index_test?pretty
删除索引
# 删除索引
curl -XDELETE 192.168.203.151:9200/index_test
# 返回 {"acknowledged":true}
# 查看索引
curl 192.168.203.151:9200/_cat/indices
配置切片属性
curl -X PUT 192.168.203.151:9200/index_test -H 'Content-Type:application/json' -d '{"settings": {"number_of_shards": 3,"number_of_replicas": 1}}'
# number_of_shards:切片数,number_of_replicas:副本数
# 查看效果
curl 192.168.203.151:9200/_cat/indices
curl 192.168.203.151:9200/index_test?pretty
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。