虚拟机安装ElasticSearch遇到的那些事儿

一、 运行环境
操作系统:CentOS Linux 7
内核版本:Linux version:3.10.0-862.e17.x86_64 (输入 cat /proc/version可查看)
二、 学习ElasticSearch
1、 ES部署(无需安装)
下载ElasticSearch:
1) https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.1.zip
2) https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.1.tar.gz
3) https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.1.deb
4) https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.1.rpm
5) https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.1.msi
下载完成之后,解压缩即可。
遇到的问题:
a. 如何将安装包弄到Linux系统中:方法有:拷贝,可视化界面的Linux系统或通过工具连接Linux,可直接拷贝;在Linux通过wget直接下载;从其他系统传至目标系统:scp -R 用户名@目标系统ip:传输文件 目标目录
这里直接描述下载方式。
问题一:wget command not found
解决方式:下载安装wget(yum -y install wget),那么问题来了,执行命令报错怎么办?那就一个一个解决,顺腾摸瓜。首先看执行yum命令报错问题。
查看path配置:echo $PATH(注意大小写区分);
如果当前用户不是root权限用户,切换到root用户。su –(根据提示输入密码,注意,是输入root用户的密码);
进入/etc/sysconfid/network-scripts目录,找到ifcfg-eth0文件(每个机子都可能不一样,但格式会是“ifcfg-eno数字”);
vi ifcfg-eth0 ,修改里面的属性ONBOOT=no改为ONBOOT=yes,其中NAME和DEVICE均可改为eth0,重命名文件为ifcfg-eth0(mv ifcfg-eno数字 ifcfg-eth0)
如果ifconfig看到的还是eno5154545类型的标识,可修改/etc/sysconfig/grub 这个文件,在GRUB_CMDLINE_LINUX的“quiet”后加上“net.ifnames=0 biosdevname=0”,然后执行grub2-mkconfig -o /boot/grub2/grub.cfg,重启系统即可
重启系统,使更改生效(命令行输入reboot)
问题二:ifconfig command not found
解决方法:进入/sbin目录 cd /sbin
查看是否存在ifconfig命令是否安装(sbin目录中存放的就是各种执行命令),没有则安装net-tools插件。yum install net-tools
b. 解压安装包
如果为.tar.gz,解压命令为:tar -xzvf 文件名.tar.gz 指定路径(如果未指定路径,则默认解压到当前目录,目录名跟文件名相同)
参数:
-c :create 建立压缩档案的参数;
-x : 解压缩压缩档案的参数;
-z : 是否需要用gzip压缩;
-v: 压缩的过程中显示档案;
-f: 置顶文档名,在f后面立即接文件名,不能再加参数
c. 查看是否设置了jdk环境变量:echo $JAVA_HOME或执行命令:java -version
(启动ElasticSearch必须安装jdk)
下载jdk1.8:http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz
安装jdk:解压下载的安装包,编辑配置文件 /etc/profile,添加如下内容:

JAVA_HOME=/mnt/jdk1.8.0_60
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

然后重启系统即可
d. 将文件从一台服务器上传至另一台服务器(前提:服务器可相互连接)
scp 文件 用户名@ip:/目录
e. 将文件传至虚拟机(记住虚拟机共享文件)
选中虚拟机,右键选中“安装VMware Tools”,在Linux中会出现VMware Tools挂载,右键“Extract To”VM.tar.gz压缩文件,将其解压至目标文件夹,进入解压后的文件夹,执行./vmware-install.pl进行安装,安装完成之后查看/mnt下是否出现hgfs文件夹,进入文件夹即可看到VMware共享文件夹。(如果依然没有,则安装open-vm-tools,安装完成后,执行vmhgfs-fuse .host:/ /mnt/hgfs即可)。需要注意的是,如果未安装open-vm-tools,执行的命令可能是mount -t vmhgfs .host:/ /mnt/hgfs,具体命令视情况而定
f.

2、 启动ElasticSearch
假设安装包解压后的目录路径为【/home/elasticsearch/elasticsearch-1.5.0】,下面军用$ES_HOME来表示这个路径。执行下面的命令:
cd /home/elasticsearch/elasticsearch-1.5.0/bin/ 进入bin目录
chmod +x * 分配权限
./elasticsearch 启动elasticsearch
验证ElasticSearch是否启动成功,有两种方式:
1) 显示started字样,表明启动成功了
2) 在命令行输入:curl -XGET http://localhost:9200(或在浏览器访问:http://ip:9200),返回结果如下:

{
  "status" : 200,
  "name" : "Captain Zero",
  "cluster_name" : "elasticsearch",
  "version" : {
    "number" : "1.5.0",
    "build_hash" : "544816042d40151d3ce4ba4f95399d7860dc2e92",
    "build_timestamp" : "2015-03-23T14:30:58Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.4"
  },
  "tagline" : "You Know, for Search"
}

注意:启动时一定要加上 -d(后台运行),这样程序才会后台运行,不然会在关闭命令行窗口的同时,将ElasticSearch服务关闭.
遇到的问题:
a. Ctrl C 与 Ctrl Z
Ctrl C 中断命令,作用是强制中断程序的执行
Ctrl Z 中断命令,作用是中断任务,使用fg/bg操作可以继续启动任务(fg,重新启动前台被中断的任务;bg,把中断的任务放到后台执行)
b. 启动ElasticSearch时,执行./ elasticsearch报错。Exception in thread “main” java.nio.file.AccessDeniedException:
错误原因:使用非 root用户启动ES,而该用户的文件权限不足而被拒绝执行
解决方式:chown -R 用户名:用户名 目录名(为用户授权某个文件的操作权限)
3、 在同一台服务器上安装多个ElasticSearch节点
再次解压ES至其他目录(注意,因考虑到安全性问题,root直接运行./elasticsearch会报错,而使用非root用户登陆,如果不分配权限,运行./elasticsearch也会报错。需要切换到root用户,su -,然后给用户分配权限。chown -R 用户名:用户名 文件目录)
然后切换回原用户。启动elasticsearch,elasticsearch在默认配置下会自动分配访问端口.
好了,ES这就安装完成了。第一次写博客这种东西,写得不好大家凑合着看吧O(∩_∩)O

猜你喜欢

转载自blog.csdn.net/qq_29443647/article/details/81222531
今日推荐