项目上马上要用到ES,之前我们已经在本地虚拟机上搭建了单节点的ES,但是真正用于生产还是需要搭建ES的集群;今天目标就是根据网上百度的信息尝试搭建集群化的ES。
一、操作系统,CentOS 6.7
二、Java 安装,Java版本 jdk1.8 文件名称:jdk-8u144-linux-x64.tar.gz
2.1.copy jdk-8u144-linux-x64.tar.gz 到\usr\software目录,解压缩到\usr\java目录(tar -zxvf jdk-8u144-linux-x64.tar.gz -C /usr/java)
2.2.配置环境变量,添加如下信息到\etc\profile文件中
2.3.配置完成之后,输入java -version确认版本信息export JAVA_HOME=/usr/java/jdk1.8.0_144 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH export JRE_HOME=/usr/java/jdk1.8.0_144/jre
三、Hostname调整
因为本地是用虚拟机搭建的集群环境,第一个Master节点安装完毕java之后,我通过VMware的克隆功能复制出来了两台Slave节点,分别是Slave01,Slave02;
下面需要修改Slave节点的hostname,从Master修改为Slave01,Slave02;
3.1. /etc/sysconfig/network
3.2. 添加下面信息到/etc/hosts
192.168.229.134 Master 192.168.229.135 Slave01 192.168.229.136 Slave02
四、配置节点之间的免密登陆
1.使用ssh-keygen -t rsa命令,分别在Master,Slave01,Slave02上创建私钥和公钥
ssh-keygen -t rsa
2.分别在Master、Slave01、Slave02使用下列命令,将三台机器的公钥复制到到Master节点的.ssh目录下,并重命名;
Master节点:
scp ~/.ssh/id_rsa.pub root@192.168.229.134:/root/.ssh/authorized_keys
Slave01节点:
scp ~/.ssh/id_rsa.pub root@192.168.229.134:/root/.ssh/id_rsa_Slave01
Slave02节点:
scp ~/.ssh/id_rsa.pub root@192.168.229.134:/root/.ssh/id_rsa_Slave02
3. 分别将Master节点.ssh目录下的Slave01、Slave02节点的公钥id_rsa_Slave01、id_rsa_Slave02添加到此目录下的authorized_keys文件中;
Slave01公钥:
Slave02公钥:cat ~/.ssh/id_rsa_Slave01 >>~/.ssh/authorized_keys
cat ~/.ssh/id_rsa_Slave02 >>~/.ssh/authorized_keys
4. 最后将Master节点下已经做好的授权文件authorized_keys分别复制到Slave01、Slave02节点的.ssh目录下;
Master节点->复制到->Slave01节点:
scp ~/.ssh/authorized_keys root@192.168.229.135:/root/.ssh/authorized_keys
Master节点->复制到->Slave02节点:
scp ~/.ssh/authorized_keys root@192.168.229.136:/root/.ssh/authorized_keys
5. 复制完成后,分别在Master、Slave01、Slave02节点下输入ssh Master;ssh Slave01;ssh Slave02命令,正常情况下第一登陆需要输入密码,退出之后再次输入就可以实现三个节点之间免密登陆了。