Workflow for Server Upgrade

If client submits request for VM spec upgrade(reconfigure the VM), how am I going to set the request needs approval from admin side before they can proceed to upgrade the VM spec?

Also how am I going to make sure the VM only can upgrade to the spec that he/she requested before?