[OpenAFS] Does vos release/volume replication always initiates data transfer
from RW site?
Ximeng Guan
xmgu@royole.com
Mon, 6 Aug 2018 03:58:03 +0000
--_000_d7b2bc2f2368435a906c778b2f4c21cfroyolecom_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hello,
We have one cell covering two sites. The WAN bandwidth between the two site=
s is relatively low, so we use volume replication to speed up the access.
Those replicated volumes are often large in size. So replication to the rem=
ote site is an operation whose cost cannot be neglected.
Now with RW volumes at site A and their RO replication on servers at site B=
, we want to bring up a new file server at site B to balance the load. In o=
ther words we would like to "offload" a majority of the RO volumes from one=
server to a different server at Site B, without touching their RW masters =
at Site A.
The standard way to do this is through "vos addsite" and "vos release" to c=
reate new RO copies on the new server at site B. When we try this it seems =
that the "vos release" always initiates a fresh full volume of data transfe=
r from the RW servers at site A to the new server at site B, even though th=
ere are RO copies at site B on other servers.
I wonder if there is a way to directly transfer those RO volumes btw server=
s at site B, without breaking the data integrity among the RO sites or affe=
cting the atomicity of "vos release".
Or maybe a more greedy way to ask the question is: Is it possible to make t=
he data transfer part of "vos release" smarter, by allowing it to select th=
e closest path to copy data btw file servers, according to a network distan=
ce either detected by itself, or provided by the administrator? For example=
, once it is found that no change has been made to the RW volume since the =
last release, a "vos release" to a new site will search all the RO copies i=
n the VLDB, find the closest RO site to the new server, and initiate data t=
ransfer from there, instead of from the RW site? Even if the RW volume has =
been changed, maybe it would still be much cheaper to copy the existing RO =
volume from a closest site first, and then broadcast the incremental change=
s from the RW site?
Thanks.
Ximeng (Simon) Guan
Royole Corporation
--_000_d7b2bc2f2368435a906c778b2f4c21cfroyolecom_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:DengXian;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:"\@DengXian";
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{mso-style-priority:99;
mso-style-link:"Plain Text Char";
margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.PlainTextChar
{mso-style-name:"Plain Text Char";
mso-style-priority:99;
mso-style-link:"Plain Text";
font-family:"Calibri",sans-serif;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Hello,<o:p></o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">We have one cell co=
vering two sites. The WAN bandwidth between the two sites is relatively low=
, so we use volume replication to speed up the access.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Those replicated vo=
lumes are often large in size. So replication to the remote site is an oper=
ation whose cost cannot be neglected.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Now with RW volumes=
at site A and their RO replication on servers at site B, we want to bring =
up a new file server at site B to balance the load. In other words we would=
like to “offload” a majority of the
RO volumes from one server to a different server at Site B, without touchi=
ng their RW masters at Site A.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">The standard way to=
do this is through “vos addsite” and “vos release”=
to create new RO copies on the new server at site B. When we try this it s=
eems that the “vos release” always initiates a fresh full volum=
e
of data transfer from the RW servers at site A to the new server at site B=
, even though there are RO copies at site B on other servers.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">I wonder if there i=
s a way to directly transfer those RO volumes btw servers at site B, withou=
t breaking the data integrity among the RO sites or affecting the atomicity=
of “vos release”.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Or maybe a more gre=
edy way to ask the question is: Is it possible to make the data transfer pa=
rt of “vos release” smarter, by allowing it to select the close=
st path to copy data btw file servers, according
to a network distance either detected by itself, or provided by the admini=
strator? For example, once it is found that no change has been made to the =
RW volume since the last release, a “vos release” to a new site=
will search all the RO copies in the VLDB,
find the closest RO site to the new server, and initiate data transfer fro=
m there, instead of from the RW site? Even if the RW volume has been change=
d, maybe it would still be much cheaper to copy the existing RO volume from=
a closest site first, and then
broadcast the incremental changes from the RW site?<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt">Thanks. <o:p></o:p>=
</span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt"><o:p> </o:p></=
span></p>
<p class=3D"MsoPlainText">Ximeng (Simon) Guan<o:p></o:p></p>
<p class=3D"MsoPlainText">Royole Corporation<o:p></o:p></p>
</div>
</body>
</html>
--_000_d7b2bc2f2368435a906c778b2f4c21cfroyolecom_--