自己整理了一下Hadoop集群简易搭建的过程,感谢尚观科技贾老师的授课和指导!
基本环境要求:能联网电脑一台;装有Centos系统的VMware虚拟机;Xmanager Enterprise 5软件。
•规划集群的ip地址:(计划)
10.10.10.31-->uplooking01
10.10.10.32-->uplooking02
10.10.10.33-->uplooking03
•克隆2个虚拟机:(在VMware里操作)
- 右击将uplooking重命名为uplooking01;
- 打开uplooking01虚拟机,输入指令vim /etc/sysconfig/network-scripts/ifcfg-eth0 将IP地址设置为10.10.10.31
- 虚拟机系统管理->右键克隆->完整克隆->uplooking02、uplooking03
•配置克隆机主机名:(以下操作均可在XShell中进行!)
uplooking02和03机下分别输入指令vim /etc/sysconfig/network
将HOSTNAME改为uplooking02、uplooking03
•修改克隆机网络配置:
uplooking02和03机下分别输入指令vim /etc/sysconfig/network-scripts/ifcfg-eth0
删去HWADDR、UUID行;
IP地址行分别改为10.10.10.32、10.10.10.33。
•解决克隆机网卡名称变为eth1问题:
uplooking02和03机下分别输入指令rm -rf /etc/udev/rules.d/70-persistent-net.rules
重启reboot。
•配置物理机和虚拟机之间的映射:
C:\Windows\System32\drivers\etc\hosts 文件,添加并保存
10.10.10.31 uplooking01
10.10.10.32 uplooking02
10.10.10.33 uplooking03
•配置虚拟机之间的映射:
uplooking01、02和03机下分别输入指令vim /etc/hosts 添加并保存
10.10.10.31 uplooking01
10.10.10.32 uplooking02
10.10.10.33 uplooking03
•关闭防火墙:
关闭网络防火墙:service iptables stop
关闭防火墙的开机自启:chkconfig iptables off
关闭selinux(Linux访问权限管理系统)服务:vim /etc/selinux/config SELINUX=disabled
开启时间同步服务器:service ntpd start
设置时间同步服务器开机自启:chkconfig ntpd on
•uplooking01免密码登录到uplooking02与uplooking03
1>生成公钥和私钥 ssh-keygen -t rsa
2>把自己的公钥文件(~/.ssh/id_rsa.pub)追加到需要
免密码登录的主机的认证文件(~/.ssh/authorized_keys)中
ssh-copy-id root@uplooking01
ssh-copy-id root@uplooking02
ssh-copy-id root@uplooking03
scp ~/.ssh/authorized_keys
•安装jdk:
先查询本机是否安装了jdk如果安装了先卸载:rpm -qa | grep jdk
查看当前Java版本: java -version
在uplooking01上进行操作:
①mkdir /software (在/目录下创建software文件夹)
②上传jdk的安装包到linux主机下的的 /software (Ctrl+Alt+F新建文件传输)
③tar -zxvf jdk-8u172-linux-x64.tar.gz -C /opt/ (解压安装包,先cd进software)
④mv jdk1.8.0_172/ jdk (重命名为jdk)
⑤配置环境变量
vim /etc/profile添加
export JAVA_HOME=/opt/jdk
export PATH=$PATH:$JAVA_HOME/bin
⑥使环境变量立刻生效
source /etc/profile
⑦远程发送uplooking01上已安装好的jdk和环境变量的配置
scp -r /opt/jdk root@uplooking02:/opt
scp -r /opt/jdk root@uplooking03:/opt
scp /etc/profile root@uplooking02:/etc/
scp /etc/profile root@uplooking03:/etc/
•安装mysql用于存储元信息:
在uplooking03操作:
首先查看是否安装了mysql,如果安装了先卸载:
rpm -qa|grep mysql
rpm -e mysql-libs-5.1.71-1.el6.x86_64 --nodeps
yum -y install mysql-server
service mysqld start
登录到mysql: mysql -uroot –p
修改mysql的密码: set password=password("root")
修改权限:
use mysql
delete from
delete from user where password = '‘;
update user set host='%' ;
flush privileges;
设置/proc/sys/vm/swappiness为0:(三台虚拟机都做)
vim /etc/sysctl.conf 添加并保存 vm.swappiness=0
重启或激活:sysctl –p
•关闭THP(所有机器都做):
透明大页的开启,同样会消耗掉大量的内容,(包括HDP和CDH)建议将其关闭,添加进/etc/rc.local
echo never>/sys/kernel/mm/redhat_transparent_hugepage/defrag
echo never >/sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never>/sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
好啦!这样一个简单的集群就搭好啦~~