Expansion advices

Hi,
I'd like to get your advice on what would be the best way to expand a current setup.
Here is what we have at the moment:
1. Asterisk server (1), which is used as a IAX trunk for 2 vicidial servers. It has quad port T1 card, connected to our provider. It's not doing any transcoding.
Server is Dell 1750 1 x Xeon 2.4GHz, 1GB RAM. Loadavg is around 0.3-0.4 during busiest time.
2. Our main(old) vicidial server (2)- MySQL, Apache and Asterisk on a single server.
Dell 1850, 2 x 3.0GHz Xeon HT, 2GB RAM, 2 x 36GB SCSI disks in software RAID1. It's transcoding GSM-->ULAW. Recording only sales.
Currently we have 20 agents (group 1) on it without a problem. Loadavg is around 1.4-1.5 with rare spikes to around 2.5-2.8 with predictive dialing with max ratio 5.
3. New server (3)- another vicidial all-in-one setup. We have 10 agents (group 2) from another location using it.
Server is HP Polliant 320 G5, 1 x Quad Xeon 2.13GHz (one socket only), 2GB RAM, 2 x 160GB SATA disks in software RAID1, transcoding GSM->ULAW
Loadavg is below 0.6-0.8.
Server 2 and 3 are using the same Debian AMD64, same Apache, astguiclient versions (latest 2.0.5 svn). Only Asterisk is 1.2.26.2 on 2 and 1.2.30.2 on second. The 3 servers are in a local network and each has a second NIC with external IP. Agents are remotely and connect through internet.
Now group 1 needs to add another 15 agents in a few days, and possibly another 10 next month and I wonder what would be the best way to expand the current setup.
Need to preserve old campaigns data, logs etc. in the database.
Idea 1: Create another database asterisk_2 on server 3 and import all data from server 2 MySQL to it. Is the only change to be done in astguiclient.conf
VARDB_database => asterisk_2
Is database name 'asterisk' hardcoded anywhere?
Is it good idea to do so performance wise?
It seems to me the easiest way to preserve all data if database name is only in astguiclient.conf and performance will not suffer when having 2 separate databases for both servers.
Idea 2: Merge the two databases
I am not sure what would happen to some of the tables such as recording_log or vicidial_agent_log, which have auto incremented values.
I guess this is better variant for future expansions.
Idea 3: your one...
We would also buy a second CPU for server 1 and let it do all the transcoding, as well as extra RAM for server 3.
What do you think would be the best option? What else could be done?
Would server 2 actually handle ~40-45 agents if database and apache are on server 3?
I'd like to get your advice on what would be the best way to expand a current setup.
Here is what we have at the moment:
1. Asterisk server (1), which is used as a IAX trunk for 2 vicidial servers. It has quad port T1 card, connected to our provider. It's not doing any transcoding.
Server is Dell 1750 1 x Xeon 2.4GHz, 1GB RAM. Loadavg is around 0.3-0.4 during busiest time.
2. Our main(old) vicidial server (2)- MySQL, Apache and Asterisk on a single server.
Dell 1850, 2 x 3.0GHz Xeon HT, 2GB RAM, 2 x 36GB SCSI disks in software RAID1. It's transcoding GSM-->ULAW. Recording only sales.
Currently we have 20 agents (group 1) on it without a problem. Loadavg is around 1.4-1.5 with rare spikes to around 2.5-2.8 with predictive dialing with max ratio 5.
3. New server (3)- another vicidial all-in-one setup. We have 10 agents (group 2) from another location using it.
Server is HP Polliant 320 G5, 1 x Quad Xeon 2.13GHz (one socket only), 2GB RAM, 2 x 160GB SATA disks in software RAID1, transcoding GSM->ULAW
Loadavg is below 0.6-0.8.
Server 2 and 3 are using the same Debian AMD64, same Apache, astguiclient versions (latest 2.0.5 svn). Only Asterisk is 1.2.26.2 on 2 and 1.2.30.2 on second. The 3 servers are in a local network and each has a second NIC with external IP. Agents are remotely and connect through internet.
Now group 1 needs to add another 15 agents in a few days, and possibly another 10 next month and I wonder what would be the best way to expand the current setup.
Need to preserve old campaigns data, logs etc. in the database.
Idea 1: Create another database asterisk_2 on server 3 and import all data from server 2 MySQL to it. Is the only change to be done in astguiclient.conf
VARDB_database => asterisk_2
Is database name 'asterisk' hardcoded anywhere?
Is it good idea to do so performance wise?
It seems to me the easiest way to preserve all data if database name is only in astguiclient.conf and performance will not suffer when having 2 separate databases for both servers.
Idea 2: Merge the two databases
I am not sure what would happen to some of the tables such as recording_log or vicidial_agent_log, which have auto incremented values.
I guess this is better variant for future expansions.
Idea 3: your one...
We would also buy a second CPU for server 1 and let it do all the transcoding, as well as extra RAM for server 3.
What do you think would be the best option? What else could be done?
Would server 2 actually handle ~40-45 agents if database and apache are on server 3?