1. 服务器密码
  2. root密码:123456
  3. lkx密码:417

环境要求

使用VMware虚拟机搭建基于CentOS7.5的Hadoop环境:

  • cpu核数(需要搭建3台Hadoop组成集群,加上Windows本机,所以可以分配的数量为本机的cpu核数除以4)
  • 内存至少4G
  • 硬盘最少50G

CentOS 7.5,即官方的 CentOS-7-xxxxxx-1804 版本。

创建虚拟机

  1. 新建虚拟机,选择自定义(高级)
  2. 硬件兼容性默认
  3. 选择稍后安装操作系统
  4. 客户机操作系统选择Linux->CentOS7 64位
  5. 配置虚拟机名称、存储位置
  6. 处理器数量1,每个处理器内核数2.(本机总共有4核,8个逻辑处理器)
  7. 配置虚拟机内存 4G
  8. 网络类型默认的NAT
  9. IO类型、磁盘类型默认
  10. 选择创建新虚拟磁盘
  11. 磁盘容量设置为 60G,默认将虚拟磁盘拆分成多个文件不用变
  12. 创建的磁盘文件配置到指定目录
  13. 完成

    安装CentOS

  14. 配置CD/DVD使用的iso文件指向下载好的 CentOS 7.5 系统镜像

  15. 启动虚拟机
  16. 选择安装CentOS7
  17. 虚拟机自动进入图形界面安装
  18. 选择中文(安装过程中使用的语言,不代表操作系统的语言),继续
  19. 修改时区、日期和时间
  20. 软件选择可以选择最小安装或者GNOME 桌面安装,本次选择桌面版
  21. 选择安装位置,我要分配分区进行手动分区,大小可以参考以下配置:
    • /boot:1g(如果是最小化安装,/boot只有150多Mb),文件系统配置为ext4
    • swap分区:4g
    • /:剩余空间分给根分区,文件系统默认xfr就行
  22. 自己实验用的虚拟机,KDUMP可以禁用kdump以节省资源。(kdump是系统崩溃前捕获系统信息,用于诊断崩溃原因,但是需要预留一部分系统内存)
  23. 网络和主机名称配置主机名称、网络。主机名例如设置为hadoop100
  24. SECURITY POLICY安全策略默认打开即可
  25. 然后便可以点击安装
  26. 安装的过程中可以配置root密码
  27. 等安装完成,点击重启
  28. 重启进来之后,点开许可协议,选择我同意许可协议
  29. 点击完成配置
  30. 选择中文、汉语、打开位置、选择上海时区、跳过在线账号
  31. 创建一个用户,例如tengyer,设置密码tengyer
  32. 开始使用

    配置网络静态IP

  33. 配置hostname,检查/etc/hostname中的主机名配置信息,例如将主机名配置为hadoop100(后面的几台集群中主机为hadoop101、hadoop102、hadoop103组成集群)

  34. 配置IP为静态IP,默认的为DHCP动态获取。修改/etc/sysconfig/network-scripts/ifcfg-ens33: ```java TYPE=”Ethernet” PROXY_METHOD=”none” BROWSER_ONLY=”no”

    将DHCP动态获取修改为static静态IP

    BOOTPROTO=”static” DEFROUTE=”yes” IPV4_FAILURE_FATAL=”no” IPV6INIT=”yes” IPV6_AUTOCONF=”yes” IPV6_DEFROUTE=”yes” IPV6_FAILURE_FATAL=”no” IPV6_ADDR_GEN_MODE=”stable-privacy” NAME=”ens33” UUID=”b77a5288-57bc-4564-a2d2-3c12ab2395a9” DEVICE=”ens33” ONBOOT=”yes”

    其他保持默认即可

然后添加以下配置(根据虚拟机实际情况进行配置)

ip

IPADDR=192.168.10.100

网关(可以在VMware虚拟网络编辑器的NAT模式中 NAT设置 里面查找到)

GATEWAY=192.168.10.2

DNS

DNS1=192.168.10.2

  1. 3. 配置hosts映射,,将集群中的主机添加进来,/etc/hosts
  2. ```java
  3. 192.168.10.100 hadoop100
  4. 192.168.10.101 hadoop101
  5. 192.168.10.102 hadoop102
  6. 192.168.10.103 hadoop103
  7. 192.168.10.104 hadoop104
  8. 192.168.10.105 hadoop105
  1. 在Windows系统中,也将Hosts映射加入进来。C:\Windows\System32\drivers\etc\hosts文件(由于win权限问题,可以将文件先移动到桌面进行修改,然后在移回)
  2. 配置好网络,使用reboot重启使其生效,或者 systemctl restart network (如果修改了hostname需要reboot)
  3. 重新进来后,使用ifconfig判断网络配置是否生效,ping一个外部网站查看是否可以连网
  4. Windows网络设置,高级网络设置,更改适配器选项,VMware Network Adapter VMnet8 设置

image.png

安装epel-release

Extra Packages for Enterprise Linux是为“红帽系”的操作系统提供额外的软件包,适用于 RHEL、CentOS和Scientific Linux。相当于是一个软件仓库,大多数 rpm 包在官方 repository 中是找不到的。

  1. yum install -y epel-release

如果Linux安装的是最小系统板,还需要安装net-tool、vim等常用工具:

  1. # 安装ifconfig命令
  2. yum install -y net-tools
  3. # 安装vim编辑器
  4. yum install -y vim

关闭防火墙

关闭防火墙,关闭防火墙的开机自启:

  1. systemctl stop firewalld
  2. systemctl disable firewalld.service

将自己创建的用户加入sudoers

如果安装的桌面版,在安装过程就会让创建一个非root用户。
如果安装的最小系统版,则可以手工执行命令创建一个非root用户,例如:

  1. useradd kaixin
  2. passwd 417860634

将该用户加入sudoers中,方便后续添加sudo执行命令。
编辑/etc/sudoers文件(该文件默认只读,需要先添加写权限),在%wheel用户执行命令权限下面添加一行:

  1. %wheel ALL=(ALL) ALL
  2. # 在%wheel下面添加,不要直接加载 root下面。因为所有用户都属于wheel组,如果放到了root下面(%wheel上面),那么执行了NOPASSWD:ALL免密之后,程序走到%wheel时就又会被覆盖回需要密码
  3. kaixin ALL=(ALL) NOPASSWD:ALL

创建文件夹,准备环境

在/opt下创建文件夹module、software:

  1. # 软件安装位置
  2. sudo mkdir module
  3. # 软件安装包存放位置
  4. sudo mkdir software
  5. sudo chown kaixin:kaixin module/ software/

卸载自带的JDK

检查系统中自带的JDK:

  1. rpm -qa | grep -i java

卸载自带的JDK:(需要以root用户运行)

  1. # grep -i 忽略大小写
  2. # xargs 将前面的输出结果作为命令的参数
  3. # -n1 每次只取一个结果作为命令参数。如果不加,则会将所有结果以空格分隔拼接作为命令的参数
  4. # rpm -e --nodeps:不验证套件档的相互关联性进行卸载
  5. rpm -qa | grep -i java | grep -v ".noarch" | xargs -n1 rpm -e --nodeps

克隆虚拟机

因为我们要搭建集群,所以需要再克隆出几台虚拟机出来。
将hadoop100虚拟机关机,然后创建完整克隆。克隆出hadoop102、hadoop103、hadoop104几台主机。(hadop101用于后面搭建伪分布式,分析源码,本次先不搭建进集群中)。
克隆完成之后,还需要依次修改hadoop102、hadoop103、hadoop104的ip和hostname。