Promoting RSS nodes
Posted in 2020
Kirit Rana asked how to fail over to a DR site (IDS 12.10.FC12, RSS nodes ifxdb03/04) and revert later. Nagaraju Inturi and Art Kagel gave onmode -d sequences: RSS to HDR secondary, then primary, then ifxdb04 as secondary; return via oninit -PHY. Art warned of split brain if the old primary stayed up, suggesting ER to resync; Kirit chose the least painful option.
Auto-generated by Claude from the posts below — may be imperfect; read the full thread.
Topics: High Availability & Replication
Environment: IDS 12.10.FC12 running on CentOs 7.6.1810 Picture this... PROD | DR | ifxdb01 ifxdb02 | ifxdb03 ifxdb04 Pri Sec | RSS RSS | PROD site is Lost X X Promote ifxdb03 to Primar X X Promote ifxdb04 to HDR Secondary X X PROD site returns | So, I lose my PROD site and want to fail over over to my DR site making ifxdb03 the new Primary and ifxdb04 the new HDR Secondary. Can anyone confirm to me the sequence of steps (with commands) that I should be following to achieve this, as well as reverting to the original setup when the PROD site sparks into life again? Thanks in advance. ------------------------------ Kirit Rana Informix Engineer ------------------------------ #Informix
1. Promote
ifxdb03 to HDR secondary.
onmode -d secondary ifxdb012) Promote ifxdb03 from HDR secondary to primary
onmode -d make primary ifxdb033) Promote ifxdb04 from RSS to HDR secondary
onmode -d secondary ifxdb03
------------------------------Nagaraju Inturi
------------------------------
Kirit:
Close. Here are the steps as I see them:
Primary site goes down
Promote ifxdb03 to HDR Secondary (you cannot go directly from RSS to primary)
Promote ifxdb03 to HDR Primary
Promote ifxdb04 to HDR Secondary with ifxcb03 as Primary
Original prime site returns.
Assuming the newest logid that was on ifxdb03 at the time of the crash is still online:
Start ifxdb01 with: oninit -PHY
Promote ifxdb01 to RSS Secondary with ifxdb03 as Primary and let it catch up
Start ifxdb02 with: oninit -PHY
Reset ifxdb02 as RSS Secondary with ifxcb03 as Primary and let it catch up.
Demote ifxdb04 to RSS Secondary
Shutdown ifxdb03
Promote ifxdb01 to HDR Secondary
Promote ifxdb01 to Primary
Promote ifxdb02 to HDR Secondary
Start ifxdb03 with: oninit -PHY
Set ifxdb03 as RSS Secondary to ifxdb01
Reset ifxdb04 as RSS Secondary to idxdb01
If the newest log that ifxdb01 knew about is no longer online on ifxdb03 then you will have to restore ifxdb01 and ifxdb02 from an archive taken from ifxdb03 or using ifxclone.
Art
Art S. Kagel, President and Principal Consultant
ASK Database Management
www.askdbmgt.com
Blog:
http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves.
------Original Message------
Environment: IDS 12.10.FC12 running on CentOs 7.6.1810
Picture this...
PROD | DR
|
ifxdb01 ifxdb02 | ifxdb03 ifxdb04
Pri Sec | RSS RSS
|
PROD site is Lost X
X
Promote ifxdb03 to Primar X
X
Promote ifxdb04 to HDR Secondary X
X
PROD site returns |
So, I lose my PROD site and want to fail over over to my DR site making ifxdb03 the new Primary and ifxdb04 the new HDR Secondary. Can anyone confirm to me the sequence of steps (with commands) that I should be following to achieve this, as well as reverting to the original setup when the PROD site sparks into life again?
Thanks in advance.
------------------------------
Kirit Rana
Informix Engineer
------------------------------
#Informix
Thanks @Nagaraju Inturi, appreciated​​ ------------------------------ Kirit Rana ------------------------------
Well that's pretty comprehensive @Art Kagel ; I'll simulate this on a test rig. Let's say ifxdb01 and ifxdb02 were never down and just that network connectivity was lost to the PROD site. When connectivity is restored, what do how might ifxdb01 react now that ifxdb03 is also a Primary node? Thanks again ------------------------------ Kirit Rana ------------------------------
Kirit: Well, then you have the dreaded "split brain" problem. Three scenarios: Some users are still able to access ifxdb01/2 while others can only connect to ifxdb03/4 This is the hard one. In this case you have new transactions on two different primary servers. Some of which may clash (hopefully your normal mode of operations makes this unlikely). In that case the best solution would be to link the two "primary" servers via ER and let ER sync the two copies of the database. Once that is done you can convert ifxdb02 to an RSS secondary. If the changes create too many clashes you may have to resolve some of the clashes manually. Very painful. This is one reason to use Connection Manager to manage server promotions with additional out-of-network methods for multiple CM instances to coordinate with each other to prevent split brains. Even though it is still online, ifxdb01/2 is not reachable at all for any user transactions. This one is simple, you treat ifxdb01 & ifxdb02 as if they were offline and recover them appropriately once the network is back. Even though ifxdb01/2 and ifxdb03/4 are not on speaking terms, users can still get to ifxdb01/2 and no one can get to ifxdb03/4 This one is simple also, ignore that the backup site is unavailable and recover it when the network is repaired. ------------------------------ Art Kagel ------------------------------
Thanks @Art Kagel ​​, I elect to go with option 2; It's the least painful. ------------------------------ Kirit Rana ------------------------------
You HOPE you get #2. B^)​ ------------------------------ Art Kagel ------------------------------
LOL. Indeed. ------------------------------ Kirit Rana ------------------------------