DNS & apache/web sites on different server

I going to be switching form a dedicated server to using godaddy’s new virtual datacenter to manage my customers websites. Over 100 website. I am trying to work with virtualmin to set things up in a certain way.

—Please note that the ip examples and domains are fake and just examples—

Server 1 ip: I want to create a DNS server: ns1.example.com <–this machine will only handle dns/name server for our websites and have only the bind service running. I have already setup bind on this server and registered it with my domain registrar as a registered name server.

Server 2 ip: : I also want to have a separate server for our websites with apache running: examplehost.com. I have apache running on this server and configured correctly I believe. <–do i have to have bind setup on this as well?

I am having trouble getting this scenario to work properly.

I setup a new customer/virtual server on Server2 called acmecompany.com. If I also have bind also enable on Server two, I can look at the dns entries and it show them properly. acmecompany.com ns1.example.com and everything points to ip of Server 1.

However It does not work. I am trying to understand how these two server talk to each other when creating virtual server/new customers.

Any insight on how to properly setup this scenario would be great. Thanks