Finally, able to fix number of partition issues, however size of partition needs to be checked. Below is updated code, hope this helps. I will update if partition size is fixed as well.
d-i partman-auto/disk string /dev/sda d-i partman-auto/method string lvm d-i partman-lvm/device_remove_lvm boolean true d-i partman-md/device_remove_md boolean true d-i partman-auto-lvm/new_vg_name string main d-i partman-auto-lvm/guided_size string max d-i partman-auto/choose_recipe select multi d-i partman-auto-lvm/new_vg_name string vgroot d-i partman-auto/expert_recipe string \ boot-root :: \ 1024 10 1024 ext4 \ $primary{ } $bootable{ } \ method{ format } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /boot } \ . \ 100 11 -1 ext4 $primary{ } \ $defaultignore{ } \ method{ lvm } \ device{ /dev/sda } \ vg_name{ vgroot } \ . \ 4096 20 5120 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvopt } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /opt } \ . \ 1900 60 2000 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvhome } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /home } \ . \ 7168 30 8192 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvvar } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /var } \ . \ 4096 40 5120 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvtmp } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /tmp } \ . \ 4096 50 5120 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvvartmp } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ /var/tmp } \ . \ 2000 12 2000 linux-swap \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvswap } \ method{ swap } format{ } \ . \ 9216 15 10240 ext4 \ $lvmok{ } \ in_vg{ vgroot } \ lv_name{ lvroot } \ method{ lvm } format{ } \ use_filesystem{ } filesystem{ ext4 } \ mountpoint{ / } \ . \
d-i partman-partitioning/confirm_write_new_label boolean true d-i partman-lvm/confirm boolean true d-i partman-lvm/confirm_nooverwrite boolean true d-i partman-lvm/device_remove_lvm boolean true d-i partman/choose_partition select finish
Finally, able to fix number of partition issues, however size of partition needs to be checked. Below is updated code, hope this helps. I will update if partition size is fixed as well.
d-i partman-auto/disk string /dev/sda lvm/device_ remove_ lvm boolean true md/device_ remove_ md boolean true auto-lvm/ new_vg_ name string main auto-lvm/ guided_ size string max auto/choose_ recipe select multi auto-lvm/ new_vg_ name string vgroot auto/expert_ recipe string \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /boot } \
$defaultignore { } \
method{ lvm } \
device{ /dev/sda } \
vg_name{ vgroot } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvopt } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /opt } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvhome } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /home } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvvar } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /var } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvtmp } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /tmp } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvvartmp } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ /var/tmp } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvswap } \
method{ swap } format{ } \
$lvmok{ } \
in_vg{ vgroot } \
lv_name{ lvroot } \
method{ lvm } format{ } \
use_filesystem { } filesystem{ ext4 } \
mountpoint{ / } \
d-i partman-auto/method string lvm
d-i partman-
d-i partman-
d-i partman-
d-i partman-
d-i partman-
d-i partman-
d-i partman-
boot-root :: \
1024 10 1024 ext4 \
. \
100 11 -1 ext4 $primary{ } \
. \
4096 20 5120 ext4 \
. \
1900 60 2000 ext4 \
. \
7168 30 8192 ext4 \
. \
4096 40 5120 ext4 \
. \
4096 50 5120 ext4 \
. \
2000 12 2000 linux-swap \
. \
9216 15 10240 ext4 \
. \
d-i partman- partitioning/ confirm_ write_new_ label boolean true lvm/confirm_ nooverwrite boolean true lvm/device_ remove_ lvm boolean true choose_ partition select finish
d-i partman-lvm/confirm boolean true
d-i partman-
d-i partman-
d-i partman/