We're slowly trying to move away from hardware dependence for our
servers and it looks like Xen is the path. Our primary goal is that if
a particular server fails, we can simply migrate the guest OSs to
another Xen node and the users will not experience any downtime. Plus
it should allow us to consolidate a few servers.
Our database needs aren't that great at the moment, less then 50
concurrent users even at the worst of times. But we might have
multi-gigabyte databases that will be queried in bursts and then left
alone for a few days. A single CPU is generally fast enough for us.
So our current thinking is:
- Place PG in a DomU that can be moved from host-to-host as needed
- Backend storage would be over a SAN (iSCSI, 9k jumbo frames, dedicated
NIC or bonded NICs for the SAN, dedicated switch or VLAN for the SAN)
- SAN unit itself would be DRBD'd to a 2nd SAN storage unit. That's
down the road a bit once we build out the first few Xen nodes.
What I'm not sure of:
- Maybe it's better to run PGSQL in Dom0, on 2 different Xen units that
are beefed up, with a few lighter DomU guest OSs running in the
background. Some sort of heartbeat software that allows the 2 Xen units
to grab the PGSQL's IP address as needed.
- Performance of PGSQL in a DomU. What are the gotchas? Do we need to
export PCI NICs to the PGSQL DomU?
(I have a lot of freedom to experiment. As long as services are up and
running and things are stable... We're going from individual machine
with DAS to a more clustered/virtual environment with SAN.)