![Hadoop大数据技术开发实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/392/27563392/b_27563392.jpg)
2.1 系统环境配置
本节讲解在安装软件及搭建集群之前对CentOS 7系统环境的一些配置操作。
2.1.1 新建用户
本书中使用1.3节安装操作系统时新建的hadoop用户进行后续的操作,读者若想使用其他用户,可按照下面的步骤新建用户。
例如,新建用户tom:
(1)使用“su -”命令切换为root用户,然后执行以下命令:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4265.jpg?sign=1738974492-K8iO90MSkoXQfSPDe2lzHpC25I9xBu9g-0-7a9d28d11a77e71df3d501cc2bb33551)
(2)执行以下命令,设置用户tom的密码:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4272.jpg?sign=1738974492-PV9TaEPfrVinYCV96vpufYHWYYob7nv7-0-1de061d3f45d7b4b103bcc21f0e39a6d)
到此,用户tom新建成功。
2.1.2 修改用户权限
为了使普通用户可以使用root权限执行相关命令(例如,系统文件的修改等),而不需要切换到root用户,可以在命令前面加入指令sudo。文件/etc/sudoers中设置了可执行sudo指令的用户,因此需要修改该文件,添加相关用户。
例如,使hadoop用户可以执行sudo指令,操作步骤如下:
使用“su -”命令切换为root用户,然后执行以下命令,修改文件sudoers:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4281.jpg?sign=1738974492-p39KD51nBrgU6b0rQ4uYS3Af0coPXBRZ-0-07ba0d4ad3909cb9fe89e1b3647b0f7c)
在文本root ALL=(ALL) ALL的下方加入以下代码,使hadoop用户可以使用sudo指令:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4288.jpg?sign=1738974492-vzwGpcvdzKUC7m7dtBt6DvuhrkQEximq-0-e31202323fd16c2cdb0da6c4cdffdce2)
执行sudo指令对系统文件进行修改时需要验证当前用户的密码,默认5分钟后密码过期,下次使用sudo需要重新输入密码。如果不想输入密码,则把上方的代码换成以下内容即可:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4295.jpg?sign=1738974492-5sTKMlr1izd2420sMiGmHdVPPtCwp04i-0-28aa0e83676d9a21fea6cac1cf00e5a5)
执行exit命令回到hadoop用户,此时使用root权限的命令只需要在命令前面加入sudo即可,无须输入密码。例如,以下命令:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P30_4302.jpg?sign=1738974492-dvuCKiOvPVJtK7jRFJXPYgvTGvfgyIKo-0-a36f5d4228754cc60ddfd5a45d9ca2ff)
注意
安装操作系统时创建的管理员用户hadoop,默认可以执行sudo指令,但需要验证hadoop用户的密码。可对其按照上面的步骤配置无须密码使用sudo指令。
2.1.3 关闭防火墙
集群通常都是内网搭建的,如果内网开启防火墙,内网集群通信则会受到防火墙的干扰,因此需要关闭集群中所有节点的防火墙。
执行以下命令关闭防火墙:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P31_4355.jpg?sign=1738974492-FFwC21JQHqZQXXOz6uChs8BVaTwVIg6m-0-f193a4391540b2859c3f9d2644201456)
然后执行以下命令,禁止防火墙开机启动:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P31_4362.jpg?sign=1738974492-x0ImKDHV9Rp0Ik9MfPIcCYG6Wj2zjeCa-0-bca38527f0be4fb6b62bbfdead6e2024)
若需要查看防火墙是否已经关闭,可以执行以下命令,查看防火墙的状态:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P31_4369.jpg?sign=1738974492-3CDFlzd6kQmQrQRuByG2FNrGuxQnfTux-0-59ef27c8900cf5d5723cb9180735d1e5)
此外,开启防火墙的命令如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P31_4376.jpg?sign=1738974492-Fbij1PzTykFHriGrsli6aTLuCBHtLdeq-0-544173e189ed15c9bb296741c6e9c5ab)
2.1.4 设置固定IP
为了避免后续启动操作系统后,IP地址改变了,导致集群间通信失败,节点间无法正常访问,需要将操作系统的IP状态设置为固定IP,具体操作步骤如下。
1. 查看VMware网关IP
单击VMware菜单栏中的【编辑】/【虚拟网络编辑器】,在弹出的【虚拟网络编辑器】窗口的上方表格中选择最后一行,即外部连接为【NAT模式】,然后单击下方的【NAT设置】按钮,如图2-1所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P31_4381.jpg?sign=1738974492-m6WY7BtfT9bITkPbS7rjneFzWkzP13bs-0-21cf76baf9395c84ae7d28a82904b162)
图2-1 选择外部NAT模式
在弹出的【NAT设置】窗口中,查看VMware分配的【网关IP】。可以看到,本例中的网关IP为192.168.170.2(网段为170),如图2-2所示。
需要注意的是,后续给VMware中的操作系统设置IP时,网关IP应与图2-2中的网关IP保持一致。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P32_4397.jpg?sign=1738974492-fOibORGulL6q968i2xxYRjsOujinUXll-0-875d4d8960b50245fe2ecdd43040f9ba)
图2-2 查看VMware网关IP
2. 配置系统IP
CentOS 7系统IP的配置方法有两种:桌面配置方式和命令行配置方式,下面分别进行讲解。
(1)桌面配置方式。
单击系统桌面右上角的倒三角按钮,在弹出的窗口中单击【有线设置】,如图2-3所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P32_4401.jpg?sign=1738974492-aPQb60YYfIYpVIdGJXcyWu7RJdibyobt-0-3e2ea27423697dacb9506367790db6ef)
图2-3 系统有线网络设置
在弹出的窗口中单击下方的【添加配置】按钮,如图2-4所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P33_4417.jpg?sign=1738974492-aivuz0cVosA2ex9mlq0D5jELt7ZBGMC4-0-8823c02cbd73b4963ca3950f64766bf9)
图2-4 添加网络配置
在弹出的【网络配置】窗口中,左侧选择【IPv4】,右侧的【地址】选择【手动】,如图2-5所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P33_4428.jpg?sign=1738974492-JchSUlkJCEucKrCrrRyq8JLKjwY3RMwW-0-14da6e6395a5d536c69621d3f7e7776f)
图2-5 网络连接信息配置界面
接着输入IP地址、网络掩码、网关和DNS服务器信息。IP地址可以自定义,范围在1~254之间,IP地址的网段应与网关一致,此处将IP地址设置为192.168.170.133。输入完毕后单击【添加】按钮,如图2-6所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P34_4442.jpg?sign=1738974492-JYcTT4Z3EDF5lGFa9JxlwzRmoFQ6e1mE-0-d8a85e4de1395b3f9ea352c8aedb198e)
图2-6 填写网络配置信息
(2)命令行配置方式。
在系统终端命令行窗口执行以下命令,修改文件ifcfg-ens33:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P34_4457.jpg?sign=1738974492-VRVMxEapwHiKwqyI84yHCbYPmXfEAbf3-0-791403848a5d6a3978e7db867ea9e2e5)
完整修改后的内容如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P34_4464.jpg?sign=1738974492-OAf6L0uqD6v1mrEgVZpTYWOvchB2L9l3-0-7a162dc354ac11c86589c19aaa810f69)
上述内容中,实线框标注的是修改的内容,虚线框标注的是添加的内容。
需要修改的属性及解析如下:
- BOOTPROTO:值static表示静态IP(固定IP),默认值是dhcp,表示动态IP。
- ONBOOT:yes表示开机启用本配置。
需要添加的属性及解析如下:
- IPADDR:IP地址。
- NETMASK:子网掩码。
- GATEWAY:默认网关。虚拟机安装的话,通常是2,即VMnet8的网关设置。
- DNS1:DNS 配置。虚拟机安装的话,与网关一致。若需要连接外网,需要配置DNS。
- DNS2:网络运营商公众DNS,此处也可省略。
修改完成后执行以下命令,重启网络服务,使修改生效:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P35_4619.jpg?sign=1738974492-N6d9WBrOVuVlPzIPF5sTTIRYPMDCapTs-0-5d5fae9049f868ed66a6392bb27e4ae0)
重启完成后,可以通过ifconfig命令或者以下命令,查看改动后的IP:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P35_4626.jpg?sign=1738974492-ORtJXjNcLDMC0DadJTIDqVm0III1rv0U-0-c9ce8d1f2277f9b5419d11618290d044)
在输出的信息中,若网卡ens33对应的IP地址已显示为设置的地址,说明IP修改成功,如图2-7所示。
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P35_4629.jpg?sign=1738974492-lTErTS1xs7XqNX0PXwrSgDE2KNDkdXht-0-3d1434c3b55d7c151078d6c822be62be)
图2-7 查看系统IP地址
3. 测试本地访问
在本地Windows系统打开cmd命令行窗口,使用ping命令访问虚拟机中操作系统的IP地址,命令如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P35_4643.jpg?sign=1738974492-AYbHSpwi8UbS8hDryK2eMcdTofefZrvg-0-b266c6c83e75f3fc5e6e17394c95a03a)
若能成功返回数据,说明从本地Windows可以成功访问虚拟机中的操作系统,便于后续从本地系统进行远程操作。
2.1.5 修改主机名
在分布式集群中,主机名用于区分不同的节点,方便节点之间相互访问,因此需要修改主机的主机名。
具体操作步骤如下:
(1)使用hadoop用户登录系统,进入系统的终端命令行,输入以下命令,查看主机名:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4667.jpg?sign=1738974492-9Pxjd3uL85psOSwT8g30SWxydtdRRdX0-0-03c51de198f74769bddebe0b07f7faa8)
从输出信息中可以看到,当前主机的默认主机名为localhost.localdomain。
(2)执行以下命令,设置主机名为centos01:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4680.jpg?sign=1738974492-cit2L9pZTXpynIPbHKoSJJvOypVnsANS-0-2fc3d00d6fbf71caba2ee494edb59ed6)
此时系统的主机名已修改为centos01,但是重启系统后修改将失效,要想永久改变主机名,需要修改/etc/hostname文件。
执行以下命令,修改hostname文件,将其中的默认主机名改为centos01:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4687.jpg?sign=1738974492-4io3VcuTo0WsA3Z42IfXG2HfVp9uR0kH-0-14cdc4eadfabc69d41e6525e4ddd79b7)
(3)执行reboot命令,重启系统使修改生效。
需要注意的是,修改主机名后需要重启操作系统才能生效。
2.1.6 新建资源目录
在目录/opt下创建两个文件夹softwares和modules,分别用于存放软件安装包和软件安装后的程序文件,命令如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4696.jpg?sign=1738974492-LhUMi3WGNNV3GTeZd66D04g1zEFnPKgp-0-93f73b68b460f9462233d12dceeb1001)
将目录/opt及其子目录中所有文件的所有者和组更改为用户hadoop和组hadoop,命令如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4709.jpg?sign=1738974492-BFdXGBLYkvg3tvVavJl2jfO7EJcYLFq3-0-d3065c5108b5ef272c9f5201f6c904f8)
查看目录权限是否修改成功,命令及输出信息如下:
![](https://epubservercos.yuewen.com/B7D09D/15825993105224906/epubprivate/OEBPS/Images/Figure-P36_4716.jpg?sign=1738974492-XVz82Us8Baluez1S31Ov2ZHl3OhbgR2x-0-88aca59643cfe554584e41bf8ca564cd)