Hi Hadi,
There are a few pointers here.
A VM running a domain in Azure is like any machine you run on-premises. If you want to migrate to Azure, you can either migrate the VM you have now or, as I prefer, create a new VM in Azure and promote this to a domain controller. You can transfer the FSMO roles to the new VM when everything is working and remove the old domain controller.
When talking about domain controllers, you must ensure that you have covered everything about DNS, domain lookups, etc., so that clients will know the old domain controller is gone and can connect to the new one. Many environments directly use domain controllers as DNS servers, meaning you need to ensure that DHCP scopes are updated to point to the new domain controller.
The above is not a complete guide but a short description of migrating the service into Azure.
The second part of your question is that you want to move into a new domain name. This can be a good idea in some cases, but it requires a lot of work. There are tools out there, like Quest, that can ease the transition, but there is still work to be done. If you want this approach, all users, computers, and services must be migrated to the new domain.
https://www.quest.com/solutions/active-directory/active-directory-migration.aspx