虚拟服务器安装
基础环境安装
zookeeper集群的搭建
kafka集群的搭建
hadoop/hbase集群的搭建
spark集群的搭建
flink集群的搭建
elasticsearch集群的搭建
alluxio集群的搭建
本文主要阐述基础环境的安装,主要是服务器间免密登录,java安装和scala安装。
免密登录由于后续涉及到各种软件的安装,毫无疑问会用到服务器间的文件传输,为了后续不再重复输入密码,同时搭建Hadoop环境均需要设置无密码登陆。所谓无密码登陆其实是指通过证书认证的方式登陆,使用一种被称为"公私钥"认证的方式来进行ssh登录。
" 公私钥"认证方式简单的解释:首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)。然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥.在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功即登录。
操作前确认系统已经安装了SSH。
如果没有安装ssh和rsync,可以通过下面命令进行安装。
yum install ssh -->安装SSH协议 yum install rsync -->rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件 service sshd restart -->启动服务资源列表如下:
<td>主机名</td> <td>ip地址</td>
bigdata1 192.168.220.200
bigdata2 192.168.220.201
bigdata3 192.168.220.202
bigdata4 192.168.220.203
bigdata5 192.168.220.204
主机名的设置,请参考虚拟服务器安装。
结合公私钥的定义,要设置这5个主机间的免密登录过程如下:
bigdata1、bigdata2、bigdata3、bigdata4、bigdata5各自生成公钥id_rsa和私钥id_rsa.pub
然后选择其中一个节点(bigdata1,可随意选择)当做主节点,将其他四个节点的公钥(bigdata2、bigdata3、bigdata4、bigdata5)的文件传送到bigdata1
利用所有服务器的公钥制作认证文件authorized_keys
修改认证文件的权限,并下发到所有节点即可。
设置hosts切换至root用户,编辑hosts文件
su root vi /etc/hosts设置完成后内容如下:
[root@bigdata1 oracle]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.220.200 bigdata1 192.168.220.201 bigdata2 192.168.220.202 bigdata3 192.168.220.203 bigdata4 192.168.220.204 bigdata5 [root@bigdata1 oracle]# 生成密钥bigdata1、bigdata2、bigdata3、bigdata4、bigdata5各个节点均需执行。
切换到主目录,查看是否存在.ssh文件夹(用来存放密钥的),如果没有,可以创建或者尝试从本机登录到其他主机则会自动生成该目录。
cd ~ mkdir .ssh
切换至.ssh目录
cd ~/.ssh
生成密钥,输入如下命令,然后连续按回车键
ssh-keygen -t rsa -P ""操作完成后结构如下
[root@bigdata1 .ssh]# pwd /home/oracle/.ssh [root@bigdata1 .ssh]# ll -rw------- 1 oracle oracle 1675 Jul 22 20:39 id_rsa -rw-r--r-- 1 oracle oracle 397 Jul 22 20:39 id_rsa.pub -rw-r--r-- 1 oracle oracle 3173 Jul 23 11:52 known_hosts [root@bigdata1 .ssh]# 公钥上报
复制公钥(bigdata1、bigdata2、bigdata3、bigdata4、bigdata5所有节点均执行)
cd ~/.ssh cp id_rsa.pub id_rsa.pub.$(hostname)
公钥上报(bigdata2、bigdata3、bigdata4、bigdata5这4个节点将公钥传送至bigdata1)
scp ~/.ssh/id_rsa.pub.* oracle@bigdata1:/home/oracle/.ssh/操作完成后,bigdata1节点.ssh目录结构如下:
[root@bigdata1 .ssh]# pwd /home/oracle/.ssh [root@bigdata1 .ssh]# ll total 32 -rw------- 1 oracle oracle 1675 Jul 22 20:39 id_rsa -rw-r--r-- 1 oracle oracle 397 Jul 22 20:39 id_rsa.pub -rw-r--r-- 1 oracle oracle 397 Jul 22 20:39 id_rsa.pub.bigdata1 -rw-r--r-- 1 oracle oracle 397 Jul 22 20:43 id_rsa.pub.bigdata2 -rw-r--r-- 1 oracle oracle 397 Jul 22 20:43 id_rsa.pub.bigdata3 -rw-r--r-- 1 oracle oracle 397 Jul 23 11:50 id_rsa.pub.bigdata4 -rw-r--r-- 1 oracle oracle 397 Jul 23 11:50 id_rsa.pub.bigdata5 -rw-r--r-- 1 oracle oracle 3173 Jul 23 11:52 known_hosts [root@bigdata1 .ssh]# 认证文件的制作和下发
用所有节点的公钥制作认证文件(bigdata1节点执行)
cat /home/oracle/.ssh/id_rsa.pub.bigdata1 >> /home/oracle/.ssh/authorized_keys cat /home/oracle/.ssh/id_rsa.pub.bigdata2 >> /home/oracle/.ssh/authorized_keys cat /home/oracle/.ssh/id_rsa.pub.bigdata3 >> /home/oracle/.ssh/authorized_keys cat /home/oracle/.ssh/id_rsa.pub.bigdata4 >> /home/oracle/.ssh/authorized_keys cat /home/oracle/.ssh/id_rsa.pub.bigdata5 >> /home/oracle/.ssh/authorized_keys权限更改(bigdata1节点执行)
chmod 600 /home/oracle/.ssh/authorized_keys