创建自定义镜像最佳实践
更新时间:2024-04-12
新建BEC虚拟机实例
1. 登录百度智能云账号
2. 进入BEC控制台,创建BEC虚机实例
创建步骤请参考:https://cloud.baidu.com/doc/BEC/s/4kir7fw0t
3.在BEC控制台创建自定义虚机镜像
创建镜像步骤请参考:https://cloud.baidu.com/doc/BEC/s/bkkmlvq7e
4.Linux操作系统自定义镜像说明
Plain Text
1# 清理不必要的安装包,日志文件、临时文件,尽可能减少镜像体积;用户自己决定
2.....
3
4# 清理残留网络
5# Centos 8.x /BaiduLinux 操作系统的网络配置由network manager接管;需要清理镜像内残留的network网络配置,否则网络配置生效延迟
6rm -rf /etc/sysconfig/network-scripts/*
7
8# 清理Yum缓存包
9if grep -Eq "CentOS|BaiduLinux" /etc/os-release; then
10 yum clean all
11elif grep -q "Ubuntu" /etc/os-release; then
12 apt clean all
13else
14 echo "Unknown"
15fi
16
17# 清理cloud-init日志
18cloud-init clean
19
20# 清空非必要日志
21rm -f /var/log/cloud-init.log
22rm -f /var/log/cloud-init-output.log
23echo > /var/log/messages
24echo > /var/log/boot.log
25echo > /var/log/dmesg
26echo > /var/log/btmp
27echo > /var/log/wtmp
28rm -rf /opt/bcm-agent/log/*
29rm -rf /tmp/*
30
31# 压缩镜像, 剩余空间写0后再删除,后端制作镜像的时候可以进一步压缩减小镜像大小
32root_size=$(df -T / | grep -v Filesystem | grep dev | awk '{print $5}')
33avalsize=$((${root_size}/(1<<20)))
34dd if=/dev/zero of=./zero.img bs=1024M count=${avalsize}
35rm -rf ./zero.img
36
37# 清理执行日志
38rm -f /root/.bash_history
39history -c
5.Windows操作系统自定义镜像说明
Plain Text
1# 对系统盘(示例中: C盘)剩余空间写零,适合虚拟磁盘优化,方便后面进行镜像压缩
2$ sdelete64.exe -z c: