nova/doc/source/images/architecture.svg
Joe Gordon 33d671d7eb Replace ascii art architecture diagram with svg image
architecture.svg diagram was generated using dia
(http://dia-installer.de/) and can be found in image_src

This is an attempt to show the same information as previously found in
the ascii art.

blueprint devref-refresh-liberty
Change-Id: Iab5811bcc7ec4b3fa457a07d33a0373ba95723ca
2015-06-26 13:51:14 -07:00

458 lines
53 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="41cm" height="58cm" viewBox="-80 120 814 1149" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g>
<rect style="fill: #ffffff" x="0.83798" y="344.412" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="0.83798" y="344.412" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="0.83798" y="344.412" width="110.242" height="113.917"/>
</g>
<g>
<path style="fill: #a5a585" d="M 474.259 262.827 L 474.22,262.329 L 474.111,261.839 L 473.924,261.348 L 473.668,260.866 L 473.349,260.384 L 472.952,259.909 L 472.485,259.442 L 471.948,258.983 L 471.341,258.532 L 470.672,258.104 L 469.941,257.676 L 469.155,257.256 L 468.291,256.859 L 467.381,256.478 L 466.416,256.112 L 465.389,255.762 L 464.323,255.435 L 463.203,255.124 L 462.044,254.836 L 460.83,254.564 L 459.593,254.307 L 458.309,254.081 L 456.994,253.863 L 455.663,253.685 L 454.294,253.529 L 452.901,253.397 L 451.501,253.28 L 450.077,253.202 L 448.645,253.132 L 447.206,253.085 L 445.767,253.085 L 445.767,253.085 L 444.319,253.085 L 442.88,253.132 L 441.448,253.202 L 440.024,253.28 L 438.624,253.397 L 437.231,253.529 L 435.87,253.685 L 434.531,253.863 L 433.216,254.081 L 431.933,254.307 L 430.696,254.564 L 429.49,254.836 L 428.33,255.124 L 427.21,255.435 L 426.136,255.762 L 425.109,256.112 L 424.152,256.478 L 423.234,256.859 L 422.378,257.256 L 421.584,257.676 L 420.853,258.104 L 420.184,258.532 L 419.577,258.983 L 419.04,259.442 L 418.573,259.909 L 418.177,260.384 L 417.858,260.866 L 417.601,261.348 L 417.414,261.839 L 417.313,262.329 L 417.274,262.827 L 417.274,262.827 L 417.313,263.325 L 417.414,263.807 L 417.601,264.305 L 417.858,264.787 L 418.177,265.27 L 418.573,265.744 L 419.04,266.211 L 419.577,266.67 L 420.184,267.114 L 420.853,267.55 L 421.584,267.977 L 422.378,268.398 L 423.234,268.794 L 424.152,269.176 L 425.109,269.541 L 426.136,269.891 L 427.21,270.218 L 428.33,270.529 L 429.49,270.817 L 430.696,271.09 L 431.933,271.346 L 433.216,271.572 L 434.531,271.782 L 435.87,271.969 L 437.231,272.125 L 438.624,272.257 L 440.024,272.366 L 441.448,272.451 L 442.88,272.514 L 444.319,272.56 L 445.767,272.568 L 445.767,272.568 L 447.206,272.56 L 448.645,272.514 L 450.077,272.451 L 451.501,272.366 L 452.901,272.257 L 454.294,272.125 L 455.663,271.969 L 456.994,271.782 L 458.309,271.572 L 459.593,271.346 L 460.83,271.09 L 462.044,270.817 L 463.203,270.529 L 464.323,270.218 L 465.389,269.891 L 466.416,269.541 L 467.381,269.176 L 468.291,268.794 L 469.155,268.398 L 469.941,267.977 L 470.672,267.55 L 471.341,267.114 L 471.948,266.67 L 472.485,266.211 L 472.952,265.744 L 473.349,265.27 L 473.668,264.787 L 473.924,264.305 L 474.111,263.807 L 474.22,263.325 L 474.259,262.827z"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #494936" d="M 473.924 262.671 L 473.886,262.173 L 473.784,261.699 L 473.605,261.216 L 473.356,260.742 L 473.022,260.259 L 472.617,259.8 L 472.174,259.333 L 471.629,258.898 L 471.03,258.454 L 470.369,258.018 L 469.637,257.606 L 468.852,257.194 L 468.003,256.805 L 467.109,256.416 L 466.128,256.065 L 465.109,255.723 L 464.043,255.396 L 462.938,255.093 L 461.787,254.813 L 460.589,254.54 L 459.344,254.299 L 458.075,254.074 L 456.768,253.863 L 455.446,253.685 L 454.092,253.529 L 452.699,253.404 L 451.306,253.28 L 449.89,253.21 L 448.474,253.148 L 447.027,253.109 L 445.595,253.085 L 445.595,253.085 L 444.164,253.109 L 442.732,253.148 L 441.3,253.21 L 439.9,253.28 L 438.499,253.404 L 437.114,253.529 L 435.753,253.685 L 434.422,253.863 L 433.123,254.074 L 431.855,254.299 L 430.61,254.54 L 429.412,254.813 L 428.268,255.093 L 427.148,255.396 L 426.074,255.723 L 425.062,256.065 L 424.098,256.416 L 423.203,256.805 L 422.347,257.194 L 421.553,257.606 L 420.838,258.018 L 420.176,258.454 L 419.561,258.898 L 419.032,259.333 L 418.573,259.8 L 418.177,260.259 L 417.85,260.742 L 417.593,261.216 L 417.414,261.699 L 417.313,262.173 L 417.274,262.671 L 417.274,262.671 L 417.313,263.153 L 417.414,263.628 L 417.593,264.118 L 417.85,264.593 L 418.177,265.068 L 418.573,265.534 L 419.032,265.993 L 419.561,266.437 L 420.176,266.873 L 420.838,267.316 L 421.553,267.736 L 422.347,268.133 L 423.203,268.53 L 424.098,268.911 L 425.062,269.269 L 426.074,269.611 L 427.148,269.93 L 428.268,270.242 L 429.412,270.522 L 430.61,270.794 L 431.855,271.043 L 433.123,271.261 L 434.422,271.463 L 435.753,271.642 L 437.114,271.798 L 438.499,271.93 L 439.9,272.047 L 441.3,272.125 L 442.732,272.187 L 444.164,272.226 L 445.595,272.241 L 445.595,272.241 L 447.027,272.226 L 448.474,272.187 L 449.89,272.125 L 451.306,272.047 L 452.699,271.93 L 454.092,271.798 L 455.446,271.642 L 456.768,271.463 L 458.075,271.261 L 459.344,271.043 L 460.589,270.794 L 461.787,270.522 L 462.938,270.242 L 464.043,269.93 L 465.109,269.611 L 466.128,269.269 L 467.109,268.911 L 468.003,268.53 L 468.852,268.133 L 469.637,267.736 L 470.369,267.316 L 471.03,266.873 L 471.629,266.437 L 472.174,265.993 L 472.617,265.534 L 473.022,265.068 L 473.356,264.593 L 473.605,264.118 L 473.784,263.628 L 473.886,263.153 L 473.924,262.671"/>
<path style="fill: #a5a585" d="M 417.274 242.48 L 417.274,262.998 L 473.924,262.998 L 473.924,242.48 L 417.274,242.48z"/>
<path style="fill: #c9c9b6" d="M 474.259 242.309 L 474.22,241.804 L 474.111,241.313 L 473.924,240.831 L 473.668,240.349 L 473.349,239.858 L 472.952,239.384 L 472.485,238.909 L 471.948,238.466 L 471.341,238.022 L 470.672,237.571 L 469.941,237.159 L 469.155,236.738 L 468.291,236.334 L 467.381,235.96 L 466.416,235.595 L 465.389,235.237 L 464.323,234.91 L 463.203,234.607 L 462.044,234.311 L 460.83,234.039 L 459.593,233.79 L 458.309,233.564 L 456.994,233.354 L 455.663,233.167 L 454.294,233.011 L 452.901,232.879 L 451.501,232.77 L 450.077,232.685 L 448.645,232.615 L 447.206,232.576 L 445.767,232.568 L 445.767,232.568 L 444.319,232.576 L 442.88,232.615 L 441.448,232.685 L 440.024,232.77 L 438.624,232.879 L 437.231,233.011 L 435.87,233.167 L 434.531,233.354 L 433.216,233.564 L 431.933,233.79 L 430.696,234.039 L 429.49,234.311 L 428.33,234.607 L 427.21,234.91 L 426.136,235.237 L 425.109,235.595 L 424.152,235.96 L 423.234,236.334 L 422.378,236.738 L 421.584,237.159 L 420.853,237.571 L 420.184,238.022 L 419.577,238.466 L 419.04,238.909 L 418.573,239.384 L 418.177,239.858 L 417.858,240.349 L 417.601,240.831 L 417.414,241.313 L 417.313,241.804 L 417.274,242.309 L 417.274,242.309 L 417.313,242.799 L 417.414,243.297 L 417.601,243.772 L 417.858,244.27 L 418.177,244.745 L 418.573,245.227 L 419.04,245.694 L 419.577,246.145 L 420.184,246.596 L 420.853,247.032 L 421.584,247.46 L 422.378,247.872 L 423.234,248.269 L 424.152,248.65 L 425.109,249.024 L 426.136,249.366 L 427.21,249.701 L 428.33,250.012 L 429.49,250.3 L 430.696,250.572 L 431.933,250.829 L 433.216,251.047 L 434.531,251.265 L 435.87,251.444 L 437.231,251.599 L 438.624,251.739 L 440.024,251.841 L 441.448,251.934 L 442.88,251.996 L 444.319,252.035 L 445.767,252.051 L 445.767,252.051 L 447.206,252.035 L 448.645,251.996 L 450.077,251.934 L 451.501,251.841 L 452.901,251.739 L 454.294,251.599 L 455.663,251.444 L 456.994,251.265 L 458.309,251.047 L 459.593,250.829 L 460.83,250.572 L 462.044,250.3 L 463.203,250.012 L 464.323,249.701 L 465.389,249.366 L 466.416,249.024 L 467.381,248.65 L 468.291,248.269 L 469.155,247.872 L 469.941,247.46 L 470.672,247.032 L 471.341,246.596 L 471.948,246.145 L 472.485,245.694 L 472.952,245.227 L 473.349,244.745 L 473.668,244.27 L 473.924,243.772 L 474.111,243.297 L 474.22,242.799 L 474.259,242.309z"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #494936" d="M 473.924 242.154 L 473.886,241.656 L 473.784,241.181 L 473.605,240.706 L 473.356,240.224 L 473.022,239.734 L 472.617,239.275 L 472.174,238.831 L 471.629,238.372 L 471.03,237.937 L 470.369,237.493 L 469.637,237.089 L 468.852,236.676 L 468.003,236.279 L 467.109,235.914 L 466.128,235.548 L 465.109,235.213 L 464.043,234.887 L 462.938,234.575 L 461.787,234.288 L 460.589,234.023 L 459.344,233.782 L 458.075,233.556 L 456.768,233.354 L 455.446,233.167 L 454.092,233.011 L 452.699,232.879 L 451.306,232.77 L 449.89,232.685 L 449.416,232.661 L 441.775,232.661 L 441.3,232.685 L 439.9,232.77 L 438.499,232.879 L 437.114,233.011 L 435.753,233.167 L 434.422,233.354 L 433.123,233.556 L 431.855,233.782 L 430.61,234.023 L 429.412,234.288 L 428.268,234.575 L 427.148,234.887 L 426.074,235.213 L 425.062,235.548 L 424.098,235.914 L 423.203,236.279 L 422.347,236.676 L 421.553,237.089 L 420.838,237.493 L 420.176,237.937 L 419.561,238.372 L 419.032,238.831 L 418.573,239.275 L 418.177,239.734 L 417.85,240.224 L 417.593,240.706 L 417.414,241.181 L 417.313,241.656 L 417.274,242.154 L 417.274,242.154 L 417.313,242.628 L 417.414,243.118 L 417.593,243.601 L 417.85,244.075 L 418.177,244.55 L 418.573,245.017 L 419.032,245.468 L 419.561,245.927 L 420.176,246.363 L 420.838,246.799 L 421.553,247.219 L 422.347,247.616 L 423.203,248.005 L 424.098,248.394 L 425.062,248.752 L 426.074,249.086 L 427.148,249.405 L 428.268,249.716 L 429.412,249.997 L 430.61,250.269 L 431.855,250.526 L 433.123,250.728 L 434.422,250.946 L 435.753,251.117 L 437.114,251.28 L 438.499,251.42 L 439.9,251.529 L 441.3,251.615 L 442.732,251.669 L 444.164,251.7 L 445.595,251.724 L 445.595,251.724 L 447.027,251.7 L 448.474,251.669 L 449.89,251.615 L 451.306,251.529 L 452.699,251.42 L 454.092,251.28 L 455.446,251.117 L 456.768,250.946 L 458.075,250.728 L 459.344,250.526 L 460.589,250.269 L 461.787,249.997 L 462.938,249.716 L 464.043,249.405 L 465.109,249.086 L 466.128,248.752 L 467.109,248.394 L 468.003,248.005 L 468.852,247.616 L 469.637,247.219 L 470.369,246.799 L 471.03,246.363 L 471.629,245.927 L 472.174,245.468 L 472.617,245.017 L 473.022,244.55 L 473.356,244.075 L 473.605,243.601 L 473.784,243.118 L 473.886,242.628 L 473.924,242.154"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #000000" d="M 417.274 242.154 L 417.274,262.656"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #000000" d="M 473.924 242.154 L 473.924,262.656"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="147.413" y="85.9834">
<tspan x="147.413" y="85.9834"></tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="147.413" y="85.9834">
<tspan x="147.413" y="85.9834"></tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="273.57" y="237.668">
<tspan x="273.57" y="237.668">API</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="282.526" y="391.16">
<tspan x="282.526" y="391.16">Conductor</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="231.792" y="183.68" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="231.792" y="183.68" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="231.792" y="183.68" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="286.914" y="240.638">
<tspan x="286.914" y="240.638">API</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="240.084" y="193.077" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="240.084" y="193.077" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="240.084" y="193.077" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="295.206" y="250.036">
<tspan x="295.206" y="250.036">API</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="234.004" y="341.222" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="234.004" y="341.222" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="234.004" y="341.222" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="289.124" y="398.18">
<tspan x="289.124" y="398.18">Conductor</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="241.3" y="350.066" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="241.3" y="350.066" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="241.3" y="350.066" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="296.422" y="407.024">
<tspan x="296.422" y="407.024">Conductor</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="446.114" y="386.848">
<tspan x="446.114" y="386.848">Scheduler</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="401.496" y="339.288" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="401.496" y="339.288" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="401.496" y="339.288" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="456.618" y="396.246">
<tspan x="456.618" y="396.246">Scheduler</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="410.34" y="349.79" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="410.34" y="349.79" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="410.34" y="349.79" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="465.462" y="406.748">
<tspan x="465.462" y="406.748">Scheduler</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="295.206" y1="306.994" x2="295.599" y2="339.337"/>
<polygon style="fill: #000000" points="295.69,346.836 290.569,336.898 295.599,339.337 300.568,336.776 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="295.69,346.836 290.569,336.898 295.599,339.337 300.568,336.776 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="351.542" y1="407.024" x2="399.628" y2="406.908"/>
<polygon style="fill: #000000" points="407.128,406.889 397.14,411.914 399.628,406.908 397.116,401.914 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="407.128,406.889 397.14,411.914 399.628,406.908 397.116,401.914 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="445.56" y="252.52">
<tspan x="445.56" y="252.52">DB</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="349.53" y1="249.014" x2="407.544" y2="251.131"/>
<polygon style="fill: #000000" points="415.039,251.405 404.863,256.037 407.544,251.131 405.228,246.043 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="415.039,251.405 404.863,256.037 407.544,251.131 405.228,246.043 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="451.701" y1="340.205" x2="446.619" y2="282.267"/>
<polygon style="fill: #000000" points="445.963,274.796 451.818,284.32 446.619,282.267 441.856,285.194 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="445.963,274.796 451.818,284.32 446.619,282.267 441.856,285.194 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="352.366" y1="349.066" x2="421.448" y2="277.498"/>
<polygon style="fill: #000000" points="426.657,272.102 423.309,282.769 421.448,277.498 416.114,275.824 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="426.657,272.102 423.309,282.769 421.448,277.498 416.114,275.824 "/>
</g>
<g>
<rect style="fill: #ffffff" x="222.396" y="495.172" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="222.396" y="495.172" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="222.396" y="495.172" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="277.516" y="552.13">
<tspan x="277.516" y="552.13">Compute</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="230.134" y="503.602" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="230.134" y="503.602" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="230.134" y="503.602" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="285.256" y="560.56">
<tspan x="285.256" y="560.56">Compute</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="237.874" y="512.446" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="237.874" y="512.446" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="237.874" y="512.446" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="292.994" y="569.404">
<tspan x="292.994" y="569.404">Compute</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="296.422" y1="463.984" x2="295.194" y2="501.764"/>
<polygon style="fill: #000000" points="294.95,509.26 290.278,499.103 295.194,501.764 300.272,499.428 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="294.95,509.26 290.278,499.103 295.194,501.764 300.272,499.428 "/>
</g>
<g>
<path style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" d="M 354.655,511.236 A 183.844,183.844 0 0 0 351.329,304.267"/>
<polygon style="fill: #000000" points="350.422,517.416 352.327,506.399 354.87,511.377 360.378,512.329 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="350.422,517.416 352.327,506.399 354.87,511.377 360.378,512.329 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="17.5517,182.431 83.4669,182.431 127.41,247.431 83.4669,312.431 17.5517,312.431 -26.3918,247.431 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.5517,182.431 83.4669,182.431 127.41,247.431 83.4669,312.431 17.5517,312.431 -26.3918,247.431 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.5517,182.431 83.4669,182.431 127.41,247.431 83.4669,312.431 17.5517,312.431 -26.3918,247.431 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="55.5028" y="250.386">
<tspan x="55.5028" y="250.386">Keystone</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="239.113" y1="250.117" x2="136.415" y2="250.267"/>
<polygon style="fill: #000000" points="128.915,250.278 138.908,245.264 136.415,250.267 138.922,255.264 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="128.915,250.278 138.908,245.264 136.415,250.267 138.922,255.264 "/>
</g>
<g>
<rect style="fill: #ffffff" x="11.0492" y="350.62" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="11.0492" y="350.62" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="11.0492" y="350.62" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="66.1702" y="407.578">
<tspan x="66.1702" y="407.578"></tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="66.1702" y="407.578">
<tspan x="66.1702" y="407.578"></tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="66.1702" y="407.578">
<tspan x="66.1702" y="407.578">Network</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="239.176" y1="288.575" x2="130.22" y2="363.521"/>
<polygon style="fill: #000000" points="124.041,367.772 129.446,357.985 130.22,363.521 135.114,366.224 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="124.041,367.772 129.446,357.985 130.22,363.521 135.114,366.224 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="240.306" y1="407.159" x2="132.021" y2="407.42"/>
<polygon style="fill: #000000" points="124.521,407.438 134.509,402.414 132.021,407.42 134.533,412.414 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="124.521,407.438 134.509,402.414 132.021,407.42 134.533,412.414 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="236.884" y1="529.373" x2="130.207" y2="453.265"/>
<polygon style="fill: #000000" points="124.101,448.909 135.146,450.646 130.207,453.265 129.338,458.787 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="124.101,448.909 135.146,450.646 130.207,453.265 129.338,458.787 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="622.817,335.286 688.733,335.286 732.676,400.286 688.733,465.285 622.817,465.285 578.874,400.286 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="622.817,335.286 688.733,335.286 732.676,400.286 688.733,465.285 622.817,465.285 578.874,400.286 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="622.817,335.286 688.733,335.286 732.676,400.286 688.733,465.285 622.817,465.285 578.874,400.286 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="660.768" y="403.24">
<tspan x="660.768" y="403.24">Glance &amp;</tspan>
<tspan x="660.768" y="419.24"> Cinder</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="351.298" y1="273.543" x2="585.522" y2="371.705"/>
<polygon style="fill: #000000" points="592.439,374.604 581.284,375.35 585.522,371.705 585.149,366.127 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="592.439,374.604 581.284,375.35 585.522,371.705 585.149,366.127 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="349.124" y1="544.045" x2="589.942" y2="435.24"/>
<polygon style="fill: #000000" points="596.777,432.152 589.722,440.826 589.942,435.24 585.605,431.713 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="596.777,432.152 589.722,440.826 589.942,435.24 585.605,431.713 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="-78.1822" y1="647.644" x2="-30.381" y2="647.662"/>
<polygon style="fill: #000000" points="-22.881,647.665 -32.8829,652.661 -30.381,647.662 -32.8791,642.661 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="-22.881,647.665 -32.8829,652.661 -30.381,647.662 -32.8791,642.661 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="-76.931" y1="667.662" x2="-31.2966" y2="667.571"/>
<polygon style="fill: #000000" points="-23.7966,667.556 -33.7867,672.576 -31.2966,667.571 -33.8065,662.576 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="-23.7966,667.556 -33.7867,672.576 -31.2966,667.571 -33.8065,662.576 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="-77.406" y1="688.096" x2="-34.043" y2="688.137"/>
<polygon style="fill: #000000" points="-26.543,688.144 -36.5477,693.134 -34.043,688.137 -36.5383,683.134 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="-26.543,688.144 -36.5477,693.134 -34.043,688.137 -36.5383,683.134 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-1.94095" y="651.602">
<tspan x="-1.94095" y="651.602">oslo.messaging</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-2.09635" y="671.704">
<tspan x="-2.09635" y="671.704">DB</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-0.00755235" y="682.166">
<tspan x="-0.00755235" y="682.166"></tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-2.04795" y="691.422">
<tspan x="-2.04795" y="691.422">HTTP</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="-60.5022" y="609.866" width="21.859" height="22.5877"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="-60.5022" y="609.866" width="21.859" height="22.5877"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="-60.5022" y="609.866" width="21.859" height="22.5877"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-2.08015" y="622.434">
<tspan x="-2.08015" y="622.434">Nova service</tspan>
</text>
<g>
<polygon style="fill: #ffffff" points="-55.5864,583.818 -42.3658,583.818 -33.552,595.129 -42.3658,606.44 -55.5864,606.44 -64.4002,595.129 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="-55.5864,583.818 -42.3658,583.818 -33.552,595.129 -42.3658,606.44 -55.5864,606.44 -64.4002,595.129 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="-55.5864,583.818 -42.3658,583.818 -33.552,595.129 -42.3658,606.44 -55.5864,606.44 -64.4002,595.129 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="-2.14495" y="595.712">
<tspan x="-2.14495" y="595.712">External service</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="294.217" y1="511.485" x2="294.994" y2="474.677"/>
<polygon style="fill: #000000" points="295.152,467.179 299.94,477.282 294.994,474.677 289.942,477.071 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="295.152,467.179 299.94,477.282 294.994,474.677 289.942,477.071 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="292.066,580.371 346.107,627.371 292.066,674.371 238.025,627.371 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="292.066,580.371 346.107,627.371 292.066,674.371 238.025,627.371 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="292.066,580.371 346.107,627.371 292.066,674.371 238.025,627.371 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="292.066" y="627.371">
<tspan x="292.066" y="627.371">Hypervisor</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="259.145" y="132.647">
<tspan x="259.145" y="132.647">Nova-Networking</tspan>
</text>
<g>
<path style="fill: #a5a585" d="M 473.725 856.395 L 473.686,855.897 L 473.577,855.407 L 473.39,854.917 L 473.133,854.434 L 472.814,853.952 L 472.417,853.477 L 471.951,853.011 L 471.414,852.551 L 470.807,852.1 L 470.138,851.672 L 469.406,851.244 L 468.621,850.824 L 467.757,850.427 L 466.847,850.046 L 465.882,849.68 L 464.855,849.33 L 463.789,849.004 L 462.668,848.692 L 461.509,848.404 L 460.295,848.132 L 459.058,847.875 L 457.774,847.65 L 456.459,847.432 L 455.129,847.253 L 453.76,847.097 L 452.367,846.965 L 450.966,846.848 L 449.543,846.771 L 448.111,846.7 L 446.672,846.654 L 445.232,846.654 L 445.232,846.654 L 443.785,846.654 L 442.345,846.7 L 440.914,846.771 L 439.49,846.848 L 438.09,846.965 L 436.697,847.097 L 435.335,847.253 L 433.997,847.432 L 432.682,847.65 L 431.398,847.875 L 430.161,848.132 L 428.955,848.404 L 427.796,848.692 L 426.675,849.004 L 425.602,849.33 L 424.575,849.68 L 423.618,850.046 L 422.7,850.427 L 421.844,850.824 L 421.05,851.244 L 420.319,851.672 L 419.65,852.1 L 419.043,852.551 L 418.506,853.011 L 418.039,853.477 L 417.642,853.952 L 417.323,854.434 L 417.066,854.917 L 416.88,855.407 L 416.778,855.897 L 416.74,856.395 L 416.74,856.395 L 416.778,856.893 L 416.88,857.375 L 417.066,857.873 L 417.323,858.356 L 417.642,858.838 L 418.039,859.313 L 418.506,859.78 L 419.043,860.239 L 419.65,860.682 L 420.319,861.118 L 421.05,861.546 L 421.844,861.966 L 422.7,862.363 L 423.618,862.744 L 424.575,863.11 L 425.602,863.46 L 426.675,863.787 L 427.796,864.098 L 428.955,864.386 L 430.161,864.658 L 431.398,864.915 L 432.682,865.14 L 433.997,865.351 L 435.335,865.537 L 436.697,865.693 L 438.09,865.825 L 439.49,865.934 L 440.914,866.02 L 442.345,866.082 L 443.785,866.129 L 445.232,866.136 L 445.232,866.136 L 446.672,866.129 L 448.111,866.082 L 449.543,866.02 L 450.966,865.934 L 452.367,865.825 L 453.76,865.693 L 455.129,865.537 L 456.459,865.351 L 457.774,865.14 L 459.058,864.915 L 460.295,864.658 L 461.509,864.386 L 462.668,864.098 L 463.789,863.787 L 464.855,863.46 L 465.882,863.11 L 466.847,862.744 L 467.757,862.363 L 468.621,861.966 L 469.406,861.546 L 470.138,861.118 L 470.807,860.682 L 471.414,860.239 L 471.951,859.78 L 472.417,859.313 L 472.814,858.838 L 473.133,858.356 L 473.39,857.873 L 473.577,857.375 L 473.686,856.893 L 473.725,856.395z"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #494936" d="M 473.39 856.239 L 473.351,855.742 L 473.25,855.267 L 473.071,854.785 L 472.822,854.31 L 472.487,853.828 L 472.083,853.368 L 471.639,852.902 L 471.095,852.466 L 470.496,852.022 L 469.834,851.587 L 469.103,851.174 L 468.317,850.762 L 467.469,850.373 L 466.574,849.984 L 465.594,849.634 L 464.575,849.291 L 463.509,848.965 L 462.404,848.661 L 461.252,848.381 L 460.054,848.109 L 458.809,847.868 L 457.541,847.642 L 456.234,847.432 L 454.911,847.253 L 453.557,847.097 L 452.165,846.973 L 450.772,846.848 L 449.356,846.778 L 447.94,846.716 L 446.493,846.677 L 445.061,846.654 L 445.061,846.654 L 443.629,846.677 L 442.198,846.716 L 440.766,846.778 L 439.366,846.848 L 437.965,846.973 L 436.58,847.097 L 435.218,847.253 L 433.888,847.432 L 432.589,847.642 L 431.32,847.868 L 430.076,848.109 L 428.877,848.381 L 427.734,848.661 L 426.613,848.965 L 425.539,849.291 L 424.528,849.634 L 423.563,849.984 L 422.668,850.373 L 421.813,850.762 L 421.019,851.174 L 420.303,851.587 L 419.642,852.022 L 419.027,852.466 L 418.498,852.902 L 418.039,853.368 L 417.642,853.828 L 417.315,854.31 L 417.059,854.785 L 416.88,855.267 L 416.778,855.742 L 416.74,856.239 L 416.74,856.239 L 416.778,856.722 L 416.88,857.197 L 417.059,857.687 L 417.315,858.161 L 417.642,858.636 L 418.039,859.103 L 418.498,859.562 L 419.027,860.005 L 419.642,860.441 L 420.303,860.885 L 421.019,861.305 L 421.813,861.701 L 422.668,862.098 L 423.563,862.48 L 424.528,862.837 L 425.539,863.18 L 426.613,863.499 L 427.734,863.81 L 428.877,864.09 L 430.076,864.362 L 431.32,864.611 L 432.589,864.829 L 433.888,865.032 L 435.218,865.211 L 436.58,865.366 L 437.965,865.498 L 439.366,865.615 L 440.766,865.693 L 442.198,865.755 L 443.629,865.794 L 445.061,865.81 L 445.061,865.81 L 446.493,865.794 L 447.94,865.755 L 449.356,865.693 L 450.772,865.615 L 452.165,865.498 L 453.557,865.366 L 454.911,865.211 L 456.234,865.032 L 457.541,864.829 L 458.809,864.611 L 460.054,864.362 L 461.252,864.09 L 462.404,863.81 L 463.509,863.499 L 464.575,863.18 L 465.594,862.837 L 466.574,862.48 L 467.469,862.098 L 468.317,861.701 L 469.103,861.305 L 469.834,860.885 L 470.496,860.441 L 471.095,860.005 L 471.639,859.562 L 472.083,859.103 L 472.487,858.636 L 472.822,858.161 L 473.071,857.687 L 473.25,857.197 L 473.351,856.722 L 473.39,856.239"/>
<path style="fill: #a5a585" d="M 416.74 836.049 L 416.74,856.566 L 473.39,856.566 L 473.39,836.049 L 416.74,836.049z"/>
<path style="fill: #c9c9b6" d="M 473.725 835.878 L 473.686,835.372 L 473.577,834.882 L 473.39,834.399 L 473.133,833.917 L 472.814,833.427 L 472.417,832.952 L 471.951,832.478 L 471.414,832.034 L 470.807,831.591 L 470.138,831.139 L 469.406,830.727 L 468.621,830.307 L 467.757,829.902 L 466.847,829.529 L 465.882,829.163 L 464.855,828.805 L 463.789,828.478 L 462.668,828.175 L 461.509,827.879 L 460.295,827.607 L 459.058,827.358 L 457.774,827.132 L 456.459,826.922 L 455.129,826.736 L 453.76,826.58 L 452.367,826.448 L 450.966,826.339 L 449.543,826.253 L 448.111,826.183 L 446.672,826.144 L 445.232,826.136 L 445.232,826.136 L 443.785,826.144 L 442.345,826.183 L 440.914,826.253 L 439.49,826.339 L 438.09,826.448 L 436.697,826.58 L 435.335,826.736 L 433.997,826.922 L 432.682,827.132 L 431.398,827.358 L 430.161,827.607 L 428.955,827.879 L 427.796,828.175 L 426.675,828.478 L 425.602,828.805 L 424.575,829.163 L 423.618,829.529 L 422.7,829.902 L 421.844,830.307 L 421.05,830.727 L 420.319,831.139 L 419.65,831.591 L 419.043,832.034 L 418.506,832.478 L 418.039,832.952 L 417.642,833.427 L 417.323,833.917 L 417.066,834.399 L 416.88,834.882 L 416.778,835.372 L 416.74,835.878 L 416.74,835.878 L 416.778,836.368 L 416.88,836.866 L 417.066,837.34 L 417.323,837.838 L 417.642,838.313 L 418.039,838.795 L 418.506,839.262 L 419.043,839.714 L 419.65,840.165 L 420.319,840.601 L 421.05,841.028 L 421.844,841.441 L 422.7,841.838 L 423.618,842.219 L 424.575,842.592 L 425.602,842.935 L 426.675,843.269 L 427.796,843.58 L 428.955,843.868 L 430.161,844.141 L 431.398,844.397 L 432.682,844.615 L 433.997,844.833 L 435.335,845.012 L 436.697,845.168 L 438.09,845.308 L 439.49,845.409 L 440.914,845.502 L 442.345,845.565 L 443.785,845.603 L 445.232,845.619 L 445.232,845.619 L 446.672,845.603 L 448.111,845.565 L 449.543,845.502 L 450.966,845.409 L 452.367,845.308 L 453.76,845.168 L 455.129,845.012 L 456.459,844.833 L 457.774,844.615 L 459.058,844.397 L 460.295,844.141 L 461.509,843.868 L 462.668,843.58 L 463.789,843.269 L 464.855,842.935 L 465.882,842.592 L 466.847,842.219 L 467.757,841.838 L 468.621,841.441 L 469.406,841.028 L 470.138,840.601 L 470.807,840.165 L 471.414,839.714 L 471.951,839.262 L 472.417,838.795 L 472.814,838.313 L 473.133,837.838 L 473.39,837.34 L 473.577,836.866 L 473.686,836.368 L 473.725,835.878z"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #494936" d="M 473.39 835.722 L 473.351,835.224 L 473.25,834.75 L 473.071,834.275 L 472.822,833.793 L 472.487,833.302 L 472.083,832.843 L 471.639,832.4 L 471.095,831.941 L 470.496,831.505 L 469.834,831.062 L 469.103,830.657 L 468.317,830.245 L 467.469,829.848 L 466.574,829.482 L 465.594,829.116 L 464.575,828.782 L 463.509,828.455 L 462.404,828.144 L 461.252,827.856 L 460.054,827.591 L 458.809,827.35 L 457.541,827.125 L 456.234,826.922 L 454.911,826.736 L 453.557,826.58 L 452.165,826.448 L 450.772,826.339 L 449.356,826.253 L 448.881,826.23 L 441.241,826.23 L 440.766,826.253 L 439.366,826.339 L 437.965,826.448 L 436.58,826.58 L 435.218,826.736 L 433.888,826.922 L 432.589,827.125 L 431.32,827.35 L 430.076,827.591 L 428.877,827.856 L 427.734,828.144 L 426.613,828.455 L 425.539,828.782 L 424.528,829.116 L 423.563,829.482 L 422.668,829.848 L 421.813,830.245 L 421.019,830.657 L 420.303,831.062 L 419.642,831.505 L 419.027,831.941 L 418.498,832.4 L 418.039,832.843 L 417.642,833.302 L 417.315,833.793 L 417.059,834.275 L 416.88,834.75 L 416.778,835.224 L 416.74,835.722 L 416.74,835.722 L 416.778,836.197 L 416.88,836.687 L 417.059,837.169 L 417.315,837.644 L 417.642,838.119 L 418.039,838.585 L 418.498,839.037 L 419.027,839.496 L 419.642,839.931 L 420.303,840.367 L 421.019,840.787 L 421.813,841.184 L 422.668,841.573 L 423.563,841.962 L 424.528,842.32 L 425.539,842.655 L 426.613,842.974 L 427.734,843.285 L 428.877,843.565 L 430.076,843.837 L 431.32,844.094 L 432.589,844.296 L 433.888,844.514 L 435.218,844.685 L 436.58,844.849 L 437.965,844.989 L 439.366,845.098 L 440.766,845.183 L 442.198,845.238 L 443.629,845.269 L 445.061,845.292 L 445.061,845.292 L 446.493,845.269 L 447.94,845.238 L 449.356,845.183 L 450.772,845.098 L 452.165,844.989 L 453.557,844.849 L 454.911,844.685 L 456.234,844.514 L 457.541,844.296 L 458.809,844.094 L 460.054,843.837 L 461.252,843.565 L 462.404,843.285 L 463.509,842.974 L 464.575,842.655 L 465.594,842.32 L 466.574,841.962 L 467.469,841.573 L 468.317,841.184 L 469.103,840.787 L 469.834,840.367 L 470.496,839.931 L 471.095,839.496 L 471.639,839.037 L 472.083,838.585 L 472.487,838.119 L 472.822,837.644 L 473.071,837.169 L 473.25,836.687 L 473.351,836.197 L 473.39,835.722"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #000000" d="M 416.74 835.722 L 416.74,856.224"/>
<path style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #000000" d="M 473.39 835.722 L 473.39,856.224"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="273.036" y="831.236">
<tspan x="273.036" y="831.236">API</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="281.992" y="984.728">
<tspan x="281.992" y="984.728">Conductor</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="231.258" y="777.248" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="231.258" y="777.248" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="231.258" y="777.248" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="286.379" y="834.206">
<tspan x="286.379" y="834.206">API</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="239.55" y="786.645" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="239.55" y="786.645" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="239.55" y="786.645" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="294.671" y="843.604">
<tspan x="294.671" y="843.604">API</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="233.47" y="934.79" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="233.47" y="934.79" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="233.47" y="934.79" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="288.591" y="991.749">
<tspan x="288.591" y="991.749">Conductor</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="240.766" y="943.634" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="240.766" y="943.634" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="240.766" y="943.634" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="295.887" y="1000.59">
<tspan x="295.887" y="1000.59">Conductor</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="445.58" y="980.416">
<tspan x="445.58" y="980.416">Scheduler</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="400.962" y="932.856" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="400.962" y="932.856" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="400.962" y="932.856" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="456.083" y="989.815">
<tspan x="456.083" y="989.815">Scheduler</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="409.806" y="943.358" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="409.806" y="943.358" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="409.806" y="943.358" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="464.927" y="1000.32">
<tspan x="464.927" y="1000.32">Scheduler</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="294.671" y1="900.562" x2="295.064" y2="932.905"/>
<polygon style="fill: #000000" points="295.155,940.404 290.034,930.466 295.064,932.905 300.033,930.344 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="295.155,940.404 290.034,930.466 295.064,932.905 300.033,930.344 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="351.008" y1="1000.59" x2="399.093" y2="1000.48"/>
<polygon style="fill: #000000" points="406.593,1000.46 396.605,1005.48 399.093,1000.48 396.581,995.482 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="406.593,1000.46 396.605,1005.48 399.093,1000.48 396.581,995.482 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="445.025" y="846.087">
<tspan x="445.025" y="846.087">DB</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="349.792" y1="843.604" x2="407.008" y2="845.096"/>
<polygon style="fill: #000000" points="414.506,845.291 404.379,850.029 407.008,845.096 404.639,840.032 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="414.506,845.291 404.379,850.029 407.008,845.096 404.639,840.032 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="451.166" y1="933.773" x2="446.083" y2="875.835"/>
<polygon style="fill: #000000" points="445.428,868.364 451.282,877.889 446.083,875.835 441.321,878.763 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="445.428,868.364 451.282,877.889 446.083,875.835 441.321,878.763 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x1="351.832" y1="942.634" x2="420.914" y2="871.066"/>
<polygon style="fill: #000000" points="426.122,865.67 422.775,876.337 420.914,871.066 415.58,869.392 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="426.122,865.67 422.775,876.337 420.914,871.066 415.58,869.392 "/>
</g>
<g>
<rect style="fill: #ffffff" x="221.862" y="1088.74" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="221.862" y="1088.74" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="221.862" y="1088.74" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="276.983" y="1145.7">
<tspan x="276.983" y="1145.7">Compute</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="229.6" y="1097.17" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="229.6" y="1097.17" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="229.6" y="1097.17" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="284.721" y="1154.13">
<tspan x="284.721" y="1154.13">Compute</tspan>
</text>
<g>
<rect style="fill: #ffffff" x="237.34" y="1106.01" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="237.34" y="1106.01" width="110.242" height="113.917"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="237.34" y="1106.01" width="110.242" height="113.917"/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="292.461" y="1162.97">
<tspan x="292.461" y="1162.97">Compute</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="295.887" y1="1057.55" x2="294.659" y2="1095.33"/>
<polygon style="fill: #000000" points="294.415,1102.83 289.743,1092.67 294.659,1095.33 299.737,1093 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="294.415,1102.83 289.743,1092.67 294.659,1095.33 299.737,1093 "/>
</g>
<g>
<path style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" d="M 354.277,1106.36 A 183.848,183.848 0 0 0 350.784,894.023"/>
<polygon style="fill: #000000" points="349.938,1112.46 352.033,1101.48 354.49,1106.5 359.981,1107.55 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="349.938,1112.46 352.033,1101.48 354.49,1106.5 359.981,1107.55 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="17.0172,776 82.9324,776 126.876,841 82.9324,905.999 17.0172,905.999 -26.9262,841 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.0172,776 82.9324,776 126.876,841 82.9324,905.999 17.0172,905.999 -26.9262,841 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.0172,776 82.9324,776 126.876,841 82.9324,905.999 17.0172,905.999 -26.9262,841 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="54.9684" y="843.954">
<tspan x="54.9684" y="843.954">Keystone</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="238.578" y1="843.686" x2="135.881" y2="843.836"/>
<polygon style="fill: #000000" points="128.381,843.847 138.373,838.832 135.881,843.836 138.388,848.832 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="128.381,843.847 138.373,838.832 135.881,843.836 138.388,848.832 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="238.545" y1="881.13" x2="114.84" y2="963.842"/>
<polygon style="fill: #000000" points="108.605,968.011 114.139,958.296 114.84,963.842 119.697,966.609 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="108.605,968.011 114.139,958.296 114.84,963.842 119.697,966.609 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="236.339" y1="1125.36" x2="112.045" y2="1042.06"/>
<polygon style="fill: #000000" points="105.815,1037.89 116.905,1039.3 112.045,1042.06 111.338,1047.61 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="105.815,1037.89 116.905,1039.3 112.045,1042.06 111.338,1047.61 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="622.283,928.854 688.198,928.854 732.142,993.854 688.198,1058.85 622.283,1058.85 578.34,993.854 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="622.283,928.854 688.198,928.854 732.142,993.854 688.198,1058.85 622.283,1058.85 578.34,993.854 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="622.283,928.854 688.198,928.854 732.142,993.854 688.198,1058.85 622.283,1058.85 578.34,993.854 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="660.234" y="996.809">
<tspan x="660.234" y="996.809">Glance &amp;</tspan>
<tspan x="660.234" y="1012.81"> Cinder</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="350.764" y1="867.112" x2="584.987" y2="965.273"/>
<polygon style="fill: #000000" points="591.905,968.172 580.749,968.918 584.987,965.273 584.614,959.696 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="591.905,968.172 580.749,968.918 584.987,965.273 584.614,959.696 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 20 4 4 4 4 4; stroke: #000000" x1="348.59" y1="1137.61" x2="589.408" y2="1028.81"/>
<polygon style="fill: #000000" points="596.242,1025.72 589.188,1034.39 589.408,1028.81 585.071,1025.28 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="596.242,1025.72 589.188,1034.39 589.408,1028.81 585.071,1025.28 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="293.683" y1="1105.05" x2="294.459" y2="1068.25"/>
<polygon style="fill: #000000" points="294.617,1060.75 299.405,1070.85 294.459,1068.25 289.408,1070.64 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="294.617,1060.75 299.405,1070.85 294.459,1068.25 289.408,1070.64 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="291.532,1173.94 345.573,1220.94 291.532,1267.94 237.491,1220.94 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="291.532,1173.94 345.573,1220.94 291.532,1267.94 237.491,1220.94 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="291.532,1173.94 345.573,1220.94 291.532,1267.94 237.491,1220.94 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="291.532" y="1220.94">
<tspan x="291.532" y="1220.94">Hypervisor</tspan>
</text>
<text font-size="12.8" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="258.61" y="726.215">
<tspan x="258.61" y="726.215">Neutron</tspan>
</text>
<g>
<polygon style="fill: #ffffff" points="17.0653,935.887 82.9804,935.887 126.924,1000.89 82.9804,1065.89 17.0653,1065.89 -26.8782,1000.89 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.0653,935.887 82.9804,935.887 126.924,1000.89 82.9804,1065.89 17.0653,1065.89 -26.8782,1000.89 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="17.0653,935.887 82.9804,935.887 126.924,1000.89 82.9804,1065.89 17.0653,1065.89 -26.8782,1000.89 "/>
</g>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="55.0164" y="1003.84">
<tspan x="55.0164" y="1003.84">Neutron</tspan>
</text>
</svg>