相信大家都用过Windows的封装功能,可以为IT管理员减少很多工作量,那么我们的Linux系统否也可以像Windows系统一样封装成模板来使用呢?答案是肯定的。
将CentOS 8 Linux封装成模板,通常是为了在虚拟化环境中快速部署和管理多个相同的系统实例。
本次使用的环境是CentOS-Stream-8-x86_64-20221027-dvd1+VMware Workstation17.5,其它环境也能正常封装,同样适用于虚拟化平台,如VMware ESXI、华为、华三等,只要平台支持模板部署都能正常使用。
系统的安装,这里就不在详述,可参考文章:
1.删除系统ID:machine-id;machine-id为系统的唯一性ID,每台服务器系统应该唯一,解决系统ID冲突,删除即可
chmod 644 /etc/machine-id //此文件是只读文件需要加上所有者读写
vim /etc/machine-id //里面只有一行,删除即可
2.在/etc/profile文件最后添加:开机重启后,通过systemd-machine-id-setup 命令生成全新的machine-id
vim /etc/profile //在最后一行添加
systemd-machine-id-setup
3.清除udev:重启后系统会自动创建
rm -rf /etc/udev/rules.d/*
4.清除网卡配置:重启后生成新的网卡配置文件。
经过实际测试,这一步可有可无,如果用于生产环境,建议清除网卡配置文件。下面会讲到如何添加网卡配置文件。
rm -rf /etc/sysconfig/network-scripts/ifcfg-ens* //删除配置文件
5.清除ssh私钥文件:不同系统私钥应该不同,删除后重启自动生成全新的私钥
rm -vf /etc/ssh/ssh_host_*
6.清除系统中的旧日志:停止日志服务,并删除原有的旧日志。
systemctl stop systemd-journald.socket //停止日志服务
find /var/log -type f -exec rm {} \; //删除旧日志,记得要打分号。
7.清除所有用过的命令记录
cd /root ; rm -f .bash_history ; history -c //这是三个命令,可以一次性写完,也可以分成三步执行,分成三步执行容易理解。
8.最后一步,关闭系统
poweroff
9.创建快照
10.在虚拟机设置中“启用模板模式(用于克隆)”然后“确定”;
11.通过刚刚封装好的模板来创建新虚拟机
此时通过模板已经创建好虚拟机,开机测试
每克隆一个,生成的machine-id都会不一样,接下生成网卡配置文件
ifconfig //查看网卡物理名称
cd /etc/sysconfig/network-scripts/ //进入网卡配置目录查看
ls //
这里显示的是“ens160”
nmtui //如果没有此命令,请安装网络配置工具
yum install -y net-tools //安装网络命令组件
下面看图设置。
全部安装完成。