Informix Hardware setup help
Posted in 2000
A DBA planning for IDS 9.2 on Solaris with 4000-6000 concurrent users asked whether multiple Sun servers could share one database on a fibre-attached EMC array (Oracle OPS-style), plus Veritas clustering. Replies were clear: Informix instances on separate machines cannot share the same storage. Recommended instead were HDR (or Enterprise Replication) between two boxes with their own storage, bigger servers, and a connection multiplexer for the login load; synonyms/remote tables were deemed workable but harder to tune. HDR requires matching OS and disk layout but not identical models, and asynchronous HDR was said to perform well. No final decision is recorded; questions on index replication overhead went unanswered.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Installation, Setup & Upgrades, Server Administration, Platform-Specific Issues, Clustering, Grid & MACH11
Hi all, My boss has just finished a new design layout to handle our proposed upgrade in users and dataflow. We will be running Informix 9.2 on Solaris 5.7 and expect between 4000 and 6000 users to be hitting the system at anytime. Here is an excerpt from the new design: This will require having 2 (or more) Sun servers (4500's now, but may change), and an EMC Clariion with mirrored disks attached via Fibre Channel and Veritas cluster and eventually Veritas backup. One problem has to do with having the ability to share disk resources across multiple systems from Informix. I know Oracle has the OPS with Distributed Lock manager that allows multiple systems to share the same db. I would appreciate anyone's thoughts on this setup. Most of you have been doing this much longer than I, and I trust and value your opinions. One issue that struck me: How can we have Informix setup on many servers, all linking to the same database (stored on the EMC)? Wouldn't we need separate onconfig files for each machine, and therefore each machine would be a separate instance? Since every user is accessing the same data, doesn't that mean they all must be running on the same instance??? (Or has the stress of the holidays finally clouded my brain entirely? :-)) Thanks for any assistance, Michael Hoffman
In the year of Our Lord 28 Dec 2000 20:51:29 GMT, Michael Hoffman <mrh@panix.com> broke a vow of silence to utter: > >Hi all, > My boss has just finished a new design layout to handle our proposed >upgrade in users and dataflow. We will be running Informix 9.2 on Solaris 5.7 >and expect between 4000 and 6000 users to be hitting the system at anytime. Nice load. Website? >Here is an excerpt from the new design: > This will require having 2 (or more) Sun servers (4500's now, but > may change), and an EMC Clariion with mirrored disks attached via > Fibre Channel and Veritas cluster and eventually Veritas backup. > > One problem has to do with having the ability to share disk > resources across multiple systems from Informix. I know Oracle has > the OPS with Distributed Lock manager that allows multiple systems > to share the same db. > > >I would appreciate anyone's thoughts on this setup. Most of you have been >doing this much longer than I, and I trust and value your opinions. > >One issue that struck me: How can we have Informix setup on many servers, >all linking to the same database (stored on the EMC)? Wouldn't we need >separate onconfig files for each machine, and therefore each machine would be >a separate instance? Since every user is accessing the same data, doesn't >that mean they all must be running on the same instance??? I have done a similar thing once before, with very similar load. What we did was: E6500 with 12 CPUs and a local RAID 10 array -- HDR Primary and update server. E4500 with 10 CPUs and a local RAID 10 array -- HDR secondary and read-only server. You can make a Sun cluster, but I really wouldn't go for it. But that's just an opinion. :-) >(Or has the stress of the holidays finally clouded my brain entirely? :-)) Stress? Ah, the wonderful opportunities for pay increases.... :-)
You CANNOT have two machines running instances of Informix accessing the same storage! Get a couple of BIG momma machines (E8000 or E10000) with separate storage, and use HDR or EDR to replicate from one to the other (depending on whether you want the second machine as a failover only or for normal use for load balancing also). EDR will also allow you the flexibility to add a third or fourth machine later. To handle the large load get a pair of small machines and run Informix's new connection server there to multiplex a smaller number of server connections. Art S. Kagel Michael Hoffman wrote: > > Hi all, > My boss has just finished a new design layout to handle our proposed > upgrade in users and dataflow. We will be running Informix 9.2 on Solaris 5.7 > and expect between 4000 and 6000 users to be hitting the system at anytime. > > Here is an excerpt from the new design: > This will require having 2 (or more) Sun servers (4500's now, but > may change), and an EMC Clariion with mirrored disks attached via > Fibre Channel and Veritas cluster and eventually Veritas backup. > > One problem has to do with having the ability to share disk > resources across multiple systems from Informix. I know Oracle has > the OPS with Distributed Lock manager that allows multiple systems > to share the same db. > > I would appreciate anyone's thoughts on this setup. Most of you have been > doing this much longer than I, and I trust and value your opinions. > > One issue that struck me: How can we have Informix setup on many servers, > all linking to the same database (stored on the EMC)? Wouldn't we need > separate onconfig files for each machine, and therefore each machine would be > a separate instance? Since every user is accessing the same data, doesn't > that mean they all must be running on the same instance??? > > (Or has the stress of the holidays finally clouded my brain entirely? :-)) > > Thanks for any assistance, > Michael Hoffman
In the year of Our Lord Thu, 28 Dec 2000 18:01:14 -0500, "Art S. Kagel" <kagel@bloomberg.net> broke a vow of silence to utter: >You CANNOT have two machines running instances of Informix accessing the >same storage! Get a couple of BIG momma machines (E8000 or E10000) with >separate storage, and use HDR or EDR to replicate from one to the other >(depending on whether you want the second machine as a failover only or >for normal use for load balancing also). EDR will also allow you the >flexibility to add a third or fourth machine later. But be warned -- setting up the rules for collision handling in EDR are more work than some people want to put in and also don't allow for linear scalability when you add servers. Just to clarify my earlier post-- you can set up a Sun cluster, but it's just for resilience. I've seen a site serve the number of connections you want with an E6500 and an E4500, but you'd probably be better off with a pair of 6500s or something like that. >To handle the large load get a pair of small machines and run Informix's >new connection server there to multiplex a smaller number of server >connections. Oh yeah, good point. There's an absolute limit on the number of client connections a Sun (or probably any) box will allow. >Art S. Kagel > >Michael Hoffman wrote: >> >> Hi all, >> My boss has just finished a new design layout to handle our proposed >> upgrade in users and dataflow. We will be running Informix 9.2 on Solaris 5.7 >> and expect between 4000 and 6000 users to be hitting the system at anytime. >> >> Here is an excerpt from the new design: >> This will require having 2 (or more) Sun servers (4500's now, but >> may change), and an EMC Clariion with mirrored disks attached via >> Fibre Channel and Veritas cluster and eventually Veritas backup. >> >> One problem has to do with having the ability to share disk >> resources across multiple systems from Informix. I know Oracle has >> the OPS with Distributed Lock manager that allows multiple systems >> to share the same db. >> >> I would appreciate anyone's thoughts on this setup. Most of you have been >> doing this much longer than I, and I trust and value your opinions. >> >> One issue that struck me: How can we have Informix setup on many servers, >> all linking to the same database (stored on the EMC)? Wouldn't we need >> separate onconfig files for each machine, and therefore each machine would be >> a separate instance? Since every user is accessing the same data, doesn't >> that mean they all must be running on the same instance??? >> >> (Or has the stress of the holidays finally clouded my brain entirely? :-)) >> >> Thanks for any assistance, >> Michael Hoffman
Thanks for the explanations, and thank you Art for confirming I still have a
grip on reality.
Since we are basically locked into using the ECM data storage system, it would
seem that HDR and EDR will not be effective. All servers will be linking to
the ECM (we have many different systems running and users can log into any of
the available servers. All data and programs must be accessible by every
server).
Obnoxio mentioned that a Sun cluster was possible, but seemed to suggest not
the best option. We looked at Sun's clustering application and, from what I've
been told, quickly ran away and picked Veritas's clustering solution instead.
What we are most concerned about is one login server crashing. The users will
need to be able to log in again, and will automatically be routed to one of the
other running servers, and MUST have access to all the data immediately.
Someone, through email, suggested setting up instances of Informix on each
server, but instead of creating the tables, to use synonyms instead. Will this
work effectively? Does the use of synonyms slow down processing times?
Finally, and this was just a brainstorm: what would happen if I created
instances on each additional server and loaded the exact same dbschema, but
instead of pointing to the ECM, I pointed to some raw slices. I wouldn't load
any data to these tables. If the main server crashed, wouldn't I be able to
start one of these other instances and just repoint (via the symbolic links)
the engine to the ECM storage? Since all of the system tables will be on the
ECM system also, shouldn't the newly started instance forget it's original
setup and use the ECM data just fine? (Ok, now I think I may have totally lost
my mind :-))
Thanks,
Michael Hoffman
In <3a4bcb36.547913327@News.CIS.DFN.DE> article, Obnoxio The Clown mentioned that:
: In the year of Our Lord Thu, 28 Dec 2000 18:01:14 -0500, "Art S. Kagel"
: <kagel@bloomberg.net> broke a vow of silence to utter:
:>You CANNOT have two machines running instances of Informix accessing the
:>same storage! Get a couple of BIG momma machines (E8000 or E10000) with
:>separate storage, and use HDR or EDR to replicate from one to the other
:>(depending on whether you want the second machine as a failover only or
:>for normal use for load balancing also). EDR will also allow you the
:>flexibility to add a third or fourth machine later.
: But be warned -- setting up the rules for collision handling in EDR are more
: work than some people want to put in and also don't allow for linear scalability
: when you add servers. Just to clarify my earlier post-- you can set up a Sun
: cluster, but it's just for resilience.
: I've seen a site serve the number of connections you want with an E6500 and an
: E4500, but you'd probably be better off with a pair of 6500s or something like
: that.
:>To handle the large load get a pair of small machines and run Informix's
:>new connection server there to multiplex a smaller number of server
:>connections.
: Oh yeah, good point. There's an absolute limit on the number of client
: connections a Sun (or probably any) box will allow.
:>Art S. Kagel
:>
:>Michael Hoffman wrote:
:>>
:>> Hi all,
:>> My boss has just finished a new design layout to handle our proposed
:>> upgrade in users and dataflow. We will be running Informix 9.2 on Solaris 5.7
:>> and expect between 4000 and 6000 users to be hitting the system at anytime.
:>>
:>> Here is an excerpt from the new design:
:>> This will require having 2 (or more) Sun servers (4500's now, but
:>> may change), and an EMC Clariion with mirrored disks attached via
:>> Fibre Channel and Veritas cluster and eventually Veritas backup.
:>>
:>> One problem has to do with having the ability to share disk
:>> resources across multiple systems from Informix. I know Oracle has
:>> the OPS with Distributed Lock manager that allows multiple systems
:>> to share the same db.
:>>
:>> I would appreciate anyone's thoughts on this setup. Most of you have been
:>> doing this much longer than I, and I trust and value your opinions.
:>>
:>> One issue that struck me: How can we have Informix setup on many servers,
:>> all linking to the same database (stored on the EMC)? Wouldn't we need
:>> separate onconfig files for each machine, and therefore each machine would be
:>> a separate instance? Since every user is accessing the same data, doesn't
:>> that mean they all must be running on the same instance???
:>>
:>> (Or has the stress of the holidays finally clouded my brain entirely? :-))
:>>
:>> Thanks for any assistance,
:>> Michael Hoffman
In the year of Our Lord 29 Dec 2000 16:56:22 GMT, Michael Hoffman
<mrh@panix.com> broke a vow of silence to utter:
>Thanks for the explanations, and thank you Art for confirming I still have a
>grip on reality.
>
>Since we are basically locked into using the ECM data storage system, it would
>seem that HDR and EDR will not be effective. All servers will be linking to
>the ECM (we have many different systems running and users can log into any of
>the available servers. All data and programs must be accessible by every
>server).
>
>Obnoxio mentioned that a Sun cluster was possible, but seemed to suggest not
>the best option. We looked at Sun's clustering application and, from what I've
>been told, quickly ran away and picked Veritas's clustering solution instead.
Well, AFAIK it won't give you the ability to share data. Have you looked at XPS?
>What we are most concerned about is one login server crashing. The users will
>need to be able to log in again, and will automatically be routed to one of the
>other running servers, and MUST have access to all the data immediately.
A "Sun cluster" will allow this, XPS won't. Nothing I've seen in your post would
preclude HDR -- why not use that? Set up the second box as a read server and off
you go. And if you need to failover, it's relatively painless. To be honest, I
haven't seen much that a Sun cluster can do that HDR can't busk for a lot less
money and effort. :-)
>Someone, through email, suggested setting up instances of Informix on each
>server, but instead of creating the tables, to use synonyms instead. Will this
>work effectively? Does the use of synonyms slow down processing times?
I don't think it'll slow things down much, I've already been to this party too.
However, tracking down performance problems is "fun" and God help you if you get
versions seriously out of sync. Also, we moved from this to HDR, and were much
happier with performance and resilience.
>Finally, and this was just a brainstorm: what would happen if I created
>instances on each additional server and loaded the exact same dbschema, but
>instead of pointing to the ECM, I pointed to some raw slices. I wouldn't load
>any data to these tables. If the main server crashed, wouldn't I be able to
>start one of these other instances and just repoint (via the symbolic links)
>the engine to the ECM storage? Since all of the system tables will be on the
>ECM system also, shouldn't the newly started instance forget it's original
>setup and use the ECM data just fine? (Ok, now I think I may have totally lost
>my mind :-))
It would probably work, if I understand you correctly, but I doubt it's
supported.
Are all your systems available on all servers?
Thanks for the in depth responses, Obnoxio (hey, any chance there is a real
name behind this mask? My boss laughed when I told him I was getting advice
from "Obnoxio the Clown". His full response besides the laughter was "You
mean that's not your pseudonym?").
I keep reading that HDR is extremely picky about the setup of the 2 servers,
specifically the disk configuration, the OS, and event he model type. All must
be identical.
Now, I'm know relatively little about hardware, so this question may be
meaningless, but aren't the E4500 and E6500 2 different machines? How does HDR
handle that?
Oh, and we're not a website... yet. I'm not able to give out many details, but
we're in the financial area. We'll be providing up-to-the-millisecond data to
the users and taking orders based on such data.
Lastly, considering the urgency to keep the data flowing as quickly as
possible, how much delay does Synchronous HDR put on the system? The 2 boxes
will, most probably unless we learn about some negatives, linked with a very
reliable Veritas cluster. They will be in close proximity to each other as
well. Network transmission time should be quite minimal.
I understand that the Secondary server doesn't rebuild the indexes as it adds
rows, instead it requests a full copy from the Primary server. Most of our
DB updates will be in the form of Inserts (not Updates), so the indexes are
constantly being modified. Will this cause HDR to kill our system performance
as it constantly requests, and waits for, the new indexes to be passed to the
Secondary server?
Thanks,
Michael Hoffman
In <3a4cc8e4.780432@News.CIS.DFN.DE> article, Obnoxio The Clown mentioned that:
: In the year of Our Lord 29 Dec 2000 16:56:22 GMT, Michael Hoffman
: <mrh@panix.com> broke a vow of silence to utter:
:>Thanks for the explanations, and thank you Art for confirming I still have a
:>grip on reality.
:>
:>Since we are basically locked into using the ECM data storage system, it would
:>seem that HDR and EDR will not be effective. All servers will be linking to
:>the ECM (we have many different systems running and users can log into any of
:>the available servers. All data and programs must be accessible by every
:>server).
:>
:>Obnoxio mentioned that a Sun cluster was possible, but seemed to suggest not
:>the best option. We looked at Sun's clustering application and, from what I've
:>been told, quickly ran away and picked Veritas's clustering solution instead.
: Well, AFAIK it won't give you the ability to share data. Have you looked at XPS?
:>What we are most concerned about is one login server crashing. The users will
:>need to be able to log in again, and will automatically be routed to one of the
:>other running servers, and MUST have access to all the data immediately.
: A "Sun cluster" will allow this, XPS won't. Nothing I've seen in your post would
: preclude HDR -- why not use that? Set up the second box as a read server and off
: you go. And if you need to failover, it's relatively painless. To be honest, I
: haven't seen much that a Sun cluster can do that HDR can't busk for a lot less
: money and effort. :-)
:>Someone, through email, suggested setting up instances of Informix on each
:>server, but instead of creating the tables, to use synonyms instead. Will this
:>work effectively? Does the use of synonyms slow down processing times?
: I don't think it'll slow things down much, I've already been to this party too.
: However, tracking down performance problems is "fun" and God help you if you get
: versions seriously out of sync. Also, we moved from this to HDR, and were much
: happier with performance and resilience.
:>Finally, and this was just a brainstorm: what would happen if I created
:>instances on each additional server and loaded the exact same dbschema, but
:>instead of pointing to the ECM, I pointed to some raw slices. I wouldn't load
:>any data to these tables. If the main server crashed, wouldn't I be able to
:>start one of these other instances and just repoint (via the symbolic links)
:>the engine to the ECM storage? Since all of the system tables will be on the
:>ECM system also, shouldn't the newly started instance forget it's original
:>setup and use the ECM data just fine? (Ok, now I think I may have totally lost
:>my mind :-))
: It would probably work, if I understand you correctly, but I doubt it's
: supported.
: Are all your systems available on all servers?
In the year of Our Lord 2 Jan 2001 18:45:30 GMT, Michael Hoffman <mrh@panix.com> broke a vow of silence to utter: >Thanks for the in depth responses, Obnoxio (hey, any chance there is a real >name behind this mask? My boss laughed when I told him I was getting advice >from "Obnoxio the Clown". His full response besides the laughter was "You >mean that's not your pseudonym?"). My name is Richard Head. My friends call me Dick. >I keep reading that HDR is extremely picky about the setup of the 2 servers, >specifically the disk configuration, the OS, and event he model type. All must >be identical. Model does not need to be identical. Disk layout, yes, and OS. >Now, I'm know relatively little about hardware, so this question may be >meaningless, but aren't the E4500 and E6500 2 different machines? How does HDR >handle that? They are different machines, two different models. >Oh, and we're not a website... yet. I'm not able to give out many details, but >we're in the financial area. We'll be providing up-to-the-millisecond data to >the users and taking orders based on such data. Right. >Lastly, considering the urgency to keep the data flowing as quickly as >possible, how much delay does Synchronous HDR put on the system? The 2 boxes >will, most probably unless we learn about some negatives, linked with a very >reliable Veritas cluster. They will be in close proximity to each other as >well. Network transmission time should be quite minimal. Do you really need Synchronicity? (I prefer the Police's older stuff, myself.) I helped set up a site that just used common-or-garden asynch HDR on a 100-MBit network (not a private subnet) and it runs like ... it runs well. >I understand that the Secondary server doesn't rebuild the indexes as it adds >rows, instead it requests a full copy from the Primary server. Most of our >DB updates will be in the form of Inserts (not Updates), so the indexes are >constantly being modified. Will this cause HDR to kill our system performance >as it constantly requests, and waits for, the new indexes to be passed to the >Secondary server? Pass. Madison can give a better answer, if he's not on leave. I think it's just a case of another one or two or three (or N) log records being passed through and applied.