暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ElasticSearch 6.6.1 集群搭建

运维小菜鸡 2021-07-15
1266

1、单节点ElasticSearch安装

1.1 下载安装包

cd /usr/local/src/ && wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.1.rpm

1.2 安装ElasticSearch

rpm -ivh elasticsearch-6.6.1.rpm

[root@host108 src]# rpm -ivh elasticsearch-6.6.1.rpm 
警告:elasticsearch-6.6.1.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID d88e42b4: NOKEY
准备中...                          ################################# [100%]
Creating elasticsearch group... OK
Creating elasticsearch user... OK
正在升级/安装...
   1:elasticsearch-0:6.6.1-1          ################################# [100%]
### NOT starting on installation, please execute the following statements to configure elasticsearch service to start automatically using systemd
 sudo systemctl daemon-reload
 sudo systemctl enable elasticsearch.service
### You can start elasticsearch service by executing
 sudo systemctl start elasticsearch.service
Created elasticsearch keystore in /etc/elasticsearch
[root@host108 src]

1.3 修改配置文件

cat > /etc/elasticsearch/elasticsearch.yml << EOF
cluster.name: elasticsearch-cluster
node.name: node-107
node.master: true
node.data: true
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
EOF

1.4 启动ElasticSearch

systemctl start elasticsearch.service
systemctl enable elasticsearch.service
systemctl status elasticsearch.service

2、ElasticSearch开启用户认证

2.1 启用用户认证

curl -H "Content-Type:application/json" -XPOST http://192.168.0.107:9200/_xpack/license/start_trial?acknowledge=true

2.2 修改配置文件并重启

cat >> /etc/elasticsearch/elasticsearch.yml << EOF
xpack.security.enabled: true
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
EOF

systemctl restart elasticsearch.service

2.3 生成用户名密码

/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive  # 生成指定的密码 elastic:elastic

systemctl restart elasticsearch.service

3、集群搭建

3.1 修改配置为集群配置

# 在每一台节点上都需要生成, 注意修改node.name
cat > /etc/elasticsearch/elasticsearch.yml << EOF
cluster.name: elasticsearch-cluster
node.name: node-107  # 每个节点的该配置都要不一样
node.master: true
node.data: true
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["192.168.0.107""192.168.0.108""192.168.0.110"]
discovery.zen.minimum_master_nodes: 2
xpack.security.enabled: true
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
EOF

这里建议优先在已经启用了用户认证的节点上优先启动ElasticSearch,这样该节点会先成为主节点,避免其他节点启动之后,没有设置用户认证导致用户验证配置无法同步。

3.2 依次启动ElasticSearch节点

systemctl restart elasticsearch.service

3.3 查看日志

tail -f /var/log/elasticsearch/elasticsearch-cluster.log

4、安装Kibana

4.1 下载Kibana

cd /usr/local/src/ && wget https://artifacts.elastic.co/downloads/kibana/kibana-6.6.1-x86_64.rpm

4.2 安装Kibana

rpm -ivh kibana-6.6.1-x86_64.rpm

4.3 修改Kibana的配置文件

server.port: "5601"
server.host: "0.0.0.0"
logging.dest: "/var/log/kibana/kibana.log"
elasticsearch.username: "elastic"
elasticsearch.password: "elastic"
elasticsearch.hosts: ["http://192.168.0.107:9200""http://192.168.0.108:9200""http://192.168.0.110:9200"]

4.4 创建对应目录并授权

mkdir -pv /var/log/kibana/
chown kibana:kibana -R /var/log/kibana/

4.5 启动Kibana

systemctl start kibana.service

5、注意点

5.1 修改主机最大文件打开数

ElasticSearch启动的时候会检查主机最大文件打开数是否大于等于65535,所以需要提前修改。

# 方法1
vim /etc/security/limits.conf
root       soft    nofile    65536
root       hard    nofile    65536
*          soft    nproc     65536
*          hard    nproc     65536
*          -       nofile    65536

# 方法2
vim /etc/security/limits.d/20-nproc.conf
*          soft    nproc     65536
*          hard    nproc     65536

# 方法3
echo "ulimit -SHn 65536" >> /etc/profile
source /etc/profile

# 以上三种方法哪种有效使用哪种
# 查看
ulimit -n

5.2 Kibana需要配置IElasticSearch认证

Kibana如果配置了连接到ElasticSearch集群,则必须要配置ElasticSearch集群认证的账户密码才能够正常访问,否则日志会报错。


文章转载自运维小菜鸡,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论