From b9d2d762b6e9358000a273d87db678e5806a3826 Mon Sep 17 00:00:00 2001 From: martinaabojensen Date: Thu, 28 Aug 2025 00:01:39 +0000 Subject: [PATCH] Updated with additional blueprints --- .../host_vars/GBP08-AIO-1/aio_3gpp.yaml | 12 +- .../host_vars/GBP08-AIO-1/aio_networking.yaml | 8 +- ansible_workspace/staging/hosts.yaml | 2 +- static/blueprints/00_simple_5G_only.json | 81 +++++++++- static/blueprints/01_single_site.json | 103 +++++++++++++ static/blueprints/02_high_availability.json | 132 +++++++++++++++++ .../blueprints/04_high_availability_ipv6.json | 132 +++++++++++++++++ .../blueprints/05_high_availability_ospf.json | 132 +++++++++++++++++ static/blueprints/06_upf_active_standby.json | 138 ++++++++++++++++++ static/blueprints/08_all_in_one.json | 36 ++++- system_info.json | 2 +- 11 files changed, 752 insertions(+), 26 deletions(-) create mode 100644 static/blueprints/01_single_site.json create mode 100644 static/blueprints/02_high_availability.json create mode 100644 static/blueprints/04_high_availability_ipv6.json create mode 100644 static/blueprints/05_high_availability_ospf.json create mode 100644 static/blueprints/06_upf_active_standby.json diff --git a/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_3gpp.yaml b/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_3gpp.yaml index 55b8c31..e251c4d 100644 --- a/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_3gpp.yaml +++ b/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_3gpp.yaml @@ -39,15 +39,15 @@ _ngc_ext_aio_transport: # RAN transports (use RAN IP) - action: override_amf_n2_transport - params: { address: 192.168.120.95, vrf: RAN } + params: { address: 172.29.20.25, vrf: RAN } - action: override_mme_transport - params: { s1_address: 192.168.120.95, s1_vrf: RAN } + params: { s1_address: 172.29.20.25, s1_vrf: RAN } # UPF transports (N3 on RAN) - action: override_upf_transport params: n3_interface: eth1 - n3_address: 192.168.120.95 + n3_address: 172.29.20.25 n3_vrf: RAN # DN/DNN (N6) with UE pool @@ -58,10 +58,10 @@ _ngc_ext_aio_transport: n6_vlan: 10 n6_vrf_table: 511 n6_interface: eth2 - n6_ip: 192.168.110.95/24 - n6_gw: 192.168.110.1 + n6_ip: 192.168.86.234/24 + n6_gw: 192.168.86.1 n6_upf_pools: - - upf_route: 100.0.94.0/24 + - upf_route: 100.93.0.0/24 nssai: false n6_bgp: local_as: 65001 diff --git a/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_networking.yaml b/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_networking.yaml index 4c5e4bd..c6e1115 100644 --- a/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_networking.yaml +++ b/ansible_workspace/staging/host_vars/GBP08-AIO-1/aio_networking.yaml @@ -5,8 +5,8 @@ net_recipe: generic_bgp oam_network: add_ansible_host_address: false addresses: - - 192.168.105.159/24 - gateway4: 192.168.105.1 + - 192.168.86.54/24 + gateway4: 192.168.86.1 # --- NTP --- ntp: @@ -27,7 +27,7 @@ _ngc_ext_aio_net: interface: eth1 vrf: RAN addresses: - - 192.168.120.95/24 # S1+N2+N3 + - 172.29.20.25/24 # S1+N2+N3 routes: - destination: 0.0.0.0/0 - gateway: 192.168.120.1 \ No newline at end of file + gateway: 172.29.20.1 \ No newline at end of file diff --git a/ansible_workspace/staging/hosts.yaml b/ansible_workspace/staging/hosts.yaml index 0494ed6..79be35f 100644 --- a/ansible_workspace/staging/hosts.yaml +++ b/ansible_workspace/staging/hosts.yaml @@ -1,7 +1,7 @@ all: hosts: GBP08-AIO-1: - ansible_host: 100.93.1.100 + ansible_host: 100.92.0.80 children: ESXi: hosts: diff --git a/static/blueprints/00_simple_5G_only.json b/static/blueprints/00_simple_5G_only.json index de67992..2b357e6 100644 --- a/static/blueprints/00_simple_5G_only.json +++ b/static/blueprints/00_simple_5G_only.json @@ -2,15 +2,80 @@ "layout": { "name": "preset" }, "elements": { "nodes": [ - { "data": { "id": "left", "label": "Cell Site" }, "position": { "x": 100, "y": 250 } }, - { "data": { "id": "core", "label": "Core" }, "position": { "x": 400, "y": 250 } }, - { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 700, "y": 250 } }, - { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 400, "y": 50 } } + { "data": { "id": "5gran", "label": "5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 300 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 700, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 700, "y": 50 } } ], "edges": [ - { "data": { "id": "e1", "source": "left", "target": "core", "sourceLabel": "", "targetLabel": "" } }, - { "data": { "id": "e2", "source": "core", "target": "dn", "sourceLabel": "", "targetLabel": "" } }, - { "data": { "id": "e3", "source": "mgmt", "target": "core", "sourceLabel": "", "targetLabel": "" } } + { "data": { "id": "n4", "source": "core_cpsig", "target": "core_up", "midLabel": "", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_ran_core", "source": "core_up", "target": "core_cpsig", "midLabel": "n4", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up", "target": "dn", "midLabel": "n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "n2", "sourceLabel": "", "targetLabel": "" } } ] - } + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + } + ] } \ No newline at end of file diff --git a/static/blueprints/01_single_site.json b/static/blueprints/01_single_site.json new file mode 100644 index 0000000..659cf28 --- /dev/null +++ b/static/blueprints/01_single_site.json @@ -0,0 +1,103 @@ +{ + "layout": { "name": "preset" }, + "elements": { + "nodes": [ + { "data": { "id": "5gran", "label": "4G/5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 300 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 700, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 700, "y": 50 } } + ], + "edges": [ + { + "data": { "id": "n4", "source": "core_cpsig", "target": "core_up", "midLabel": "n4", "sourceLabel": "", "targetLabel": "" }, + "classes": "n4_curve_left" + }, + { + "data": { "id": "n4_2", "source": "core_cpsig", "target": "core_up", "midLabel": "S5", "sourceLabel": "", "targetLabel": "" }, + "classes": "n4_curve_right" + }, + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "S1-MME / n2", "sourceLabel": "", "targetLabel": "" } } + ] + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + }, + { + "selector": ".n4_curve_left", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [-80], + "control-point-weights": [0.5] + } + }, + { + "selector": ".n4_curve_right", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [80], + "control-point-weights": [0.5] + } + } + ] +} diff --git a/static/blueprints/02_high_availability.json b/static/blueprints/02_high_availability.json new file mode 100644 index 0000000..95c710c --- /dev/null +++ b/static/blueprints/02_high_availability.json @@ -0,0 +1,132 @@ +{ + "layout": { "name": "preset" }, + "elements": { + "nodes": [ + { "data": { "id": "5gran", "label": "4G/5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine 1" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 300 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 950, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 525, "y": 0 } }, + { "data": { "id": "host_2", "label": "Host Machine 2" }, "position": { "x": 650, "y": 250 } }, + { "data": { "id": "core_cpsig_2", "label": "ngcore-CPSIG", "parent": "host_2" }, "position": { "x": 650, "y": 150 } }, + { "data": { "id": "core_up_2", "label": "ngcore-UP", "parent": "host_2" }, "position": { "x": 650, "y": 300 } } + ], + "edges": [ + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "S1-MME / n2", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_5gran_2", "source": "core_up_2", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn_2", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core_2", "source": "mgmt", "target": "host_2", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } } + ] + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#host_2", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_cpsig_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + }, + { + "selector": ".n4_curve_left", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [-80], + "control-point-weights": [0.5] + } + }, + { + "selector": ".n4_curve_right", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [80], + "control-point-weights": [0.5] + } + } + ] +} diff --git a/static/blueprints/04_high_availability_ipv6.json b/static/blueprints/04_high_availability_ipv6.json new file mode 100644 index 0000000..72f0390 --- /dev/null +++ b/static/blueprints/04_high_availability_ipv6.json @@ -0,0 +1,132 @@ +{ + "layout": { "name": "preset" }, + "elements": { + "nodes": [ + { "data": { "id": "5gran", "label": "4G/5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine 1" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 300 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 950, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 525, "y": 0 } }, + { "data": { "id": "host_2", "label": "Host Machine 2" }, "position": { "x": 650, "y": 250 } }, + { "data": { "id": "core_cpsig_2", "label": "ngcore-CPSIG", "parent": "host_2" }, "position": { "x": 650, "y": 150 } }, + { "data": { "id": "core_up_2", "label": "ngcore-UP", "parent": "host_2" }, "position": { "x": 650, "y": 300 } } + ], + "edges": [ + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "S1-MME / n2", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_5gran_2", "source": "core_up_2", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn_2", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core_2", "source": "mgmt", "target": "host_2", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } } + ] + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#host_2", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_cpsig_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + }, + { + "selector": ".n4_curve_left", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [-80], + "control-point-weights": [0.5] + } + }, + { + "selector": ".n4_curve_right", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [80], + "control-point-weights": [0.5] + } + } + ] +} \ No newline at end of file diff --git a/static/blueprints/05_high_availability_ospf.json b/static/blueprints/05_high_availability_ospf.json new file mode 100644 index 0000000..72f0390 --- /dev/null +++ b/static/blueprints/05_high_availability_ospf.json @@ -0,0 +1,132 @@ +{ + "layout": { "name": "preset" }, + "elements": { + "nodes": [ + { "data": { "id": "5gran", "label": "4G/5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine 1" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 300 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 950, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 525, "y": 0 } }, + { "data": { "id": "host_2", "label": "Host Machine 2" }, "position": { "x": 650, "y": 250 } }, + { "data": { "id": "core_cpsig_2", "label": "ngcore-CPSIG", "parent": "host_2" }, "position": { "x": 650, "y": 150 } }, + { "data": { "id": "core_up_2", "label": "ngcore-UP", "parent": "host_2" }, "position": { "x": 650, "y": 300 } } + ], + "edges": [ + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "S1-MME / n2", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_5gran_2", "source": "core_up_2", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn_2", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core_2", "source": "mgmt", "target": "host_2", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } } + ] + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#host_2", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_cpsig_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + }, + { + "selector": ".n4_curve_left", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [-80], + "control-point-weights": [0.5] + } + }, + { + "selector": ".n4_curve_right", + "style": { + "curve-style": "unbundled-bezier", + "control-point-distances": [80], + "control-point-weights": [0.5] + } + } + ] +} \ No newline at end of file diff --git a/static/blueprints/06_upf_active_standby.json b/static/blueprints/06_upf_active_standby.json new file mode 100644 index 0000000..f293ecd --- /dev/null +++ b/static/blueprints/06_upf_active_standby.json @@ -0,0 +1,138 @@ +{ + "layout": { "name": "preset" }, + "elements": { + "nodes": [ + { "data": { "id": "5gran", "label": "4G/5G RAN" }, "position": { "x": 100, "y": 300 } }, + { "data": { "id": "host", "label": "Host Machine 1" }, "position": { "x": 400, "y": 250 } }, + { "data": { "id": "core_cpsig", "label": "ngcore-CPSIG", "parent": "host" }, "position": { "x": 400, "y": 150 } }, + { "data": { "id": "core_up", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 275 } }, + { "data": { "id": "core_up_1b", "label": "ngcore-UP", "parent": "host" }, "position": { "x": 400, "y": 375 } }, + { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 950, "y": 300 } }, + { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 525, "y": 0 } }, + { "data": { "id": "host_2", "label": "Host Machine 2" }, "position": { "x": 650, "y": 250 } }, + { "data": { "id": "core_cpsig_2", "label": "ngcore-CPSIG", "parent": "host_2" }, "position": { "x": 650, "y": 150 } }, + { "data": { "id": "core_up_2", "label": "ngcore-UP", "parent": "host_2" }, "position": { "x": 650, "y": 275 } }, + { "data": { "id": "core_up_2b", "label": "ngcore-UP", "parent": "host_2" }, "position": { "x": 650, "y": 375 } } + ], + "edges": [ + { "data": { "id": "e_core_up_5gran", "source": "core_up", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_1b_5gran", "source": "core_up_1b", "target": "5gran", "midLabel": "S1-U / n3", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_2b_dn", "source": "core_up_2b", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core", "source": "mgmt", "target": "host", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_5gran_core_cpsig", "source": "5gran", "target": "core_cpsig", "midLabel": "S1-MME / n2", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_dn_2", "source": "core_up_2", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_core_up_2b_dn_2", "source": "core_up_2b", "target": "dn", "midLabel": "SGi / n6", "sourceLabel": "", "targetLabel": "" } }, + { "data": { "id": "e_mgmt_core_2", "source": "mgmt", "target": "host_2", "midLabel": "Mgmt Netw", "sourceLabel": "", "targetLabel": "" } } + ] + }, + "styles": [ + { + "selector": "#host", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#host_2", + "style": { + "width": 180, + "height": 180, + "text-valign": "bottom", + "text-margin-y": 20, + "background-color": "#f8fafc", + "border-color": "#94a3b8", + "border-width": 2, + "font-weight": "600" + } + }, + { + "selector": "#core_cpsig", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_cpsig_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#f59e42", + "border-width": 0 + } + }, + { + "selector": "#core_up", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_1b", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_2", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#core_up_2b", + "style": { + "width": 140, + "height": 60, + "background-color": "#fde047", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "width": 100, + "height": 50, + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "width": 100, + "height": 50, + "border-width": 0 + } + }, + { + "selector": "#5gran", + "style": { + "width": 100, + "height": 50, + "background-color": "#ef4444", + "border-width": 0 + } + } + ] +} \ No newline at end of file diff --git a/static/blueprints/08_all_in_one.json b/static/blueprints/08_all_in_one.json index aee7077..c59e3a0 100644 --- a/static/blueprints/08_all_in_one.json +++ b/static/blueprints/08_all_in_one.json @@ -3,10 +3,8 @@ "elements": { "nodes": [ { "data": { "id": "ran", "label": "RAN" }, "position": { "x": 100, "y": 240 } }, - - { "data": { "id": "proxmox", "label": "Proxmox Host" }, "position": { "x": 450, "y": 240 } }, - { "data": { "id": "core", "label": "All-in-One Core", "parent": "proxmox" }, "position": { "x": 450, "y": 240 } }, - + { "data": { "id": "server1", "label": "Host Machine" }, "position": { "x": 450, "y": 240 } }, + { "data": { "id": "core", "label": "4G/5G All-in-One Core", "parent": "server1" }, "position": { "x": 450, "y": 240 } }, { "data": { "id": "dn", "label": "Data Network" }, "position": { "x": 800, "y": 240 } }, { "data": { "id": "mgmt", "label": "Management" }, "position": { "x": 450, "y": 0 } } ], @@ -45,7 +43,7 @@ }, "styles": [ { - "selector": "#proxmox", + "selector": "#server1", "style": { "width": 340, "height": 180, @@ -59,7 +57,33 @@ }, { "selector": "#core", - "style": { "width": 140, "height": 70 } + "style": { + "width": 140, + "height": 70, + "background-color": "#22c55e", + "border-width": 0 + } + }, + { + "selector": "#ran", + "style": { + "background-color": "#ef4444", + "border-width": 0 + } + }, + { + "selector": "#dn", + "style": { + "background-color": "#000000", + "color": "#ffffff", + "border-width": 0 + } + }, + { + "selector": "#mgmt", + "style": { + "border-width": 0 + } } ] } \ No newline at end of file diff --git a/system_info.json b/system_info.json index 19ac2e0..79e1ab0 100644 --- a/system_info.json +++ b/system_info.json @@ -16,7 +16,7 @@ "machine_id": "7ebd37b3c5a44ff7acafc84fa3af449d", "num_cpu": 4, "virtualization": "kvm", - "target_host_ip": "100.93.1.100", + "target_host_ip": "100.93.1.43", "mgmt": { "cidr": "192.168.105.156/24", "gw": "192.168.105.1"