Skip to content

Instantly share code, notes, and snippets.

@hansode
Created February 18, 2012 08:04
Show Gist options
  • Select an option

  • Save hansode/1858143 to your computer and use it in GitHub Desktop.

Select an option

Save hansode/1858143 to your computer and use it in GitHub Desktop.
wakame-vdc dialog
{
default_fontsize = 10;
orientation = portrait
group left {
color = "#ffffff";
client0 [label = "client", shape = beginpoint];
endpoint0 [shape = endpoint];
api0 [label = "api"];
I [ label = "instance"]; B [ label = "batch" ]; V [ label = "volume" ];
client0 -> api0;
api0 -> I -> B -> V;
group hot { color = "red"; shape = line; style = dashed; I, B, V; };
V -> endpoint0;
}
group right {
color = "#ffffff";
client [label = "client", shape = beginpoint];
endpoint [shape = endpoint];
api [label = "api"];
I1 [ label = "instance"]; B1 [ label = "batch" ]; V1 [ label = "volume" ];
I2 [ label = "instance"]; B2 [ label = "batch" ]; V2 [ label = "volume" ];
I3 [ label = "instance"]; B3 [ label = "batch" ]; V3 [ label = "volume" ];
client -> api;
I2 [ shape = "dots" ];
B2 [ shape = "dots" ];
V2 [ shape = "dots" ];
api -> I1 -> B1 -> V1 -> endpoint;
api -> I2 -> B2 -> V2 -> endpoint;
api -> I3 -> B3 -> V3 -> endpoint;
group cool { color = "#00bb00"; shape = line; style = dashed; I1; I2; I3; B1; B2; B3; V1; V2; V3; };
// group cool { color = "#00bb00"; I1; I2; I3; B1; B2; B3; V1; V2; V3; }
}
}
Display the source blob
Display the rendered blob
Raw
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg viewBox="0 0 1792 1000" xmlns="http://www.w3.org/2000/svg" xmlns:inkspace="http://www.inkscape.org/namespaces/inkscape" xmlns:xlink="http://www.w3.org/1999/xlink">
<defs id="defs_block">
<filter height="1.504" id="filter_blur" inkspace:collect="always" width="1.1575" x="-0.07875" y="-0.252">
<feGaussianBlur id="feGaussianBlur3780" inkspace:collect="always" stdDeviation="4.2" />
</filter>
</defs>
<title>blockdiag</title>
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="67" y="46" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="67" y="126" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="67" y="206" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="67" y="286" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="259" y="286" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1603" y="46" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1603" y="126" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="259" y="366" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="643" y="366" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="259" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="451" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="643" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="835" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1219" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1411" y="446" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="835" y="526" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="835" y="606" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1027" y="606" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="259" y="846" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="259" y="926" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1411" y="526" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1219" y="606" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1219" y="686" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="1219" y="766" />
<rect fill="rgb(0,0,0)" height="40" stroke="rgb(0,0,0)" style="filter:url(#filter_blur);opacity:0.7;fill-opacity:1" width="128" x="451" y="526" />
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="64" y="40" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="110" y="66">client</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="64" y="120" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="113" y="146">proxy</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="64" y="200" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="116" y="226">auth</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="64" y="280" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="98" y="306">mysql(gui)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="256" y="280" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="311" y="306">api</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1600" y="40" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1643" y="66">browser</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1600" y="120" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1655" y="146">gui</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="256" y="360" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="284" y="386">mysql(dcmgr)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="640" y="360" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="692" y="386">amqp</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="256" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="275" y="466">metadata-server</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="448" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="464" y="466">collector(mysql)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="640" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="659" y="466">collector(amqp)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="832" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="887" y="466">nsa</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1216" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1271" y="466">hva</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1408" y="440" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1463" y="466">sta</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="832" y="520" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="875" y="546">dnsmasq</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="832" y="600" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="857" y="626">dnsmasq(dhcp)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1024" y="600" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1052" y="626">dnsmasq(dns)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="256" y="840" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="296" y="866">instance</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="256" y="920" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="278" y="946">metadata-drive</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1408" y="520" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1442" y="546">iSCSI(tgt)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1216" y="600" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1250" y="626">iSCSI(ini)</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1216" y="680" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1256" y="706">blockdev</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="1216" y="760" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="1250" y="786">hypervisor</text>
<rect fill="rgb(255,255,255)" height="40" stroke="rgb(0,0,0)" width="128" x="448" y="520" />
<text fill="rgb(0,0,0)" font-family="sansserif" font-size="11" font-style="normal" font-weight="normal" x="485" y="546">collector</text>
<path d="M 128 80 L 128 112" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="128,119 124,112 132,112 128,119" stroke="rgb(0,0,0)" />
<path d="M 128 160 L 128 192" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="128,199 124,192 132,192 128,199" stroke="rgb(0,0,0)" />
<path d="M 128 240 L 128 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 128 260 L 320 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 260 L 320 272" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,279 316,272 324,272 320,279" stroke="rgb(0,0,0)" />
<path d="M 128 240 L 128 272" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="128,279 124,272 132,272 128,279" stroke="rgb(0,0,0)" />
<path d="M 320 320 L 320 340" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 340 L 704 340" fill="none" stroke="rgb(0,0,0)" />
<path d="M 704 340 L 704 352" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="704,359 700,352 708,352 704,359" stroke="rgb(0,0,0)" />
<path d="M 320 320 L 320 352" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,359 316,352 324,352 320,359" stroke="rgb(0,0,0)" />
<path d="M 1664 80 L 1664 112" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1664,119 1660,112 1668,112 1664,119" stroke="rgb(0,0,0)" />
<path d="M 1664 160 L 1664 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 260 L 1664 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 260 L 320 272" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,279 316,272 324,272 320,279" stroke="rgb(0,0,0)" />
<path d="M 1664 160 L 1664 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 128 260 L 1664 260" fill="none" stroke="rgb(0,0,0)" />
<path d="M 128 260 L 128 272" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="128,279 124,272 132,272 128,279" stroke="rgb(0,0,0)" />
<path d="M 320 408 L 320 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 420 L 512 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 512 420 L 512 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,401 316,408 324,408 320,401" stroke="rgb(0,0,0)" />
<path d="M 320 408 L 320 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,401 316,408 324,408 320,401" stroke="rgb(0,0,0)" />
<path d="M 320 488 L 320 840" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,481 316,488 324,488 320,481" stroke="rgb(0,0,0)" />
<path d="M 512 480 L 512 520" fill="none" stroke="rgb(0,0,0)" />
<path d="M 704 408 L 704 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 704 420 L 1472 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1472 420 L 1472 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="704,401 700,408 708,408 704,401" stroke="rgb(0,0,0)" />
<path d="M 704 408 L 704 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 704 420 L 896 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 896 420 L 896 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="704,401 700,408 708,408 704,401" stroke="rgb(0,0,0)" />
<path d="M 704 408 L 704 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="704,401 700,408 708,408 704,401" stroke="rgb(0,0,0)" />
<path d="M 704 408 L 704 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 704 420 L 1280 420" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 420 L 1280 440" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="704,401 700,408 708,408 704,401" stroke="rgb(0,0,0)" />
<path d="M 704 480 L 704 500" fill="none" stroke="rgb(0,0,0)" />
<path d="M 512 500 L 704 500" fill="none" stroke="rgb(0,0,0)" />
<path d="M 512 500 L 512 520" fill="none" stroke="rgb(0,0,0)" />
<path d="M 896 480 L 896 512" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="896,519 892,512 900,512 896,519" stroke="rgb(0,0,0)" />
<path d="M 1280 480 L 1280 592" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1280,599 1276,592 1284,592 1280,599" stroke="rgb(0,0,0)" />
<path d="M 1280 480 L 1280 500" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 500 L 1376 500" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1376 500 L 1376 740" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 740 L 1376 740" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 740 L 1280 752" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1280,759 1276,752 1284,752 1280,759" stroke="rgb(0,0,0)" />
<path d="M 1472 480 L 1472 512" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1472,519 1468,512 1476,512 1472,519" stroke="rgb(0,0,0)" />
<path d="M 1280 800 L 1280 900" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 900 L 1280 900" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 900 L 320 912" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,919 316,912 324,912 320,919" stroke="rgb(0,0,0)" />
<path d="M 1280 800 L 1280 820" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 820 L 1280 820" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 820 L 320 832" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,839 316,832 324,832 320,839" stroke="rgb(0,0,0)" />
<path d="M 896 560 L 896 580" fill="none" stroke="rgb(0,0,0)" />
<path d="M 896 580 L 1088 580" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1088 580 L 1088 592" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1088,599 1084,592 1092,592 1088,599" stroke="rgb(0,0,0)" />
<path d="M 896 560 L 896 592" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="896,599 892,592 900,592 896,599" stroke="rgb(0,0,0)" />
<path d="M 896 648 L 896 820" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 820 L 896 820" fill="none" stroke="rgb(0,0,0)" />
<path d="M 320 820 L 320 840" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="896,641 892,648 900,648 896,641" stroke="rgb(0,0,0)" />
<path d="M 320 880 L 320 912" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="320,919 316,912 324,912 320,919" stroke="rgb(0,0,0)" />
<path d="M 1472 568 L 1472 580" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 580 L 1372 580" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1372.0 580.0 A4,4 0 0 1 1380.0 580.0" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1380 580 L 1472 580" fill="none" stroke="rgb(0,0,0)" />
<path d="M 1280 580 L 1280 600" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1472,561 1468,568 1476,568 1472,561" stroke="rgb(0,0,0)" />
<path d="M 1280 640 L 1280 672" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1280,679 1276,672 1284,672 1280,679" stroke="rgb(0,0,0)" />
<path d="M 1280 728 L 1280 760" fill="none" stroke="rgb(0,0,0)" />
<polygon fill="rgb(0,0,0)" points="1280,721 1276,728 1284,728 1280,721" stroke="rgb(0,0,0)" />
</svg>
{
//
orientation = portrait;
//
client -> proxy -> auth -> mysqlgui, api;
browser -> gui -> mysqlgui;
gui -> api -> mysqldcmgr <- metadatasv, collectorDB;
api -> amqp <- collectorMQ, nsa, hva, sta;
hva -> hypervisor;
nsa -> dnsmasq -> dhcp <- instance;
dnsmasq -> dns;
metadatasv <- instance;
sta -> "iSCSI(tgt)";
hva -> "iSCSI(ini)" -> blockdev <- hypervisor;
"iSCSI(tgt)" <- "iSCSI(ini)";
hypervisor -> instance, metadatadr;
instance -> metadatadr;
collectorDB, collectorMQ -- collector;
// label
collectorDB[label ="collector(mysql)"];
collectorMQ[label ="collector(amqp)"];
dhcp[label = "dnsmasq(dhcp)"];
dns[label = "dnsmasq(dns)"];
metadatasv[label = "metadata-server"];
metadatadr[label = "metadata-drive"];
mysqlgui[label = "mysql(gui)"];
mysqldcmgr[label = "mysql(dcmgr)"];
}
OBJS = blockdiag nwdiag seqdiag
all: generate
clean:
rm -f *.png
generate:
for obj in $(OBJS); do \
echo "> $$obj <"; \
for i in $$obj*.txt; do \
echo ... $$i; \
$$obj -T svg $$i; \
$$obj -T png $$i; \
done;\
done
nwdiag {
inet [shape = cloud];
inet -- router;
network eucalyptus {
router;
address = "192.0.2.0/25"
dcmgr [address = "192.0.2.3/25"];
hva01 [address = "192.0.2.4/25"];
}
network wakame-vdc {
address = "10.x.x.x/25";
dcmgr [address = "10.x.x.3/25"];
hva01 [address = "10.x.x.4/25"];
batch01 [address = "10.x.x.x/25"];
}
}
nwdiag {
inet [shape = cloud];
inet -- router;
network "work line" {
address = "192.168.1.x/24";
router;
host [address = "192.168.1.x"];
}
network "Host-only Adapter" {
address = "192.168.56.x/24";
host [address = ".1"];
dhcp [address = ".2"];
dcmgr [address = ".xx (eth0)"];
hva01 [address = ".xx (eth0)"];
i-inst01 [address = "192.168.56.x"];
i-inst02 [address = "192.168.56.x"];
}
group wakame-vdc {
color = "#99ccff";
dcmgr; hva01;
i-inst01; i-inst02;
}
}
seqdiag {
// Set edge metrix.
edge_length = 140; // default value is 192
span_height = 5; // default value is 40
// Set fontsize.
default_fontsize = 10; // default value is 11
// blocks.
api[label = "Web API"];
init-batch[label = "starting-job.sh"];
task[label = "job-single.sh"];
volume;
rfc[label = "RFC text"];
init-batch -> api[label = "create volume"];
init-batch <--api;
init-batch -> api[label = "attach volume"];
init-batch <--api;
init-batch -> volume[label = "mkfs /dev/sdX"];
init-batch <--volume;
init-batch -> volume[label = "mount /dev/sdX"];
init-batch <--volume;
init-batch -> task[label = "do task",diagonal];
task -> rfc[label = "read text"];
task <--rfc;
task -> task[label = "calculate..."];
task -> volume[label = "write result"];
task <--volume;
init-batch<--task[diagonal];
init-batch -> api[label = "terminate instance"];
init-batch <--api;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment