Alibaba Cloud Linux 3(Kernel 5.10.x) 基于龙蜥社区社区系统 Anolis OS 构建,在兼容 RHEL/CentOS 生态的同时,为云上应用程序提供安全、稳定、高性能的定制化运行环境,并针对云基础设施进行了深度优化,为您打造更好的云上操作系统体验。Alibaba Cloud Linux 3 生命截止周期:2031-04-30
镜像准备
下载虚机磁盘镜像、及引导镜像
# 下载阿里云官方默认引导镜像 seed.img
wget https://alinux3.oss-cn-hangzhou.aliyuncs.com/seed.img
# 将其格式转换为 qcow2,便于虚机创建快照(img 格式不支持快照)
qemu-img convert -p -f raw -O qcow2 seed.img seed.qcow2
# 下载虚拟磁盘镜像,该镜像不可直接启动虚机,需要配置引导镜像
wget https://alinux3.oss-cn-hangzhou.aliyuncs.com/aliyun_3_x64_20G_nocloud_alibase_20230727.qcow2
mv aliyun_3_x64_20G_nocloud_alibase_20230727.qcow2 aliyun3.qcow2
创建虚机
1、虚机 xml 配置模板 alinux3.xml
<domain type='kvm'>
<name>alinux3</name>
<memory>4194304</memory><!-- 1 GB内存。 -->
<vcpu>4</vcpu>
<cpu mode='host-passthrough'><!-- 需要在对应架构的服务器上启动实例。 -->
</cpu>
<os>
<type arch='x86_64'>hvm</type><!-- 如果是ARM64架构的服务器,则需设置为arch='aarch64'。 -->
<boot dev='hd'/>
</os>
<clock sync="localtime"/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<!-- 通过 virsh shutdown 关闭该虚机 -->
<features>
<acpi/>
<apic/>
<pae/>
</features>
<devices>
<emulator>/usr/bin/kvm</emulator><!-- 请根据不同的操作系统设置对应的kvm路径。例如:Ubuntu对应的kvm路径是/usr/bin/kvm。 -->
<disk type='file' device='disk'><!-- 请根据镜像格式设置下面的type参数:qcow2对应type='qcow2'、vhd对应type='vpc'。 -->
<driver name='qemu' type='qcow2' cache='none' dataplane='off' io='native'/> <!-- 如果要创建qcow2快照,需要关闭dataplane。 -->
<source file='/mnt/vm/iso/alinux3.qcow2'/> <!-- 填写Alibaba Cloud Linux 3镜像的绝对路径。 -->
<target dev='vda' bus='virtio'/>
</disk>
<!-- 加入seed.img的信息。 -->
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/> <!-- raw 对应磁盘格式 img -->
<source file='/mnt/vm/iso/seed.qcow2'/> <!-- 填写seed镜像的绝对路径。 -->
<target dev='vdb' bus='virtio'/>
</disk>
<!-- 虚机网卡配置 -->
<interface type='bridge'>
<source bridge='br1'/> <!-- 桥接到宿主机网络,需先创建网桥 br1 -->
<!-- <source network='default'/> --> <!-- 默认 nat 网络 -->
<model type='virtio'/>
</interface>
<console type='pty'>
<target type='virtio' port='0'/>
</console>
<video>
<model type='cirrus' vram='9216' heads='1'/>
<alias name='video0'/>
</video>
<input type='tablet' bus='usb'/>
<input type='mouse' bus='ps2'/>
<!-- 通过 vnc 登录控制台,启用 sshd 服务的密码验证 -->
<graphics type='vnc' port='59120' autoport='no' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
</devices>
</domain>
2、创建虚机
virsh define alinux3.xml
virsh start alinux3
系统初始化
默认用户名是 alinux,密码是 aliyun。该信息由阿里官方默认引导镜像提供,可通过构建引导镜像,自定义虚机初始化配置信息
1、启用密码认证,默认未启用
# cat /etc/ssh/sshd_config
PasswordAuthentication yes
2、本系统镜像默认启用的服务
netstat -nltp
#> Active Internet connections (only servers)
#> Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
#> tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN 536/systemd-resolve
#> tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
#> tcp 0 0 0.0.0.0:20048 0.0.0.0:* LISTEN 1090/rpc.mountd
#> tcp 0 0 0.0.0.0:36081 0.0.0.0:* LISTEN 1073/rpc.statd
#> tcp 0 0 0.0.0.0:43957 0.0.0.0:* LISTEN -
#> tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1938/sshd
#> tcp 0 0 0.0.0.0:2049 0.0.0.0:* LISTEN -
#> tcp6 0 0 :::5355 :::* LISTEN 536/systemd-resolve
#> tcp6 0 0 :::111 :::* LISTEN 1/systemd
#> tcp6 0 0 :::20048 :::* LISTEN 1090/rpc.mountd
#> tcp6 0 0 :::42993 :::* LISTEN -
#> tcp6 0 0 :::2049 :::* LISTEN -
#> tcp6 0 0 :::33701 :::* LISTEN 1073/rpc.statd
# 通过如下命令关闭这些服务,世界瞬间清净了《此处有掌声...》
systemctl stop nfs-server.service systemd-resolved.service rpcbind.service
systemctl disable nfs-server.service systemd-resolved.service rpcbind.service
3、执行系统安全更新
dnf upgrade-minimal --security
Clone 虚机
通过 clone 操作,快速在本地内网环境,搭建多台测试服务器
1、执行 virt-clone 克隆时报错,根据报错提示,可通过 virsh edit n1 删除虚机 vdb disk device 配置(即系统引导盘镜像设备 seed.qcow2 )
virt-clone -o alinux3 -n n1 -f /mnt/vm1/n1.qcow2
#> WARNING Setting the graphics device port to autoport, in order to avoid conflicting.
#> ERROR missing source information for device vdb
2、再次执行克隆操作,就 Ok 了…
virt-clone -o alinux3 -n n1 -f /mnt/vm1/n1.qcow2
#>WARNING Setting the graphics device port to autoport, in order to avoid conflicting.
#>Allocating 'n1.#>qcow2' | 20 GB 00:00:42
#>Clone 'n1' created successfully.
3、克隆成功后,编辑虚机 n1 配置,将之前删除的引导镜像盘 vdb 添加回去即可
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/mnt/vm/iso/seed-n1.qcow2'/>
<target dev='vdb' bus='virtio'/>
</disk>
需要注意的是,引导镜像 seed.qcow2 不能被每个虚机共享,因此需对每虚机复制一份引导镜像文件 seed-n1.qcow2
参考
在本地使用 Alibaba Cloud Linux 3 镜像
在本地使用 Alibaba Cloud Linux 2 镜像