购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 Linux系统环境配置

为什么要进行Linux系统环境配置?

本节讲解在安装软件及搭建集群之前对CentOS 7系统环境的一些配置操作。

2.2.1 新建用户

本节使用2.1.3节安装操作系统时新建的hadoop用户进行后续的操作,读者若想使用其他用户,可按照下面的步骤新建用户。

例如,新建用户tom:

01 使用su -命令切换为root用户,然后执行以下命令:

     $ adduser tom

02 执行以下命令,设置用户tom的密码:

     $ passwd tom

到此,用户tom新建成功。

2.2.2 修改用户权限

为了使普通用户可以使用root权限执行相关命令(例如,系统文件的修改等),而不需要切换到root用户,可以在命令前面加入指令sudo。文件/etc/sudoers中设置了可执行sudo指令的用户,因此需要修改该文件,添加相关用户。

例如,使hadoop用户可以执行sudo指令,操作步骤如下:

01 使用su -命令切换为root用户,然后执行以下命令,修改文件sudoers:

     $ vi /etc/sudoers

02 在文本root ALL=(ALL) ALL的下方加入以下代码,使hadoop用户可以使用sudo指令:

     hadoop ALL=(ALL) ALL

03 执行sudo指令对系统文件进行修改时需要验证当前用户的密码,密码默认5分钟后过期,下次使用sudo需要重新输入密码。如果不想输入密码,则把上方的代码换成以下内容即可:

     hadoop ALL=(ALL) NOPASSWD:ALL

04 执行exit命令回到hadoop用户,此时要使用root权限只需要在命令前面加入sudo即可,无须输入密码。例如,以下命令:

     $ sudo cat /etc/sudoers

注意 安装操作系统时创建的管理员用户hadoop,默认可以执行sudo指令,但需要验证hadoop用户的密码。可按照上面的步骤配置为无须密码使用sudo指令。

2.2.3 关闭防火墙

集群通常都是由内网搭建的,如果内网开启防火墙,那么内网集群通信就会受到防火墙的干扰,因此需要关闭集群中所有节点的防火墙。

执行以下命令关闭防火墙:

     $ sudo systemctl stop firewalld.service

然后执行以下命令,禁止防火墙开机启动:

     $ sudo systemctl disable firewalld.service

若需要查看防火墙是否已经关闭,可以执行以下命令查看防火墙的状态:

     $ sudo firewall-cmd --state

此外,开启防火墙的命令如下:

     $ sudo systemctl start firewalld.service

2.2.4 设置固定IP

为了避免后续启动操作系统后IP地址改变,导致集群间通信失败、节点间无法正常访问,需要将操作系统的IP状态设置为固定IP,具体操作步骤如下。

1.查看VMware网关IP

01 单击VMware菜单栏中的【编辑】|【虚拟网络编辑器】命令,在弹出的【虚拟网络编辑器】窗口的上方表格中选择最后一行,即外部连接为【NAT模式】,然后单击下方的【NAT设置】按钮,如图2-32所示。

图2-32 选择外部NAT模式

02 在弹出的【NAT设置】窗口中,查看VMware分配的【网关IP】,如图2-33所示。可以看到,本例中的网关IP为192.168.170.2(网段为170,也可手动修改为其他网段,此处保持默认)。

图2-33 查看VMware网关IP

注意 后续给VMware中的操作系统设置IP时,网关IP应与图2-33中的网关IP保持一致。

2.配置系统IP

CentOS 7系统IP的配置方法有两种:桌面配置方式和命令行配置方式,下面分别进行讲解。

1)桌面配置方式

01 单击系统桌面右上角的倒三角按钮,在弹出的窗口中选择【有线设置】选项,如图2-34所示。

图2-34 系统有线网络设置

02 在弹出的窗口下方单击【添加配置】按钮,如图2-35所示。

图2-35 添加网络配置

03 在弹出的【网络配置】窗口中,左侧选择【IPv4】选项,右侧的【地址】选择【手动】。接着输入IP地址、网络掩码、网关和DNS服务器信息。IP地址可以自定义,范围为1~254,IP地址的网段应与网关一致,此处将IP地址设置为192.168.170.133。输入完毕后单击【添加】按钮,如图2-36所示。

图2-36 填写网络配置信息

2)命令行配置方式

01 在系统终端命令行窗口执行以下命令,修改文件ifcfg-ens33:

     $ sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33

完整修改后的内容如下:

上述内容中,实线框标注的是修改的内容,虚线框标注的是添加的内容。

修改的属性解析如下:

添加的属性解析如下:

02 修改完成后执行以下命令,重启网络服务,使修改生效:

     $ sudo service network restart

03 重启完成后,可以通过ifconfig命令或者以下命令,查看改动后的IP:

     $ ip addr

在输出的信息中,若网卡ens33对应的IP地址已显示为设置的地址,则说明IP修改成功,如图2-37所示。

图2-37 查看系统IP地址

3.测试本地访问

在本地Windows系统打开cmd命令行窗口,使用ping命令访问虚拟机中操作系统的IP地址,命令如下:

     $ ping 192.168.170.133

若能成功返回数据,则说明从本地Windows可以成功访问虚拟机中的操作系统,便于后续从本地系统进行远程操作。

2.2.5 修改主机名

在分布式集群中,主机名用于区分不同的节点,方便节点之间相互访问,因此需要修改主机的主机名。

具体操作步骤如下:

01 使用hadoop用户登录系统,进入系统的终端命令行,输入以下命令,查看主机名:

     $ hostname
     localhost.localdomain

从输出信息中可以看到,当前主机的默认主机名为localhost.localdomain。

02 执行以下命令,设置主机名为centos01:

     $ sudo hostname centos01

此时系统的主机名已修改为centos01,但是重启系统后修改将失效,要想永久改变主机名,需要修改/etc/hostname文件。执行以下命令,修改hostname文件,将其中的默认主机名改为centos01:

     $ sudo vi /etc/hostname

03 执行reboot命令,重启系统使修改生效。

注意 修改主机名后需要重启操作系统才能生效。

2.2.6 新建资源目录

01 在目录/opt下创建两个文件夹softwares和modules,分别用于存放软件安装包和软件安装后的程序文件,命令如下:

     $ sudo mkdir /opt/softwares
     $ sudo mkdir /opt/modules

02 将目录/opt及其子目录中所有文件的所有者和组更改为用户hadoop和组hadoop,命令如下:

     $ sudo chown -R hadoop:hadoop /opt/*

03 查看目录权限是否修改成功,命令及输出信息如下: AAhfRaeXqXAiqdvcYZRoWFut0wqDGnjymQ43/7CyjcNGfyG2Xsy1ggO1CCsdIlf/

     $ ll
     总用量 0
     drwxr-xr-x. 2 hadoop hadoop   6 3月   8 09:55 modules
     drwxr-xr-x. 2 hadoop hadoop   6 3月  26 2015 rh
     drwxr-xr-x. 2 hadoop hadoop 231 3月   8 09:07 softwares
点击中间区域
呼出菜单
上一章
目录
下一章
×