cramer> Which interface takes over is specified using the "ifconfig" cramer> "partner" clause. Please note that vif partners MUST be specified cramer> using the interface name (e.g. vif0), not the interface address cramer> (e.g. 172.27.5.50). This was not clearly spelled out in the cramer> documentation, and it has tripped up a number of people.
Brian> Hrm, I'm not sure what you mean by using the interface address Brian> instead of the IP address. If I just give the partner the VIF name, Brian> how does it know what IP to use? Is that stored on the mailbox Brian> disk?
When a node takes over for its partner, it reads the partner's /etc/rc file. The ifconfig commands are processed specially: they are examined for a "partner" clause. If a partner clause is found, the interface named in the partner clause takes over for the interface specified in the ifconfig command. If no partner clause is found, the ifconfig command is ignored.
Sam
On Mon, 25 Oct 1999, Sam Cramer wrote:
When a node takes over for its partner, it reads the partner's /etc/rc file. The ifconfig commands are processed specially: they are examined for a "partner" clause. If a partner clause is found, the interface named in the partner clause takes over for the interface specified in the ifconfig command. If no partner clause is found, the ifconfig command is ignored.
Ah, this is good to know. I had thought the takeover process will assume the current *running* configuration of network interfaces, but you're saying the virtual filer will look at what is in /etc/rc instead (which may or may not reflect the state of things when the crash occurred). Now that I think about it, that makes perfect sense, since the virtual filer goes through a "reboot" on the partner filer, reading the /etc/rc, playing back WAFL logs, etc.
On Tue, 26 Oct 1999, Brian Tao wrote:
On Mon, 25 Oct 1999, Sam Cramer wrote:
When a node takes over for its partner, it reads the partner's /etc/rc file. The ifconfig commands are processed specially: they are examined for a "partner" clause. If a partner clause is found, the interface named in the partner clause takes over for the interface specified in the ifconfig command. If no partner clause is found, the ifconfig command is ignored.
The documentation implies just the reverse:
The following commands entered on the toaster1 console do the following tasks:
Configure interface e1 on toaster1 to use 198.9.200.28 as its own IP address Configure interface e2 on toaster 1 to use 198.9.200.38 as the partner IP address for toaster2's e1 interface during takeover:
ifconfig e1 198.9.200.28
ifconfig e2 partner 198.9.200.38
The following commands entered on the toaster2 console do the following tasks:
Configure interface e1 on toaster2 to use 198.9.200.38 as its own IP address Configure interface e2 on toaster2 to use 198.9.200.28 as the partner IP address for toaster1's e1 interface during takeover:
ifconfig e1 198.9.200.38
ifconfig e2 partner 198.9.200.28
Your description makes more sense if interface names are in fact used, but with IP addresses the documentation is more convincing. Can you describe what really happens and fix the documentation if it is wrong.
Tom