I have a VPS server running Ubuntu 11.04 with webmin installed on it. How can I add my
example.com domain to my VPS like the way we do on shared server via web panels such as cPanel and etc?
You have to be running Apache or another webserver on your VPS. Also you will need a DNS host for pointing the domain to the hosting, i recommend Cloudflare.com . You will also probably want MySQL and PHP installed.
Alternatively you can create your own DNS server with bind using this tutorial: http://www.wallpaperama.com/forums/how-to-add-a-domain-name-in-webmin-tutorials-guide-steps-t1706.html
Here is a good guide to setup apache and multiple domains with webmin. http://rimuhosting.com/howto/virtualhosting.jsp
Yes, it is basically done from Control Panel. Usually VSP providers do that for free, but you can do that manually.
Webmin is basically a free cPanel clone and should be able to set up sites for you - assuming it is installed correctly and you have your web server, dns, etc set up and running. Just log in to your Webmin control panel and create a new domain account. Then point your domains DNS at the VPS IP address. You'll then be able to access the domains own Webmin account and use ftp, email and so forth.
If your more familiar with cPanel, you might be more at home changing from Webmin to a cPanel VPS. You can get cPanel VPS licenses from about $15 per month or through your VPS provider. You can then administer your websites using that cPanel and the WHM (Web Host Manager) that comes with cPanel.
Other alternative control panels include Plesk and DirectAdmin, both of which have license fees similar to cPanel. Some people prefer them. Few people I know like webmin but it should work.
In addition, I'd suggest making a local clone of your server setup that you can play with without destroying your VPS. You can download vmware and create a virtual Ubuntu server on your home PC. Practice tweaking and configuring that home server and if everything is working do the same tweaks on the real VPS.
No need for any tools really. You don't even need to change your nameservers. You can do it with just an
A record(s) for the most part.
First log into your DNS zone manager. Then make an
A record pointing the domain to your server IP. Then make a www
CNAME record with an alias to that domain, as well as an MX of the same domain alias. On the server, use vhosts or htaccess to pick up the request for that said domain as it normally would, and route it into whatever app/folder/platform is going to use it.