首页 > 其他分享 >elasticsearch-7.17.15 集群安装部署及kibana配置

elasticsearch-7.17.15 集群安装部署及kibana配置

时间:2024-06-22 23:32:35浏览次数:12  
标签:7.17 15 192.168 elasticsearch kibana security es

一、物料准备(注意:必须版本一致):

1、安装包

  elasticsearch-7.17.15-linux-x86_64.tar.gz (这个版本的插件需要在线使用命令安装:/es/elasticsearch-7.17.15/bin/elasticsearch-plugin install https://get.infini.cloud/elasticsearch/analysis-ik/7.17.15,或者用我的 传送门)
  analysis-ik.7.17.15.tar.gz
  kibana-7.17.15-linux-x86_64.tar.gz

2、机器

三台centos7虚拟机

  192.168.3.110、192.168.3.120 、192.168.3.130

二、安装步骤

1、root用户 修改系统配置

  // 在文件末尾添加下面的参数值
  # echo "* soft nofile 65536" >> /etc/security/limits.conf && echo "* hard nofile 131072" >> /etc/security/limits.conf
  # echo "* soft memlock unlimited" >> /etc/security/limits.conf && echo "* hard memlock unlimited" >> /etc/security/limits.conf
  # echo "vm.max_map_count=655360" >> /etc/sysctl.conf

  # 更改生效

  # sysctl -p

2、使用root用户在三台机器上创建目录授权给普通用户es(安装目录为: /es 用户组:es,用户名:es)

  # groupadd es && mkdir /es && useradd -m -g es -d /es es && chown -R es:es /es

3、使用es用户配置elasticsearch

3.1、上传到安装包到安装目录/es 并解压:

  192.168.3.110 上传包:elasticsearch-7.17.15-linux-x86_64.tar.gz、analysis-ik.7.17.15.tar.gz、kibana-7.17.15-linux-x86_64.tar.gz

  192.168.3.120 上传包:elasticsearch-7.17.15-linux-x86_64.tar.gz、analysis-ik.7.17.15.tar.gz

  192.168.3.130 上传包:elasticsearch-7.17.15-linux-x86_64.tar.gz、analysis-ik.7.17.15.tar.gz

3.2、三台机器依次复制解压的ik插件到elasticsearch插件目录:

  $ cp -r analysis-ik elasticsearch-7.17.15/plugins/

3.3、三台机器依次创建data和日志目录:

  $ mkdir -p /es/elasticsearch-7.17.15/data && mkdir -p /es/elasticsearch-7.17.15/logs

3.4、在192.168.3.110上生成证书文件并移动到指定配置目录后分发到另外两台机器:

生成证书文件,在elasticsearch-7.17.15会生成两个.p12后缀文件(提示输入直接回车,不用指定密码!):

  $ /es/elasticsearch-7.17.15/bin/elasticsearch-certutil ca
  $ /es/elasticsearch-7.17.15/bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12

创建证书目录并移动证书文件到该目录下

  $ mkdir -p /es/elasticsearch-7.17.15/config/certs && mv /es/elasticsearch-7.17.15/*.p12 /es/elasticsearch-7.17.15/config/certs/

分发证书到另外两台机器:

  $ scp -r  /es/elasticsearch-7.17.15/config/certs/ [email protected]:/es/elasticsearch-7.17.15/config/

  $ scp -r  /es/elasticsearch-7.17.15/config/certs/ [email protected]:/es/elasticsearch-7.17.15/config/

3.5、修改三台机器elasticsearch的jvm配置:

  $ vim /es/elasticsearch-7.17.15/config/jvm.options

  修改堆内存大小(以实际情况设置,官方说是设置为总内存的50%,官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/7.17/advanced-configuration.html):

  -Xms2g
  -Xmx2g

3.6、修改三台机器elasticsearch配置文件elasticsearch.yml:

 $ vim /es/elasticsearch-7.17.15/config/elasticsearch.yml

  三台机器的elasticsearch.yml

cluster.name: es-cls
node.name: node1
node.master: true
node.data: true
path.data: /es/elasticsearch-7.17.15/data
path.logs: /es/elasticsearch-7.17.15/logs
bootstrap.memory_lock: true
bootstrap.system_call_filter: false
network.host: 192.168.3.110
http.port: 9200

transport.tcp.port: 9300
discovery.seed_hosts: ["192.168.3.110:9300", "192.168.3.120:9300", "192.168.3.130:9300"]
cluster.initial_master_nodes: ["node1", "node2" ,"node3"]

http.cors.enabled: true
http.cors.allow-origin: "*"

xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
192.168.3.110
cluster.name: es-cls
node.name: node2
node.master: true
node.data: true
path.data: /es/elasticsearch-7.17.15/data
path.logs: /es/elasticsearch-7.17.15/logs
bootstrap.memory_lock: true
bootstrap.system_call_filter: false
network.host: 192.168.3.120
http.port: 9200

transport.tcp.port: 9300
discovery.seed_hosts: ["192.168.3.110:9300", "192.168.3.120:9300", "192.168.3.130:9300"]
cluster.initial_master_nodes: ["node1", "node2" ,"node3"]

http.cors.enabled: true
http.cors.allow-origin: "*"

xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
192.168.3.120
cluster.name: es-cls
node.name: node3
node.master: true
node.data: true
path.data: /es/elasticsearch-7.17.15/data
path.logs: /es/elasticsearch-7.17.15/logs
bootstrap.memory_lock: true
bootstrap.system_call_filter: false
network.host: 192.168.3.130
http.port: 9200

transport.tcp.port: 9300
discovery.seed_hosts: ["192.168.3.110:9300", "192.168.3.120:9300", "192.168.3.130:9300"]
cluster.initial_master_nodes: ["node1", "node2" ,"node3"]

http.cors.enabled: true
http.cors.allow-origin: "*"

xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /es/elasticsearch-7.17.15/config/certs/elastic-certificates.p12
192.168.3.130
3.7、启动三台机器的服务,进行内置账号处理及添加自定义账号:

依次启动服务:

   $ /es/elasticsearch-7.17.15/bin/elasticsearch -d

三台都启动完成后,修改内置账户密码 (在任意一台机器上修改即可):

   $ /es/elasticsearch-7.17.15/bin/elasticsearch-setup-passwords interactive

   按提示依次输入各个账户密码.......,建议设置成一样的,方便维护!我这里设置为:es123456

使用内置的用户elastic添加自定义账号(任意一台机器上添加即可,使用curl命令调用添加,这里添加的用户为 testadmin(url后面),角色为超级管理员:superuser,密码为:es123456):

$ curl -u elastic:es123456 -X POST "192.168.3.110:9200/_security/user/testadmin?pretty" -H 'Content-Type: application/json' -d \
'{"password":"es123456","roles":["superuser"],"full_name":"testadmin","email":"[email protected]","metadata":{"intelligence":7}}'
3.8、自定义账号调用查询验证:

使用刚刚添加的用户查询集群健康状况:

  $ curl -u testadmin:es123456 http://192.168.3.130:9200/_cluster/health

{
    "cluster_name": "es-cls",
    "status": "green",
    "timed_out": false,
    "number_of_nodes": 3,
    "number_of_data_nodes": 3,
    "active_primary_shards": 19,
    "active_shards": 38,
    "relocating_shards": 0,
    "initializing_shards": 0,
    "unassigned_shards": 0,
    "delayed_unassigned_shards": 0,
    "number_of_pending_tasks": 0,
    "number_of_in_flight_fetch": 0,
    "task_max_waiting_in_queue_millis": 0,
    "active_shards_percent_as_number": 100.0
}
集群健康状况返回结果

使用刚刚添加的用户进行中文分词验证:

 $ curl -u lcrm:es123456 -X POST "http://192.168.3.130:9200/_analyze" -H 'Content-Type: application/json' -d '{"analyzer": "ik_max_word","text":"elasticsearch分词插件ik验证"}'

{
    "tokens": [
        {
            "token": "elasticsearch",
            "start_offset": 0,
            "end_offset": 13,
            "type": "ENGLISH",
            "position": 0
        },
        {
            "token": "分词",
            "start_offset": 13,
            "end_offset": 15,
            "type": "CN_WORD",
            "position": 1
        },
        {
            "token": "插件",
            "start_offset": 15,
            "end_offset": 17,
            "type": "CN_WORD",
            "position": 2
        },
        {
            "token": "ik",
            "start_offset": 17,
            "end_offset": 19,
            "type": "ENGLISH",
            "position": 3
        },
        {
            "token": "验证",
            "start_offset": 19,
            "end_offset": 21,
            "type": "CN_WORD",
            "position": 4
        }
    ]
}
中文分词验证结果

查看所有索引的状态
  curl -u testadmin:es123456 '192.168.3.120:9200/_cat/indices?v'

4、配置kibana

4.1、切换到 192.168.3.110,修改kibana.yml
server.port: 5601

server.host: "192.168.3.110"

server.name: "master"

elasticsearch.hosts: ["http://192.168.3.110:9200", "http://192.168.3.120:9200", "http://192.168.3.130:9200"]

elasticsearch.username: "testadmin"

elasticsearch.password: "es123456"

pid.file: /es/kibana-7.17.15-linux-x86_64/kibana.pid

i18n.locale: "zh-CN"
kibana.yml 配置
4.2、启动 kibana 

  $ nohup /es/kibana-7.17.15-linux-x86_64/bin/kibana &

访问验证,使用添加的自定义testadmin登录:

  http://192.168.3.110:5601

查看所有用户:

  http://192.168.3.110:5601/app/management/security/users

 

标签:7.17,15,192.168,elasticsearch,kibana,security,es
From: https://www.cnblogs.com/dawnlz/p/18262874

相关文章

  • kedaOJ#P1529有趣的字母
    题目kedaOJ#P1529有趣的字母思路直接模拟,比较复杂的是找到最后一个字符代码#include<bits/stdc++.h>intmain(){std::vector<char>vowels={'a','e','i','o','u'};intn;std::cin>>n;intcount......
  • kedaOJ#P1530一起摇摆
    题目kedaOJ#P1530一起摇摆思路无代码#include<bits/stdc++.h>intmain(){ intn; std::cin>>n; std::vector<int>arr1(n); std::vector<int>arr2(n); for(inti=0;i<n;++i){ std::cin>>arr1[i]; } for(inti=0;i<......
  • 《植物大战僵尸杂交版》:时隔15年,再次火爆全网
    2009年的经典休闲益智小游戏《植物大战僵尸》,在时隔15年后,以全新的“杂交版”再次吸引了全网玩家的目光。游戏特色创新的杂交机制:保留了原版游戏机制,对植物和僵尸进行了现代化的“赛博改造”。元素反应系统:引入了类似“元素反应”的机制,增加了游戏的策略性和互动性。多......
  • [题解]AT_abc215_g [ABC215G] Colorful Candies 2
    思路定义\(vis_i\)表示数\(i\)在序列中出现的次数。如果我们选出\(k\)个数,答案就是(其中\(m\)表示\(\max(c_i)\)):\[\sum_{i=1}^m\frac{\binom{n}{x}-\binom{n-vis_i}{k}}{\binom{n}{x}}\]显然,我们只枚举序列中存在的元素,时间复杂度\(\Theta(n^2)\),过不......
  • [题解]AT_abc158_e [ABC158E] Divisible Substring
    思路首先发现一个事情,任意一个子串都可以由\(s\)的某一个后缀的后面删除一些字符得到。因此假如\(s\)的某一个后缀的值为\(x\),那么我们可以减去后面的我们不用的数字\(a\),然后除以\(10\)的若干次幂得到,即\(\frac{x-a}{10^n}\)。于是得到:\[\frac{x-a}{10^n}\equi......
  • [题解]AT_abc153_f [ABC153F] Silver Fox vs Monster
    模拟赛最后\(15\)分钟想到的做法。思路首先有一个显然的贪心策略:我们放炸弹的地方要尽可能的使这个炸弹能影响到更多的怪上。那么我们可以将对于一个怪\(i\)能够影响到它的区间表示出来\([\max(1,l_i-d),a_i+r]\)。然后将这些区间排个序,可以粗略画出这样的图:根据上......
  • [题解]AT_abc151_e [ABC151E] Max-Min Sums
    思路考虑将\(\max\)和\(\min\)的贡献分开计算。显然我们对这个序列进行一次排序不会影响最终的答案,因此我们可以先排序一下。然后有一个很经典的trick,就是你枚举每一个数\(x\),将\(x\)令为最大值(最小值)。因为我们先前排序过一次,因此我们可以轻易的计算出比\(x\)小(大)的......
  • PE工具 -- EasyU(优启通) v3.7.2024.0515 VIP版
    软件简介优启通(EasyU),也称为EU,是由IT天空开发的一款专业U盘启动盘制作工具。它以U盘作为使用载体,提供了一种便携、高效的系统预安装环境(PE)。优启通的特点包括简约易操作的用户界面,以及广泛的硬件兼容性。它支持BIOS(Legacy)与UEFI两种启动模式,并在主流硬件的基础上兼容早期多数......
  • ZZULIOJ157:素数判定
    方法一:#include<stdio.h>#include<math.h>intmain(){intn,i;scanf("%d",&n);for(i=2;i<n;i++)//解题思路:一个素数只能被1和本身整除,任何数都能被1整除,所以我们将设置除数从2开始,如果除数一直递增到被除数n的前一位也就是n-1还不能被整除,那么说明输入的n为......
  • AP2400 5-150V 10-6000mA 耐高温 高精度 降压恒流LED驱动芯片 手电筒电动车照明灯
    产品描述AP2400是一款PWM工作模式,高效率、外围简单、外驱功率管,适用于输入的高精度降压LED恒流驱动芯片。外驱MOS,最大输出电流可达6A。AP2400可实现三段功能切换,通过MODE1/2/3切换三种功能模式:全亮,半亮,爆闪AP2400工作频率固定在150KHZ左右,同时内置抖频电路,可以......