这里小编默认大家都三台Linux虚拟机已经配置好网络了。
- 检查环境
1.三台虚拟机是否ping通;
2.防火墙是否关闭;
systemctl stop firewalld.service
systemctl disable firewalld.service
我们后面搭建集群,如果只在本地给了防火墙关闭,可能在后面集群没有办法互相连接,会导致搭建失败;
- 配置yum
yum clean all
yum makecache
yum install wget
- 安装JDK
通过ftp或者secureCRT进行传输,这里小编就不进行展示了;
链接:https://pan.baidu.com/s/1SXikoAZklb2gCFiaQkqR5g 提取码:sa4u
1.将jdk-8u131-linux-x64.rpm通过WinSCP上传到虚拟机;
2.安装JDK: rpm -ivh jdk-8u131-linux-x64.rpm
3.配置jdk相关的环境变量
vi ~/.bashrc
export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin
source ~/.bashrc
java -version
- hosts文件配置
1.在每台机器的hosts文件里面,配置好所有的机器ip地址到hostname的映射关系。
vi /etc/hosts
Linux操作系统的hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname。也可以直接
cat/proc/sys/kernel/hostname查看。
- 配置3台CentOS为ssh免密码互相通信
1.首先在三台虚拟机上分别各自执行下面命令生成自己的文件:
ssh-keygen -t rsa
生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下:
cd /root/.ssh
#拷贝自己的公钥文件为authroized_keys文件。
cp id_rsa.pub authorized_keys
#将虚拟机1中的公钥发送到虚拟机2,3;虚拟机2中的公钥发送到1,3;虚拟机3中的公钥发送到1,2;这里我#们也可以用xshell进行复制,将公钥进行复制
scp id_rsa.pub root@xxxxx:~/.ssh/authorizes_keys
2.调整文件夹~/ssh的权限
chmod 700 ~/.ssh
调整文件~/.ssh/authorized_keys
chmod 600 authorized_keys
配置服务器端ssh,允许使用密钥登录
编辑配置文件 vi /etc/ssh/sshd_config,把pubkeyAuthentication yes的注释去掉。
重启ssh服务
systemctl restart sshd
免密登录ok!
免密登录还有另一种方法:
三台虚拟机互相之间的ssh免密码登录,在每台虚拟机上执行下面的命令:
ssh-copy-id -i hostname命令将本机的公钥拷贝到指定的虚拟机authorized_keys文件上;
解释:
ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上,
ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限。
ssh-copy-id命令可以把本地的ssh公钥文件安装到远程主机对应的账户下。
达到的功能:
ssh-copy-id - 将你的公共密钥填充到一个远程机器上的authorized_keys文件中。
使用模式:
ssh-copy-id [-i [identity_file]] [user@]machine
描述:
ssh-copy-id 是一个实用ssh去登陆到远程服务器的脚本(假设使用一个登陆密码,因此,密码认证应该被激活直到你已经清理了做了多个身份的使用)。它也能够改变远程用户名的权限,~/.ssh和~/.ssh/authorized_keys,删除群组写的权限(在其它方面,如果远程机上的sshd在它的配置文件中是严格模式的话,这能够阻止你登陆。)。
如果这个 “-i”选项已经给出了,然后这个认证文件(默认是~/.ssh/id_rsa.pub)被使用,不管在你的ssh-agent那里是否有任何密钥。
另外,命令 “ssh-add -L” 提供任何输出,它使用这个输出优先于身份认证文件。如果给出了参数“-i”选项,或者ssh-add不产生输出,然后它使用身份认证文件的内容。一旦它有一个或者多个指纹,它使用ssh将这些指纹填充到远程机~/.ssh/authorized_keys文件中。
ssh-copy-id -h 查看详细参数及使用方法