大数据基本环境配置
.
搭建准备
搭建大数据环境之前默认已经安装好了linux,如未安装,请参考本维基百科上的linux安装教程-->安装Centos7
修改主机名
- 临时修改主机名
- su查看
# systemctl set-hostname master
- 永久修改主机名
# vim /etc/sysconfig/network
- 加上下面两句话
- NETWORKING=yes
- HOSTNAME=master
- 重启linux
# reboot
修改hosts
- 修改masterIP地址
# vim vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
在文件中写入以下内容
# vim vim /etc/sysconfig/network
- 重启网络服务
- # systemctl restart network
- 网络测试
- 在终端输入 ping 192.168.56.1测试
关闭防火墙
在命令行输入
# systemctl stop firewalld
# systemctl status firewalld
# systemctl disable firewalld
# service network restart
配置时间同步
- 时区一致。要保证设置主机时间准确,每台机器时区必须一致。实验中我们需要同步网络时间,因此要首先选择一样的时区。先确保时区一样,否则 同步以后时间也是有时区差。
- 可以使用 date 命令查看自己的机器时间。使用 date 命令查看自己的机器时间,使用 tzselect 命令选择时区
下载ntp
配置ssh免密登录
SSH 主要通过 RSA 算法来产生公钥与私钥,在数据传输过程中对数据进行加 密来保障数 据的安全性和可靠性,公钥部分是公共部分,网络上任一结点均可以访问,
私钥主要用于对数据进行加密,以防他人盗取数据。总而言之,这是一种非对称 算法,想要破解还是非常有难度的。Hadoop 集群的各个结点之间需要进行数据 的访问,被访问的结点对于访问用户结点的可靠性必须进行验证,hadoop 采用 的是 ssh 的方法通过密钥验证及数据加解密的方式进行远程安全登录操作,当然, 如果 hadoop 对每个结点的访问均需要进行验证,其效率将会大大降低,所以才 需要配置 SSH 免密码的方法直接远程连入被访问结点,这样将大大提高访问效率
每个结点分别产生公私密钥:
ssh-keygen -t dsa -P -f ~/.ssh/id_dsa(三台机器)
秘钥产生目录在用户主目录下的.ssh 目录中,进入相应目录查看:
cd .ssh/
Id_dsa.pub 为公钥, id_dsa 为私钥,紧接着将公钥文件复制成 authorized_keys 文件:(仅 master)
cat id_dsa.pub >> authorized_keys(注意在.ssh/路径下操作)
在主机上连接自己,也叫做 ssh 内回环。
ssh master
让主结点 master 能通过 SSH 免密码登录两个子结点 slave。(slave 中 操作)
为了实现这个功能,两个 slave 结点的公钥文件中必须要包含主结点的公钥 信息,这样
当 master 就可以顺利安全地访问这两个 slave 结点了。
slave1 结点通过 scp 命令远程登录 master 结点,并复制 master 的公钥文件 到当前的目录下,且重命名为 master_das.pub,这一过程需要密码验证。
scp master:~/.ssh/id_dsa.pub ./master_das.pub
将 master 结点的公钥文件追加至 authorized_keys 文件:
安装JDK
- 首先建立工作路径/usr/java
mkdir -p /usr/java
tar -zxvf /opt/soft/jdk-8u171-linux-x64.tar.gz -C /usr/java/
- 修改环境变量
修改环境变量:vi /etc/profile 添加内容如下: export JAVA_HOME=/usr/java/jdk1.8.0_171 export CLASSPATH=$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin export PATH JAVA_HOME CLASSPATH
生效环境变量:source /etc/profile 查看 java 版本:java -version