Main installation logs available at:
/var/log/firstboot/cloudvm.log
Extract disks from the ISO:
mount -o loop VCSA.iso /mnt/vcsa
tar tvf /mnt/vcsa/vcsa/*.ova
Extract disk1 (OS) and disk2 (RPMs) from the OVA.
Import disks into Proxmox:
qm importdisk <VM-ID> VMware-vCenter-Server-Appliance-6.7.0.45000-16708996_OVF10-disk1.vmdk local-lvm
qm importdisk <VM-ID> VMware-vCenter-Server-Appliance-6.7.0.45000-16708996_OVF10-disk2.vmdk local-lvm
Then attach the disks:
qm set <VM-ID> --scsi0 local-lvm:vm-<VM-ID>-disk-0
qm set <VM-ID> --scsi1 local-lvm:vm-<VM-ID>-disk-1
Disks used:
- disk1: OS
- disk2: install media
Validated Proxmox VM configuration:
- CPU: host
- RAM: 12 GB
- SCSI: virtio-scsi-single
- Network: virtio
Disk mapping:
- scsi0 → OS
- scsi1 → install (RPMs)
Additional required disks (example):
qm set <VM-ID> --scsi2 local-lvm:26
qm set <VM-ID> --scsi3 local-lvm:26
qm set <VM-ID> --scsi4 local-lvm:11
qm set <VM-ID> --scsi5 local-lvm:11
qm set <VM-ID> --scsi6 local-lvm:16
qm set <VM-ID> --scsi7 local-lvm:11
qm set <VM-ID> --scsi8 local-lvm:1
qm set <VM-ID> --scsi9 local-lvm:11
qm set <VM-ID> --scsi10 local-lvm:11
qm set <VM-ID> --scsi11 local-lvm:103
qm set <VM-ID> --scsi12 local-lvm:52
qm set <VM-ID> --scsi13 local-lvm:11
qm set <VM-ID> --scsi14 local-lvm:6
qm set <VM-ID> --scsi15 local-lvm:103
qm set <VM-ID> --scsi16 local-lvm:154
Based on examples from:
- https://gist.github.com/aleks-mariusz/dd76477545bed0fe031230f65772192f
- https://gist.github.com/infernix/0377af0bc9012e3d5e5e
- https://github.com/jeffmcutter/vcsa_on_kvm
Inject configuration file before first boot:
guestfish -a /dev/pve/vm-<VM-ID>-disk-0 <<'EOF'
run
mount /dev/sda3 /
rm-f /var/install/settings.json
copy-in /tmp/settings.json /var/install
EOF
Configuration example:
{
"__version": "2.13.0",
"new_vcsa": {
"appliance": {
"thin_disk_mode": true,
"deployment_option": "small",
"name": "vcsa"
},
"network": {
"ip_family": "ipv4",
"mode": "static",
"ip": "192.168.X.X",
"dns_servers": ["X.X.X.X"],
"prefix": "24",
"gateway": "X.X.X.X",
"system_name": "vcsa.domain.local"
},
"os": {
"password": "StrongPassword!",
"ntp_servers": "X.X.X.X",
"ssh_enable": true
},
"sso": {
"password": "StrongPassword!",
"domain_name": "vsphere.local"
}
},
"ceip": {
"settings": {
"ceip_enabled": false
}
}
}
Read logs to verify installation completion:
guestfish -a /dev/pve/vm-<VM-ID>-disk-0 <<'EOF'
run
mount /dev/sda3 /
cat /var/log/firstboot/cloudvm.log
EOF
In our case, it ends with the following error:
Setting up subsequent boot script
Cannot set device ring parameters: Operation not supported
2026-03-30T09:39:26.199Z Running command: ['/usr/lib/vmware-vpx/config_sendmail.sh']
2026-03-30T09:39:26.881Z Done running command
2026-03-30T09:39:28.416Z: Pruning sensitive information.
2026-03-30T09:39:28.890Z: ERROR: Unable to prune sensitive information.Strangely, vCenter appears to be working correctly for now.
Works if:
- all disks are present at boot time
- settings.json is injected before startup
Fails if:
- missing disks
- incorrect mapping
- bus changed during setup
- incorrect network configuration
Nice work ! I haven't played very much with Proxmox so wasn't able to chime in/help much.. but i know this will be super helpful to more people than my post (since more people are using Proxmox rather than AlmaLinux). Great you were able to get this working!