Files
document-haness/docs/keycloak-session-store/final/assets/lab-topology/lab-topology.drawio
T

47 lines
4.5 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="app.diagrams.net" modified="2026-07-23T00:00:00.000Z" agent="techviz-harness" version="24.7.17" type="device">
<diagram id="lab-topology" name="실험대의 구성">
<mxGraphModel dx="1260" dy="319" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1260" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="n_nginx" value="호스트 nginx&lt;br/&gt;SAN: auth · app1 · app2" tooltip="Let&#x27;s Encrypt 인증서로 TLS 를 끝내고 traefik 으로 넘긴다. | Evidence: L123-L127" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;rhombus;perimeter=rhombusPerimeter;fillColor=#fff7e8;strokeColor=#2563eb;strokeWidth=2;" vertex="1" parent="1">
<mxGeometry x="70.0" y="131.5" width="195.0" height="71.0" as="geometry"/>
</mxCell>
<mxCell id="n_traefik" value="traefik (kc-lab-1)&lt;br/&gt;k3s server 노드" tooltip="k3s 의 인그레스. 호스트 이름으로 서비스를 고른다. | Evidence: L120-L122" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;rhombus;perimeter=rhombusPerimeter;fillColor=#fff7e8;" vertex="1" parent="1">
<mxGeometry x="425.0" y="131.5" width="160.0" height="71.0" as="geometry"/>
</mxCell>
<mxCell id="n_keycloak-0" value="keycloak-0&lt;br/&gt;kc-lab-2" tooltip="저장소와 같은 노드에 있다. | Evidence: L122-L122" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;strokeColor=#2563eb;strokeWidth=2;" vertex="1" parent="1">
<mxGeometry x="745.0" y="60.0" width="150.0" height="71.0" as="geometry"/>
</mxCell>
<mxCell id="n_keycloak-1" value="keycloak-1&lt;br/&gt;kc-lab-1" tooltip="컨트롤 플레인 노드에 있다. | Evidence: L120-L120" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;strokeColor=#2563eb;strokeWidth=2;" vertex="1" parent="1">
<mxGeometry x="745.0" y="203.0" width="150.0" height="71.0" as="geometry"/>
</mxCell>
<mxCell id="n_stores" value="PostgreSQL · Redis&lt;br/&gt;kc-lab-2" tooltip="둘 다 kc-lab-2 에 있다. 이 노드를 잃으면 저장소도 같이 잃는다. | Evidence: L122-L122" style="whiteSpace=wrap;html=1;rounded=1;strokeWidth=2;fontSize=14;fontStyle=1;fillColor=#ffffff;strokeColor=#2d4357;verticalAlign=middle;shape=cylinder3;boundedLbl=1;backgroundOutline=1;fillColor=#eef6fb;strokeColor=#d97706;fillColor=#fffdf5;" vertex="1" parent="1">
<mxGeometry x="1055.0" y="131.5" width="160.0" height="71.0" as="geometry"/>
</mxCell>
<mxCell id="e_k0-store" value="같은 노드" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_keycloak-0" target="n_stores">
<mxGeometry relative="1" as="geometry">
<mxPoint x="999.0" y="131.2" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_tls" value="TLS 종단" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_nginx" target="n_traefik">
<mxGeometry relative="1" as="geometry">
<mxPoint x="345.0" y="139.0" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_to-k0" value="라우팅" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_traefik" target="n_keycloak-0">
<mxGeometry relative="1" as="geometry">
<mxPoint x="689.0" y="126.8" as="offset"/>
</mxGeometry>
</mxCell>
<mxCell id="e_to-k1" value="라우팅" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;strokeWidth=2;endArrow=block;endFill=1;" edge="1" parent="1" source="n_traefik" target="n_keycloak-1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="689.0" y="207.2" as="offset"/>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>