【大数据】虚拟机Fusion初始化系统CentOS9
2025-03-12 16:12:33 #

大数据学习记录。

由于使用的Mac电脑,在虚拟中安装比较常用的CentOS7.x(目前公司用的系统也是这个),始终安装不上,再尝试使用CentOS9,可以安装上,且使用上与之前的大版本差别也不大。

Fusion & CentOS 均可在官方页面下载到,注意要下载相关芯片架构的版本。

1. 安装系统

创建虚拟机,将选择好镜像。选择如下操作系统(这一步应该没什么影响,因为已经有实际的镜像了)。

下一步,给了默认的配置,可能会不够用,所以加点配置。这里按自己电脑配置来。



然后启动虚拟机,选择默认项。

刚进入系统,选择语言。

再进行如下系统配置。

配置root用户,自己使用所以允许ssh直连。

配置普通用户,之后大部分操作都是在普通用户上执行的。

选择Server。不需要UI,最小安装则很多软件会缺。

安装目标位置,点进去后直接完成,用默认的就好。然后开始安装。安装完成后,点击重启系统,就安装完成了。

2. 系统配置

先创建一个快照保存一下,如果之后配置错了或者其他原因,可以回滚到这个快照。

image.png

接下来操作都是用root用户。

2.1 配置静态IP

2.1.1 Fusion & Mac 的配置

打开VM配置,到网络配置中。解锁后添加一个配置,默认配置名应该是vmnet2,或者其他的也没有关系,如下图。注意不要点上DHCP(动态配置)。

然后进入到/Library/Preferences/VMware\ Fusion/目录中。中间的 \ 是空格转义,不加的话找不到目录。

1
cd /Library/Preferences/VMware\ Fusion/

查看该目录下的networking文件。

VNET_2就是刚创建的,其中255.255.255.0是子网掩码,172.16.167.0是子网地址。

再进入当前目录下的vmnet2目录下,这个目录也是刚创建配置后才生成的。修改文件nat.conf。在修改可以前先做一个备份。

1
2
sudo cp nat.conf nat.conf.bak
sudo vim nat.conf

172.16.x.x172.31.x.x是私网地址(最经常见到应该是192.168开头的),第二个x使用2-254,其他地址默认作为一些设备的ip,或者是广播地址,会有冲突。

如上面的配置172.16.167.2。而子网掩码就依然如上。这里默认生成的其实就是可以使用的,不用修改。

2.1.2 CentOS的配置

在CentOS9中配置静态IP的位置在/etc/NetworkManager/system-connections/ens160.nmconnection

1
sudo vim /etc/NetworkManager/system-connections/ens160.nmconnection

[ipv4]

  • 修改method的值automanual
  • 添加address1=172.16.167.100/24,172.16.167.2
  • 添加dns=8.8.8.8;8.8.4.4;

address1是静态IP地址(和宿主机是同一个网段机172.16.167)和网关(刚设置宿主机的IP)的组合,以逗号分隔。dns是DNS服务器的地址,以分号分隔。

重启使配置生效。

1
reboot

具体虚拟机上修改配置,选择网络,选择刚创建的配置。

然后虚拟就可以通过配置的静态IP连上了。

2.2 修改主机名称

现在名称上上面一个图可以看到是localhost。

修改/etc/hostname文件,文件内容就是主机名,然后重启。

1
2
3
vim /etc/hostname
# ...
reboot

2.3 配置普通用户sudo免密

以上系统配置需要用root用户操作,其他的操作一般使用普通用户,但是用普通用户时也会经常需要sudo,为了方便则给该用户配置免密。

/etc/sudoers添加如下格式配置。

保存后,配置的用户就可以免密的使用sudo

2.4 配置ssh免密登入

之后搭建集群,需要同步集群文件或者其他操作,需要机器之间互相登入,每次输入密码太麻烦,所以配置免密登入。先克隆1台虚拟机。

按照之前的步骤修改静态IP以及主机名,重启后生效。

使用普通用户配置免密登入。

生成ssh key,一路回车即可。

1
ssh-keygen -t rsa 

将key发送到目标服务器。

1
ssh-copy-id lkzc19@172.16.167.42

除了其他机器配置免密登入,本级也要配置,因为之后执行脚本是全部机器都会执行,本机也会使用ssh执行脚本。

2.5 关闭防火墙

关闭防火墙以及禁用开机自启

1
2
sudo systemctl stop firewalld
sudo systemctl disable firewalld

2.6 创建软件放置目录

这算个人习惯。按我公司会在根目录下创建一个目录,修改其所属用户和所属组。

我则一般在/opt下创建目录module来放各种软件如 hadoop、flink。

1
2
3
4
cd /opt
sudo mkdir module software
sudo chown lkzc19:lkzc19 *
sudo groupmod -n vitamin lkzc19

在一开始初始化系统时创建了lkzc19这个用户,但是没有指定组名,所以默认组名与用户名一致。如果想修改组名可以使用groupmod命令。

0. 参考文档