# ElasticSearch 和 Kibana 单机环境搭建 ## 一、ElasticSearch 安装 ### 1.1 下载并解压 Elastic 所有软件的下载地址均为 :https://www.elastic.co/cn/downloads/past-releases ,下载相同版本的 ElasticSearch 和 Kibana,下载后进行解压: ```shell tar -zxvf elasticsearch-7.2.0-linux-x86_64.tar.gz -C /usr/app/ tar -zxvf kibana-7.2.0-linux-x86_64.tar.gz -C /usr/app/ ``` ### 1.2 修改软件配置 修改安装目录下的 `config/elasticsearch.yml` 文件,修改内容如下: ```shell # 当前节点的名称 node.name: node-1 # 修改绑定地址,默认为本机地址,此时只能在本机访问ElasticSearch服务,想要所有主机都能访问,则修改为0.0.0.0 network.host: 0.0.0.0 http.port: 9200 cluster.initial_master_nodes: ["node-1"] ``` ### 1.3 修改服务器配置 如果你采用默认的服务器配置进行启动,通常会抛出下面两个异常: ```shell ERROR: [2] bootstrap checks failed [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] ``` 此时需要对服务器配置进行两项更改: #### 1. sysctl.conf 编辑 `/etc/sysctl.conf` 文件,增加如下配置: ```shell # 限制一个进程可以拥有的VMA(虚拟内存区域)的数量 vm.max_map_count=262144 ``` 修改完成后,如果想要在不重启的情况下使得该配置生效,则需要执行以下命令: ```shell /sbin/sysctl -p ``` #### 2. limits.conf 编辑 `/etc/security/limits.conf` 文件,增加如下配置: ``` * soft nofile 65536 * hard nofile 65536 root soft nofile 65536 root hard nofile 65536 ``` 修改配置完成重启 shell 客户端即可生效,想要验证是否生效,可以使用命令 `ulimit -a` 查看输出中的 `open files` 的值是否为 65536 。 ### 1.4 启动服务 进入安装目录的 `bin` 目录下,执行以下命令启动服务。这里为了观察效果使用前台方式启动,如果想要以后台进程的方式启动,则需要在后面加上 `-d` 参数: ```she ./elasticsearch ``` 需要特别注意的是,处于安全的考虑,Elasticsearch 不允许使用 root 账户启动服务,所以启动时需要切换到其他用户。同时启动用户必须拥有 Elasticsearch 目录的访问权限,可以先使用 `chown` 命令授权后再使用 `su` 命令切换到对应用户,示例如下: ```shell useradd heibaiying chown -R heibaiying:heibaiying /usr/app/elasticsearch-7.2.0/ ``` ### 1.5 启动验证 想要验证是否启动成功,可以使用 `jps` 命令查看 `Elasticsearch` 进程是否启动,也可以访问`9200`端口,出现如下页面则代表启动成功: