qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH COLO-Frame v8 24/34] COLO NIC: Implement colo ni


From: Li Zhijian
Subject: Re: [Qemu-devel] [PATCH COLO-Frame v8 24/34] COLO NIC: Implement colo nic device interface configure()
Date: Wed, 5 Aug 2015 19:54:25 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0

On 08/05/2015 06:42 PM, Dr. David Alan Gilbert wrote:
* zhanghailiang (address@hidden) wrote:
Implement colo nic device interface configure()
add a script to configure nic devices:
${QEMU_SCRIPT_DIR}/colo-proxy-script.sh

Cc: Stefan Hajnoczi <address@hidden>
Cc: Jason Wang <address@hidden>
Signed-off-by: zhanghailiang <address@hidden>
Signed-off-by: Li Zhijian <address@hidden>
---
I've not quite got this working right yet;  after a failover, the secondary
hasn't connected the tap to the right bridge; I'm still trying to figure that 
out.
at failover, colo will execute the qemu script(default: /etc/qemu-ifup) to bring up tap
please check /etc/qemu-ifup

Further more, qemu downscript *must* be specified and the downscript is needed to
reset you networking configuration which is configured by qemu-ifup script

following is a /etc/qemu-ifup and /etc/qemu-ifdown sample(both primary and secondary)
address@hidden cat /etc/qemu-ifup
#!/bin/sh
switch=br0
if [ -n "$1" ]; then
         ip link set $1 up
         brctl addif ${switch} $1
fi
address@hidden cat /etc/qemu-ifdown
!/bin/sh
switch=br0
if [ -n "$1" ]; then
        brctl delif ${switch} $1
fi



+
+secondary_uninstall()
+{
+    brctl delif $br $phy_if
+    brctl delif $br $virt_if
+    brctl addif $failover_br $virt_if
+
+    /usr/local/sbin/iptables -t mangle -D PREROUTING -m physdev --physdev-in \
+        $virt_if -j SECCOLO --index $index
I think this is new in this version;  don't you still need the SECCOLO
mangle to fixup the sequence number of packets in existing connections so they
match the numbers that the PMY used?

the kernel part code will help us to adjust sequence once we initialized the
seq offest to kernel, so after failover, we don't need the SECCOLO mangle
anymore

Best regards.
Li Zhijian


Dave

+    /usr/local/sbin/ip6tables -t mangle -D PREROUTING -m physdev --physdev-in \
+        $virt_if -j SECCOLO --index $index
+}
+
+if [ $# -ne 5 ]; then
+    script_usage
+    exit 1
+fi
+
+if [ "x$side" != "xprimary" ] && [ "x$side" != "xsecondary" ]; then
+    script_usage
+    exit 2
+fi
+
+if [ "x$action" != "xinstall" ] && [ "x$action" != "xuninstall" ]; then
+    script_usage
+    exit 3
+fi
+
+${side}_${action}
--
1.8.3.1


--
Dr. David Alan Gilbert / address@hidden / Manchester, UK
.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]