“大数据基本环境配置”的版本间的差异
第7行: | 第7行: | ||
*修改主机名 | *修改主机名 | ||
− | <nowiki>systemctl set-hostname master</nowiki> | + | <nowiki># systemctl set-hostname master</nowiki> |
:su查看 | :su查看 | ||
第30行: | 第30行: | ||
*重启linux | *重启linux | ||
− | <nowiki> | + | <nowiki> |
# reboot | # reboot | ||
</nowiki> | </nowiki> | ||
第40行: | 第40行: | ||
#修改masterIP地址 | #修改masterIP地址 | ||
− | <nowiki> | + | <nowiki> |
# vim vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 | # vim vim /etc/sysconfig/network-scripts/ifcfg-enp0s3 | ||
第53行: | 第53行: | ||
− | <nowiki> | + | <nowiki> |
# vim vim /etc/sysconfig/network | # vim vim /etc/sysconfig/network | ||
第65行: | 第65行: | ||
#重启网络服务 | #重启网络服务 | ||
− | + | <nowiki> | |
# systemctl restart network | # systemctl restart network | ||
第83行: | 第83行: | ||
在命令行输入 | 在命令行输入 | ||
− | <nowiki># systemctl stop firewalld</nowiki> | + | <nowiki># systemctl stop firewalld</nowiki> |
[[文件:Stopfirewall.png]] | [[文件:Stopfirewall.png]] | ||
− | <nowiki># systemctl status firewalld</nowiki> | + | <nowiki># systemctl status firewalld</nowiki> |
[[文件:FirewallStatus.png]] | [[文件:FirewallStatus.png]] | ||
− | <nowiki># systemctl disable firewalld</nowiki> | + | <nowiki># systemctl disable firewalld</nowiki> |
[[文件:Disable.png]] | [[文件:Disable.png]] | ||
− | <nowiki># service network restart </nowiki> | + | <nowiki># service network restart </nowiki> |
[[文件:Restart.png]] | [[文件:Restart.png]] | ||
第122行: | 第122行: | ||
每个结点分别产生公私密钥: | 每个结点分别产生公私密钥: | ||
− | ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa(三台机器) | + | <nowiki>ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa(三台机器) |
− | + | </nowiki> | |
秘钥产生目录在用户主目录下的.ssh 目录中,进入相应目录查看: | 秘钥产生目录在用户主目录下的.ssh 目录中,进入相应目录查看: | ||
− | cd .ssh/ | + | <nowiki>cd .ssh/</nowiki> |
[[文件:Ssh免密登录.png]] | [[文件:Ssh免密登录.png]] | ||
第138行: | 第138行: | ||
在主机上连接自己,也叫做 ssh 内回环。 | 在主机上连接自己,也叫做 ssh 内回环。 | ||
− | ssh master | + | <nowiki>ssh master</nowiki> |
[[文件:Sshmaster.png]] | [[文件:Sshmaster.png]] | ||
第148行: | 第148行: | ||
slave1 结点通过 scp 命令远程登录 master 结点,并复制 master 的公钥文件 到当前的目录下,且重命名为 master_das.pub,这一过程需要密码验证。 | slave1 结点通过 scp 命令远程登录 master 结点,并复制 master 的公钥文件 到当前的目录下,且重命名为 master_das.pub,这一过程需要密码验证。 | ||
− | scp master:~/.ssh/id_dsa.pub ./master_das.pub | + | <nowiki>scp master:~/.ssh/id_dsa.pub ./master_das.pub</nowiki> |
[[文件:复制master.png]] | [[文件:复制master.png]] | ||
第160行: | 第160行: | ||
#首先建立工作路径/usr/java | #首先建立工作路径/usr/java | ||
− | mkdir -p /usr/java | + | <nowiki>mkdir -p /usr/java</nowiki> |
− | tar -zxvf /opt/soft/jdk-8u171-linux-x64.tar.gz -C /usr/java/ | + | <nowiki>tar -zxvf /opt/soft/jdk-8u171-linux-x64.tar.gz -C /usr/java/</nowiki> |
#修改环境变量 | #修改环境变量 | ||
修改环境变量:vi /etc/profile 添加内容如下: | 修改环境变量:vi /etc/profile 添加内容如下: | ||
− | export JAVA_HOME=/usr/java/jdk1.8.0_171 | + | <nowiki>export JAVA_HOME=/usr/java/jdk1.8.0_171 |
export CLASSPATH=$JAVA_HOME/lib/ | export CLASSPATH=$JAVA_HOME/lib/ | ||
export PATH=$PATH:$JAVA_HOME/bin | export PATH=$PATH:$JAVA_HOME/bin | ||
− | export PATH JAVA_HOME CLASSPATH | + | export PATH JAVA_HOME CLASSPATH</nowiki> |
[[文件:java环境变量.png]] | [[文件:java环境变量.png]] | ||
− | + | 生效环境变量: | |
− | 查看 java | + | <nowiki>source /etc/profile</nowiki> |
− | + | 查看 java 版本: | |
+ | <nowiki>java -version | ||
+ | </nowiki> | ||
第184行: | 第186行: | ||
在 master 中将 JDK 复制到 slave2 中(要保证 slave2 中已有相应目录) | 在 master 中将 JDK 复制到 slave2 中(要保证 slave2 中已有相应目录) | ||
− | scp -r /usr/java/jdk1.8.0_171/ slave2:/usr/java/ | + | <nowiki>scp -r /usr/java/jdk1.8.0_171/ slave2:/usr/java/</nowiki> |
[[文件:复制java.png]] | [[文件:复制java.png]] |
2018年11月23日 (五) 11:21的版本
.
搭建准备
搭建大数据环境之前默认已经安装好了linux,如未安装,请参考本维基百科上的linux安装教程-->安装Centos7
修改主机名
- 修改主机名
# systemctl set-hostname master
- su查看
- 永久修改主机名
# 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
使用 scp 命令,将相同的文件从 master 中复制过来。 在 master 中将 JDK 复制到 slave2 中(要保证 slave2 中已有相应目录)
scp -r /usr/java/jdk1.8.0_171/ slave2:/usr/java/