Hadoop环境搭建笔记(一)
————集群服务器部署
目录
1.4 JDK安装(Hadoop体系中的各软件都是java开发的)
1.服务器基础配置:
1.1服务器以CentOS7-Minimal为例
CentOS7-Minimal aliyun 镜像下载地址:
http://mirrors.aliyun.com/centos/7/isos/x86_64/
安装步骤较为简单不赘述
1.2修改CentOS7网络配置
1.2.1修改原因
CentOS7安装后,默认网络配置开机不自启。
便于集群开发,要设置固定ip。
1.2.2步骤:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改对应配置项如下:
TYPE=Ethernet # 接口类型
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static # 激活此接口使用什么协议来配置接口的属性,有dhcp、bootp、static、none等(此处要设定为静态IP)
DEFROUTE=yes # 是否以此接口创建默认路由
IPV4_FAILURE_FATAL=no
IPV6INIT=yes # 是否初始化IPV6
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33 # 此配置文件对应的设备名称
UUID=62cd15d4-3e4a-4db2-9260-a9844e54cdcf
DEVICE=ens33 # 此设备文件对应的设备名称
ONBOOT=yes # 是否开机自启
IPADDR=192.168.126.11 # 固定ip地址
NETMASK=255.255.255.0 # 子网掩码;在centos7中支持使用PREFIX以长度方式指明子网掩码
GATEWAY=192.168.126.2 # 默认网关
DNS1=114.114.114.114 # DNS指向,最多可以有三个
PREFIX=24
修改完成后重启服务:
systemctl restart network.service
1.3关闭防火墙(便于集群通信)
//临时关闭
systemctl stop firewalld
systemctl stop firewalld.service
//禁止开机启动
systemctl disable firewalld
systemctl disable firewalld.service
//恢复开机启动
systemctl enable firewalld
systemctl enable firewalld.service
//查看防火墙状态
systemctl status firewalld
systemctl status firewalld.service
//查看防火墙开机自启状态
systemctl list-unit-files |grep fire
1.4 JDK安装(Hadoop体系中的各软件都是java开发的)
1.4.1JDK8下载地址
https://www.oracle.com/java/technologies/javase-jdk8-downloads.html
选择对应系统的rpm或tar包。
1.4.2上传
在secure 窗口下,按住alt + p 进入sftp模式,直接把文件拉到sftp窗口下,即可完成文件的上传。
下载直接使用 get 文件名 默认是在当前目录下,下载后的文件,在C:\Users\User_NAME\Documents
1.4.3解压到指定目录
tar -zxvf jdk-8u141-linux-x64.tar.gz -C /usr/local
1.4.4创建软链接
ln -s /usr/local/jdk1.8.0_141/ jdk
1.4.5配置环境变量
vi /etc/profile
# 文末添加 (G o) 以下内容
export JAVA_HOME=/usr/local/jdk
export PATH=.:$PATH:$JAVA_HOME/bin
:wq
1.4.6执行source,让配置生效
source /etc/profile
测试:
java -version
echo $JAVA_HOME
1.5 修改主机名:
vi /etc/hostname 修改为指定主机名:,其他节点对应修改为hdp-01,hdp-02,hdp-03
master
1.6 集群内主机的域名映射配置
vi /etc/hosts 文末添加:
192.168.126.10 master
192.168.126.11 hdp-01
192.168.126.12 hdp-02
192.168.126.13 hdp-03
将hosts文件拷贝到集群中的所有其他机器上
scp /etc/hosts hdp-02:/etc/
scp /etc/hosts hdp-03:/etc/
scp /etc/hosts hdp-04:/etc/
注:本文以1master 3slave 为例,以实际情况为准
1.7 集群内部ssh免密登录
1.7.1各主机生成密钥对
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
#-t 加密算法类型,这里是使用rsa算法 -P 指定私钥的密码,不需要可以不指定 -f 指定生成秘钥对保持的位置
1.7.2公钥追加复制到集群内其他服务器 ~/.ssh/authorized_keys 文件中
ssh-copy-id root@hdp-01
ssh-copy-id root@hdp-02
ssh-copy-id root@hdp-03
ssh-copy-id root@master
# 经过ssh-copy-id后接收公钥的服务端会把公钥追加到服务端对应用户的$HOME/.ssh/authorized_keys文件中
也可分别在每台机器上执行
ssh-copy-id root@master
# 将所有主机上的公钥追加到master,包括本机的公钥。再将authorized_keys复制替换其他主机的对应文件。
# 将该authorized_keys文件作为SecureCRT登录密钥文件,也可简化windows登录操作。
1.7.3测试任意主机登录其他集群:
ssh hdp-01
至此,Hadoop系统所需服务器配置已完成,下节:<Hadoop系统构架及hdfs文件系统部署>