Line 1: |
Line 1: |
| == Checkpoint == | | == Checkpoint == |
| | | |
− | VETH is an interconnected pair of devices in two different network namespace. Checkpointing a network namespace with an VETH device in it doesn't require any special options for CRIU. Upon checkpoint, information about one end of VETH pair is saved to [[images]], when this device dies (together with the containing namespace), and the other end dies instantly, too, as it has no peer. | + | VETH is an interconnected pair of devices in two different network namespace. With CRIU, you can checkpoint a network namespace with an VETH device in it (called "inner" device) doesn't require any special options for CRIU. Upon checkpoint, information about the inner VETH device is saved to [[images]], when this device dies (together with the containing namespace), and the other end (called "outer" device) dies instantly, too, for the lack of peer. |
| | | |
| == Restore == | | == Restore == |
| | | |
− | When you restore a net namespace with a VETH device end in it, CRIU creates a VETH pair automatically. By default, the "outer" device name is autogenerated by the kernel, which is not convenient. Option <code>--external</code> ([[RPC]] equivalent is <code>opts.external</code> field) can be used to set that name explicitly. | + | When you restore a net namespace with a VETH device end in it, CRIU creates a VETH pair automatically. By default, the outer device name is autogenerated by the kernel, which is not convenient. Option <code>--external</code> (or [[RPC]] equivalent field <code>opts.external</code>) can be used to set that name explicitly. |
| | | |
− | The syntax is <code>--external veth[''NAME'']:''HOSTNAME''@''BRIDGE''</code>, with the <code>@''BRIDGE''</code> part being optional. Here ''NAME'' is an "inner" VETH device name, and ''HOSTNAME'' is the "outer" VETH device name. If <code>@''BRIDGE''</code> is specified, the ''HOSTNAME'' device is added to the appropriate bridge device. | + | The syntax is <code>--external veth[''inner_dev'']:''outer_dev''@''bridge''</code>, with the <code>@''bridge''</code> part being optional. Here ''inner_dev'' is an "inner" VETH device name, and ''outer_dev'' is the "outer" VETH device name. If <code>@''bridge''</code> is specified, the ''outer_dev'' device is added to that bridge. |
| | | |
| == Obsoleted option == | | == Obsoleted option == |
| | | |
− | Option <code>--veth-pair NAME=HOSTNAME[@BRIDGE]</code> (or corresponding [[RPC]] field <code>opts.veths</code>) was used in old versions of CRIU for the same effect as <code>--external veth</code>. This option is now obsolete and will be [[deprecation|deprecated]] soon. | + | Option <code>--veth-pair ''inner_dev''=''outer_dev''[@''bridge'']</code> (or corresponding [[RPC]] field <code>opts.veths</code>) was used in old versions of CRIU for the same effect as <code>--external veth</code>. This option is now obsolete and will be [[deprecation|deprecated]] soon. |
| | | |
| [[Category: HOWTO]] | | [[Category: HOWTO]] |
| [[Category: API]] | | [[Category: API]] |
| [[Category: Network]] | | [[Category: Network]] |