From 0252a426f078886a68cea6f00f7731850fca7cff Mon Sep 17 00:00:00 2001 From: sergio-tarazona Date: Mon, 20 Jun 2022 17:54:30 -0500 Subject: [PATCH 1/2] new oai-helm procedure created --- oai-helm/5g_params.yaml | 8 + oai-helm/5gcore_ns/5gcore_nsd.yaml | 59 ++++ oai-helm/README.md | 113 ++++++++ oai-helm/ext-dn_vnf/.sample_ee_vnfd.yaml.swp | Bin 0 -> 16384 bytes oai-helm/ext-dn_vnf/ext-dn_vnfd.yaml | 130 +++++++++ .../helm-charts/eechart/.helmignore | 22 ++ .../ext-dn_vnf/helm-charts/eechart/Chart.yaml | 5 + .../eechart/charts.sample/mysql-8.8.26.tgz | Bin 0 -> 40369 bytes .../helm-charts/eechart/charts/.gitkeep | 0 .../eechart/source/docker-compose.yaml | 224 +++++++++++++++ .../helm-charts/eechart/source/install.sh | 36 +++ .../eechart/source/install_docker.sh | 31 ++ .../helm-charts/eechart/source/mylib.py | 80 ++++++ .../helm-charts/eechart/source/playbook.yaml | 14 + .../helm-charts/eechart/source/run_ssh.sh | 43 +++ .../helm-charts/eechart/source/vnf_ee.py | 206 ++++++++++++++ .../helm-charts/eechart/templates/NOTES.txt | 21 ++ .../eechart/templates/_helpers.tpl | 56 ++++ .../eechart/templates/configmap.yaml | 6 + .../eechart/templates/generator.yaml | 7 + .../eechart/templates/ingress.yaml | 41 +++ .../helm-charts/eechart/templates/mibs.yaml | 6 + .../helm-charts/eechart/templates/secret.yaml | 9 + .../eechart/templates/service.yaml | 16 ++ .../eechart/templates/serviceaccount.yaml | 8 + .../eechart/templates/statefulset.yaml | 65 +++++ .../templates/tests/test-connection.yaml | 15 + .../helm-charts/eechart/values.yaml | 77 +++++ oai-helm/gnbsim_vnf/.sample_ee_vnfd.yaml.swp | Bin 0 -> 16384 bytes oai-helm/gnbsim_vnf/gnbsim_vnfd.yaml | 183 ++++++++++++ .../helm-charts/eechart/.helmignore | 22 ++ .../gnbsim_vnf/helm-charts/eechart/Chart.yaml | 5 + .../eechart/charts.sample/mysql-8.8.26.tgz | Bin 0 -> 40369 bytes .../helm-charts/eechart/charts/.gitkeep | 0 .../eechart/source/docker-compose-gnbsim.yaml | 265 ++++++++++++++++++ .../helm-charts/eechart/source/install.sh | 36 +++ .../eechart/source/install_docker.sh | 31 ++ .../helm-charts/eechart/source/mylib.py | 80 ++++++ .../helm-charts/eechart/source/playbook.yaml | 14 + .../helm-charts/eechart/source/run_ssh.sh | 43 +++ .../helm-charts/eechart/source/vnf_ee.py | 206 ++++++++++++++ .../helm-charts/eechart/templates/NOTES.txt | 21 ++ .../eechart/templates/_helpers.tpl | 56 ++++ .../eechart/templates/configmap.yaml | 6 + .../eechart/templates/generator.yaml | 7 + .../eechart/templates/ingress.yaml | 41 +++ .../helm-charts/eechart/templates/mibs.yaml | 6 + .../helm-charts/eechart/templates/secret.yaml | 9 + .../eechart/templates/service.yaml | 16 ++ .../eechart/templates/serviceaccount.yaml | 8 + .../eechart/templates/statefulset.yaml | 65 +++++ .../templates/tests/test-connection.yaml | 15 + .../helm-charts/eechart/values.yaml | 77 +++++ oai-helm/img/architecture.png | Bin 0 -> 80519 bytes oai-helm/img/ext-server.png | Bin 0 -> 22933 bytes oai-helm/img/gnbsim.png | Bin 0 -> 23065 bytes oai-helm/img/login.png | Bin 0 -> 102435 bytes oai-helm/infra.sh | 4 + oai-helm/oai_knf/oai_vnfd.yaml | 18 ++ oai-helm/pdu.yaml | 9 + .../vyos_pnf/helm-charts/eechart/.helmignore | 22 ++ .../vyos_pnf/helm-charts/eechart/Chart.yaml | 5 + .../eechart/charts.sample/mysql-8.8.26.tgz | Bin 0 -> 40369 bytes .../helm-charts/eechart/charts/.gitkeep | 0 .../eechart/source/configure-remote.yaml | 11 + .../helm-charts/eechart/source/install.sh | 36 +++ .../eechart/source/install_nginx.sh | 9 + .../helm-charts/eechart/source/mylib.py | 80 ++++++ .../helm-charts/eechart/source/playbook.yaml | 14 + .../helm-charts/eechart/source/run_ssh.sh | 43 +++ .../helm-charts/eechart/source/vnf_ee.py | 74 +++++ .../helm-charts/eechart/templates/NOTES.txt | 21 ++ .../eechart/templates/_helpers.tpl | 56 ++++ .../eechart/templates/configmap.yaml | 6 + .../eechart/templates/generator.yaml | 7 + .../eechart/templates/ingress.yaml | 41 +++ .../helm-charts/eechart/templates/mibs.yaml | 6 + .../helm-charts/eechart/templates/secret.yaml | 9 + .../eechart/templates/service.yaml | 16 ++ .../eechart/templates/serviceaccount.yaml | 8 + .../eechart/templates/statefulset.yaml | 65 +++++ .../templates/tests/test-connection.yaml | 15 + .../vyos_pnf/helm-charts/eechart/values.yaml | 77 +++++ oai-helm/vyos_pnf/vyos_pnfd.yaml | 65 +++++ 84 files changed, 3227 insertions(+) create mode 100644 oai-helm/5g_params.yaml create mode 100644 oai-helm/5gcore_ns/5gcore_nsd.yaml create mode 100644 oai-helm/README.md create mode 100644 oai-helm/ext-dn_vnf/.sample_ee_vnfd.yaml.swp create mode 100644 oai-helm/ext-dn_vnf/ext-dn_vnfd.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/.helmignore create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/Chart.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/charts/.gitkeep create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/source/docker-compose.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/source/install.sh create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/source/install_docker.sh create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/source/mylib.py create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/source/playbook.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/source/run_ssh.sh create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/source/vnf_ee.py create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/NOTES.txt create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/_helpers.tpl create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/configmap.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/generator.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/ingress.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/mibs.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/secret.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/service.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/serviceaccount.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/statefulset.yaml create mode 100755 oai-helm/ext-dn_vnf/helm-charts/eechart/templates/tests/test-connection.yaml create mode 100644 oai-helm/ext-dn_vnf/helm-charts/eechart/values.yaml create mode 100644 oai-helm/gnbsim_vnf/.sample_ee_vnfd.yaml.swp create mode 100644 oai-helm/gnbsim_vnf/gnbsim_vnfd.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/.helmignore create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/Chart.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/charts/.gitkeep create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/source/docker-compose-gnbsim.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/source/install.sh create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/source/install_docker.sh create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/source/mylib.py create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/source/playbook.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/source/run_ssh.sh create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/source/vnf_ee.py create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/NOTES.txt create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/_helpers.tpl create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/configmap.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/generator.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/ingress.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/mibs.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/secret.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/service.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/serviceaccount.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/statefulset.yaml create mode 100755 oai-helm/gnbsim_vnf/helm-charts/eechart/templates/tests/test-connection.yaml create mode 100644 oai-helm/gnbsim_vnf/helm-charts/eechart/values.yaml create mode 100644 oai-helm/img/architecture.png create mode 100644 oai-helm/img/ext-server.png create mode 100644 oai-helm/img/gnbsim.png create mode 100644 oai-helm/img/login.png create mode 100644 oai-helm/infra.sh create mode 100644 oai-helm/oai_knf/oai_vnfd.yaml create mode 100644 oai-helm/pdu.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/.helmignore create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/Chart.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/charts/.gitkeep create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/source/configure-remote.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/source/install.sh create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/source/install_nginx.sh create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/source/mylib.py create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/source/playbook.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/source/run_ssh.sh create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/source/vnf_ee.py create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/NOTES.txt create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/_helpers.tpl create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/configmap.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/templates/generator.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/ingress.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/templates/mibs.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/templates/secret.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/service.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/serviceaccount.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/statefulset.yaml create mode 100755 oai-helm/vyos_pnf/helm-charts/eechart/templates/tests/test-connection.yaml create mode 100644 oai-helm/vyos_pnf/helm-charts/eechart/values.yaml create mode 100644 oai-helm/vyos_pnf/vyos_pnfd.yaml diff --git a/oai-helm/5g_params.yaml b/oai-helm/5g_params.yaml new file mode 100644 index 00000000..3b110ea8 --- /dev/null +++ b/oai-helm/5g_params.yaml @@ -0,0 +1,8 @@ +ssh_keys: +- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDrcvnKVl3o2cN7YFmajQ2RqGGRVgL0OhdkQCXpehJSL/7rxD0rURlUCipqAvqzDQ0UvfPDxWKOJSxhZRY0SCOlb4W6WNBW7hTE31AjS0YtH/JUimc99567y3F1937sy3nzt4yAlIAoI3y7ZZKJI4EP29A47TZ2WbAuQhI/TsDbJmNpXLB0XtBvzTMJuPffwJep0nWp2nYyv21NBBk5rQF6yTi2dDJ3DwcatfaIv5o0UeI07mbyEmxV2hVrIxPKv3KG65dBvbvF+sjdFMp0tJUfqDn/FJso+jqlwmmvrtk+8bmhL7vzzMyUXyfCjUV2G+u0GOPjl3Q+rnxjCsl2yEib +k8s-namespace: oai +vnf: +- member-vnf-index: gnbsim + vimAccountId: b0fe741c-37d9-4f42-bce7-b163122a9790 +- member-vnf-index: ext-server + vimAccountId: 74c9e008-28ce-45c4-9634-9aec3177fb76 diff --git a/oai-helm/5gcore_ns/5gcore_nsd.yaml b/oai-helm/5gcore_ns/5gcore_nsd.yaml new file mode 100644 index 00000000..de20b1a8 --- /dev/null +++ b/oai-helm/5gcore_ns/5gcore_nsd.yaml @@ -0,0 +1,59 @@ +nsd: + nsd: + - description: NS with 1 VNF for gnbsim, 1 VNF for ext server, 1 PNF for VyOS router and 1 KNF for 5G OAI Core + df: + - id: default-df + vnf-profile: + - id: gnbsim + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: gnbsim + constituent-cpd-id: vnf-mgmt-ext + virtual-link-profile-id: mgmtnet + - constituent-cpd-id: + - constituent-base-element-id: gnbsim + constituent-cpd-id: vnf-internal-ext + ip-address: 192.168.1.5 + virtual-link-profile-id: datanet + vnfd-id: gnbsim-vnf + - id: ext-server + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: ext-server + constituent-cpd-id: vnf-mgmt-ext + virtual-link-profile-id: mgmtnet + - constituent-cpd-id: + - constituent-base-element-id: ext-server + constituent-cpd-id: vnf-internal-ext + ip-address: 192.168.1.6 + virtual-link-profile-id: datanet + vnfd-id: ext-dn-vnf + - id: vyos-pnf + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: vyos-pnf + constituent-cpd-id: gateway_public-ext + virtual-link-profile-id: mgmtnet + vnfd-id: vyos_pnf + - id: 5gcore_knf + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: 5gcore_knf + constituent-cpd-id: mgmt-ext + virtual-link-profile-id: mgmtnet + vnfd-id: oai_knf + id: 5gcore-ns + name: 5gcore-ns + version: 1.0 + virtual-link-desc: + - id: mgmtnet + mgmt-network: true + vim-network-name: osm-ext + - id: datanet + vim-network-name: 5g-inter-vm + vnfd-id: + - gnbsim-vnf + - oai_knf + - ext-dn-vnf + - vyos_pnf + diff --git a/oai-helm/README.md b/oai-helm/README.md new file mode 100644 index 00000000..74ead57e --- /dev/null +++ b/oai-helm/README.md @@ -0,0 +1,113 @@ +# OAI 5G Core deployment using helm-based EE + +This guide is intended to give all the considerations and descriptors needed to deploy a 5G Core, a gnbsim to emulate access (gNB and UE) and a external network to test. This guide also includes a PNF VyOS Router and its configuration to ensure the connectivity between elements in this architecture. + +## Architecture + +This architecture considers: + +![architecture](img/architecture.png) + +- gnbsim: the open source software to emulate gNB and UE, it's used to connect a gNB and register a UE to the 5G Core. In this case we're deploying it as a VNF. +- 5gcore: The open source project created by OAI (Open Air Interface), it deploys the 5G SA core including NF like NRF, AMF, SMF, UDR, UDM, UPF. In this case we're going to deploy it as a CNF. +- ext-dn: this is the external network we're implementing to test the 5G core, it implements an iperf server to test from the UE. In this case we're deploying it as a VNF. + +## Preparation + +### Infrastructure preparation + +#### Openstack + +Two networks should be defined, one for 5gcore and other for communication between access and external-network: + +- 5g-core-cp: 192.168.18.0/24 (could be shorter), gateway and port-security in the VMs must be disabled +- 5g-inter-vm: 192.168.1.0/29, gateway and port-security in the VMs must be disabled + +#### Kubernetes cluster + +Since 5G Core is going to be deployed on a K8s cluster, take note of what you need in your K8s Cluster first: + +1. K8s cluster must have multus and macvlan installed since 5G core needs PODs with two interfaces. +2. Worker nodes must have one additional interface (ens8) in the network 192.168.18.0/24 (could be shorter), for example worker01 could have 192.168.18.3, worker02 could have 192.168.18.4 and so on. + +#### PNF + +VyOS Router will provide connectivity. It must have 3 interfaces: + +- One should be the default for 5g-core-cp network: 192.168.18.129 +- One should be the default for 5g-inter-vm network: 192.168.1.1 +- One for management, this depends on the infra and will be used to connect from OSM. + +You could use the infra.sh script to create PDU in OSM. You also have the pdu.yaml file, make sure to put there the management IP you have for your VyOS VM. Specific configuration for this deployment will be performed from OSM later. + +## Launching the network service (NS) + +Make sure that VNF/KNF packages are already onboarded in OSM (osm nfpkg-list), if not, you can create them: +``` +osm nfpkg-create gnbsim_vnf +osm nfpkg-create ext-dn_vnf +osm nfpkg-create oai_knf +osm nfpkg-create vyos_ns +``` +Make sure that NS package is already onboarded in OSM (osm nspkg-list), if not, you can create it: +``` +osm nspkg-create 5gcore_ns +``` +Then you have the 5g_core.yaml file which passes additional configuration to the NS, in this case: + +- ssh_keys: this ssh key is of the server we'll be using to ssh to the VNF gnbsim and ext-dn. Another option is using cloud-init to set a password. +- k8s-namespace: a specific namespace is used to deploy the 5G Core in K8s cluster. +- vimAccountId: a different VIM is used to deploy gnbsim and ext-server. +``` +ssh_keys: +- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDrcvnKVl3o2cN7YFmajQ2RqGGRVgL0OhdkQCXpehJSL/7rxD0rURlUCipqAvqzDQ0UvfPDxWKOJSxhZRY0SCOlb4W6WNBW7hTE31AjS0YtH/JUimc99567y3F1937sy3nzt4yAlIAoI3y7ZZKJI4EP29A47TZ2WbAuQhI/TsDbJmNpXLB0XtBvzTMJuPffwJep0nWp2nYyv21NBBk5rQF6yTi2dDJ3DwcatfaIv5o0UeI07mbyEmxV2hVrIxPKv3KG65dBvbvF+sjdFMp0tJUfqDn/FJso+jqlwmmvrtk+8bmhL7vzzMyUXyfCjUV2G+u0GOPjl3Q+rnxjCsl2yEib +k8s-namespace: oai +vnf: +- member-vnf-index: gnbsim + vimAccountId: b0fe741c-37d9-4f42-bce7-b163122a9790 +- member-vnf-index: ext-server + vimAccountId: 74c9e008-28ce-45c4-9634-9aec3177fb76 +``` +The command to instantiate this NS is: +``` +osm ns-create --ns_name 5g --nsd_name 5gcore-ns --vim_account whitecloud --config_file 5g_params.yaml +``` + +## Starting services from OSM + +Since Helm-based EE is used to create primitives for day-1 and day-2, we're going to use the GUI to start external server and gnbsim services: + +### Starting external server service + +First log in OSM and find the NS created, then click in "Action" and click in "Exec Primitive" + +![architecture](img/login.png) + +In the opened window select "VNF Level Primitive", "ext-server", "ext_dn_up", "file" and type "ext-dn-oai", then click in Execute: + +![architecture](img/ext-server.png) + +### Starting gnbsim service + +First log in OSM and find the NS created, then click in "Action" and click in "Exec Primitive" + +![architecture](img/login.png) + +In the opened window select "VNF Level Primitive", "gnbsim", "gnbsim_up", "file" and type "gnbsim", then click in Execute: + +![architecture](img/gnbsim.png) + +With these two primitives executed we're ready to test traffic. + +## Testing traffic + +1. Using management IP assigned to the external server proceed to ssh to the instance (remember to do it from the server you have copied the ssh keys) +2. Execute the iperf command: + ``` + docker exec -ti oai-ext-dn iperf3 -s + ``` +3. Using the management IP assigned to gnbsim proceed to ssh to the instance (remember to do it from the server you have copied the ssh keys) + ``` + docker exec -ti gnbsim iperf3 -c 192.168.70.135 -B 12.1.1.2 + ``` +4. You should be able to see traffic going from gnbsim to external server passing through 5G Core. \ No newline at end of file diff --git a/oai-helm/ext-dn_vnf/.sample_ee_vnfd.yaml.swp b/oai-helm/ext-dn_vnf/.sample_ee_vnfd.yaml.swp new file mode 100644 index 0000000000000000000000000000000000000000..27c3c82570353f02745284eb028f5ae643a57a87 GIT binary patch literal 16384 zcmeI3U92QU701g}cUJ*nF)9fd3pNBlQkR*#3rj}9AP?pS?n)MRtj6F2y2k&h>gws9>At)7 zE+k5-li!`4sye4mo%)zMhi23}wzA4^Tk11BS21?tE02#(z56-#^iQv4#i)q#f-1It z;w%*Xe&}SmOt)(JkXCpzwNGUdXE$d~m;`bto8P>psS^fUsk3#~1J(l<>wzL4 zi`%X^dSJQVBa!_#T+cs!_0fx!w(YD3tOu+ItOu+ItOu+ItOu+ItOq^>9>|kj>|u;! zS2>ou%g>L@eSWn3zFK~6%+;4)?T7V%^?>z&^?>z&^?>z&^?>z&^?>z&^?>z&^}zq2 z2ON*F?Bk4`-VNjM-~Ubg|K631y$)UlC%}(D488-t4sHPZz@Dz1@GNjZ4_poYbva{y055~%;688=d>)*?jIlp~*TIY6F%W|lun+wGlZ^ci zoCZ&WF<1q+g3o||e1fsxf?t8>Knjk6JHUjIm#XpMgzq7x)s`1O9>p z%d6md@I!DfxC)#@V&)C-3-CDD1m6ZXf_IRlIcpL%7hYSudiLXAnS5Zt53;I^Q(@$U za=;TmTAQmd&9*10q*_IcKCZf5u!X8y<*2ZFT3hJa)~X8&*IRU|=x~zY@_W*)jO(_) zRbI($(d7m7Qgx?vCEM8|s+#Oni&D_7zinOVK6fC~Dni;?E2yy5YX&!(!qhbLTWN`f&!;zlqU<7qV$TBEY?+mN#IOJalD~l zcq5Jap@DPwuXIh>O3+uPs?;B9l{hI1@%G(du0o4CQRa{Enw{yW(MTU#+wevC(^2;X z8B%(|i`@;G3O5e%exDR;(J1r7`H{^=HTHx0U^<3k7MB|*(;yc}>|)E$`QK)a))_*Q65j7-O?+T@;y2=hhB2 zE9dQN>EW3(p z$of+Ez1p@Fc$KsHS5Nh^HB7jqSu1-h>c34~-C`G)@1;!HVn2d+Z)eY$ z_QkSU(s3eFCzrITMVyqUfUXSO5Jgmt-|?)hD)d()9{Q1pig1LVq+JFMub31c$)@ zd;#nR=a2_@3!DVcfGKdm-QYT~3;Y#+IRjn+&w(ew6i9Fs+zvP(|LpDs%ut8 zbB?T0E>zg&r4$m+!pN*h@IO{kQVWw)HPc?#L12~UGM8TR1Lr#ayZ6o`cOF|gaz9gL z_+#9F*jJ`w$F1Fqk>^1`PPfkGvbjka(2ZH<>!#S~h-AJQryID9m%5O5Q*khvt4-7s zZse(DWyz(PXi_J0CYs`%n%I9IP1M_kmXe;R(hH_|rzZ9)6Dfb;Cb;{zZ7dX`Lp=)< zKP>YBW+AH;YLXEmM$i?+g*VU(ckG0IFdgU(AeMXB070%Zb$TR=TSL$DVmU21)Aww< zl)c~OL~-Q1PB7^8dVNYYin32+xUlQRIHtSV$?61VroqAT{Bay z#)dQ0hOa!@Y}(w%XoT3(E8JYAau+jKDy8Hm13s5uY6hRER92|@>IzJ0npNP6Z8%$_ z3k!fcQoE6IU9)5st-NNZWqizeUGWwxYij~sbvHKPVQ_5%NqV+sahRRRO ORFVg~QfYIEoc{vK)l*{t literal 0 HcmV?d00001 diff --git a/oai-helm/ext-dn_vnf/ext-dn_vnfd.yaml b/oai-helm/ext-dn_vnf/ext-dn_vnfd.yaml new file mode 100644 index 00000000..7053886f --- /dev/null +++ b/oai-helm/ext-dn_vnf/ext-dn_vnfd.yaml @@ -0,0 +1,130 @@ +vnfd: + description: ext-dn VNF with 2 networks attached + df: + - id: default-df + instantiation-level: + - id: default-instantiation-level + vdu-level: + - number-of-instances: 1 + vdu-id: ext-dn-VM + vdu-profile: + - id: ext-dn-VM + min-number-of-instances: 1 + lcm-operations-configuration: + operate-vnf-op-config: + day1-2: + - config-primitive: + - execution-environment-primitive: ext_dn_up + execution-environment-ref: ext-dn + name: ext_dn_up + parameter: + - data-type: STRING + name: file + - execution-environment-primitive: ext_dn_down + execution-environment-ref: ext-dn + name: ext_dn_down + parameter: + - data-type: STRING + name: file + - execution-environment-primitive: send_command + execution-environment-ref: ext-dn + name: send_command + parameter: + - data-type: STRING + name: file + config-access: + ssh-access: + default-user: ubuntu + required: true + execution-environment-list: + - external-connection-point-ref: vnf-mgmt-ext + helm-chart: eechart + id: ext-dn + id: ext-dn-vnf + initial-config-primitive: + - execution-environment-ref: ext-dn + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + seq: 1 + - execution-environment-ref: ext-dn + name: run_script + parameter: + - name: file + value: install_docker.sh + seq: 2 + - execution-environment-ref: ext-dn + name: copy_files + parameter: + - name: file + value: docker-compose.yaml + seq: 3 + ext-cpd: + - id: vnf-mgmt-ext + int-cpd: + cpd: vdu-eth0-int + vdu-id: ext-dn-VM + - id: vnf-internal-ext + int-cpd: + cpd: vdu-eth1-int + vdu-id: ext-dn-VM + id: ext-dn-vnf + mgmt-cp: vnf-mgmt-ext + product-name: ext-dn-vnf + sw-image-desc: + - id: ubuntu20.04 + image: ubuntu20.04 + name: ubuntu20.04 + - id: ubuntu20.04-azure + name: ubuntu20.04-azure + image: Canonical:0001-com-ubuntu-server-focal:20_04-lts:latest + vim-type: azure + - id: ubuntu20.04-gcp + name: ubuntu20.04-gcp + image: ubuntu-os-cloud:image-family:ubuntu-2004-lts + vim-type: gcp + vdu: + - id: ext-dn-VM + int-cpd: + - id: vdu-eth0-int + virtual-network-interface-requirement: + - name: vdu-eth0 + position: 0 + virtual-interface: + type: PARAVIRT + - id: vdu-eth1-int + port-security-enabled: false + virtual-network-interface-requirement: + - name: vdu-eth1 + position: 1 + virtual-interface: + type: PARAVIRT + - id: vdu-eth2-int + virtual-network-interface-requirement: + - name: vdu-eth2 + position: 2 + virtual-interface: + type: PARAVIRT + name: ext-dn-VM + supplemental-boot-data: + boot-data-drive: true + sw-image-desc: ubuntu20.04 + alternative-sw-image-desc: + - ubuntu20.04-azure + - ubuntu20.04-gcp + virtual-compute-desc: ext-dn-VM-compute + virtual-storage-desc: + - ext-dn-VM-storage + version: 1.0 + virtual-compute-desc: + - id: ext-dn-VM-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 4.0 + virtual-storage-desc: + - id: ext-dn-VM-storage + size-of-storage: 20 diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/.helmignore b/oai-helm/ext-dn_vnf/helm-charts/eechart/.helmignore new file mode 100644 index 00000000..50af0317 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/.helmignore @@ -0,0 +1,22 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/Chart.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/Chart.yaml new file mode 100644 index 00000000..414c5f1a --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: OSM EE helm chart +name: eechart +version: 0.1.0 diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz b/oai-helm/ext-dn_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz new file mode 100644 index 0000000000000000000000000000000000000000..2cfb9b29533b6f6837de93a2022eec32c11b0b4b GIT binary patch literal 40369 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 /dev/null +apt-get -y update +apt-get -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin +groupadd docker +usermod -aG docker ubuntu +newgrp docker + +curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose +chmod +x /usr/local/bin/docker-compose + +sysctl net.ipv4.conf.all.forwarding=1 +iptables -P FORWARD ACCEPT +ip route add 192.168.18.0/24 via 192.168.1.1 dev ens4 +ip route add 12.1.1.0/24 via 192.168.1.1 dev ens4 + +EOF diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/source/mylib.py b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/mylib.py new file mode 100644 index 00000000..c0bd3bc8 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/mylib.py @@ -0,0 +1,80 @@ +## +# Copyright 2022 Telefonica Investigacion y Desarrollo, S.A.U. +# This file is part of OSM +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# For those usages not covered by the Apache License, Version 2.0 please +# contact with: nfvlabs@tid.es +## + +import logging +import asyncio +import asyncssh +import time + + +from mysql.connector import connect, Error + +logger = logging.getLogger("osm_ee.vnf") + + +async def ssh_exec(host: str, user: str, command: str + ) -> (int, str): + """ + Execute a remote command via SSH. + """ + + try: + async with asyncssh.connect(host, + username=user, + known_hosts=None) as conn: + logger.debug("Executing command '{}'".format(command)) + result = await conn.run(command) + logger.debug("Result: {}".format(result)) + return result.exit_status, result.stderr + except Exception as e: + logger.error("Error: {}".format(repr(e))) + return -1, str(e) + + +def mysql_query(host: str, user: str, password: str, retries: int, query: str + ) -> (int, str): + """ + Execute a query to a MySQL database. + """ + + text = "" + logger.debug("Host: '{}', user: '{}', password: '{}', query: '{}'".format(host, user, password, query)) + for i in range(0, retries): + try: + with connect( + host=host, + user=user, + password=password, + ) as connection: + with connection.cursor() as cursor: + cursor.execute(query) + for (db) in cursor: + logger.debug(db) + text = text + str(db[0]) + ", " + return 0, text[0:len(text)-2] + except Error as e: + text = str(e) + logger.debug("Error: {}".format(e)) + time.sleep(3) + continue + + return -1, text diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/source/playbook.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/playbook.yaml new file mode 100644 index 00000000..bc6013d7 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/playbook.yaml @@ -0,0 +1,14 @@ +--- +- hosts: all + become: yes + tasks: + - name: Wait 120 seconds, but only start checking after 10 seconds + wait_for_connection: + delay: 20 + timeout: 120 + - name: Install packages + apt: + name: + - "{{ app }}" + state: latest + cache_valid_time: 3600 diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/source/run_ssh.sh b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/run_ssh.sh new file mode 100755 index 00000000..8b58b3cc --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/run_ssh.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +date "+%H:%M:%S Starting $0..." +IP=$1 +USERNAME=$2 +SCRIPT=$3 +PARAMS=$4 + +DIR=$(dirname $0) + +date "+%H:%M:%S Waiting for $IP to be ready..." +i=5 +while ! ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" 'exit' ; do + date "+%H:%M:%S Error accessing $IP, retrying..." + sleep 5 + i=$(( $i - 1 )) + [ $i -ge 0 ] || exit 1 +done + +date "+%H:%M:%S SSH server is up, sending script '${DIR}/${SCRIPT}'..." +scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${DIR}/${SCRIPT} "$USERNAME"@"$IP": +if [ $? -ne 0 ]; then + date "+%H:%M:%S scp error" + exit 1 +fi +date "+%H:%M:%S OK. Setting file permissions" +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "chmod a+x $SCRIPT" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +COMMAND="./$SCRIPT" +[ ${#PARAMS} -ge 0 ] || COMMAND="${COMMAND=} $PARAMS" +date "+%H:%M:%S Running '$COMMAND' on $IP..." +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "$COMMAND" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +date "+%H:%M:%S End" +exit 0 diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/source/vnf_ee.py b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/vnf_ee.py new file mode 100644 index 00000000..fea9bc75 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/source/vnf_ee.py @@ -0,0 +1,206 @@ +## +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. +## + +import asyncio +import asyncssh +import requests +import logging +import os + + +from osm_ee.exceptions import VnfException + +import osm_ee.util.util_ee as util_ee +import osm_ee.util.util_ansible as util_ansible +import osm_ee.vnf.mylib as mylib + +class VnfEE: + + PLAYBOOK_PATH = "/app/EE/osm_ee/vnf" + SSH_SCRIPT = "/app/EE/osm_ee/vnf/run_ssh.sh" + + def __init__(self, config_params): + self.logger = logging.getLogger('osm_ee.vnf') + self.config_params = config_params + + # config method saves SSH access parameters (host and username) for future use by other methods. + # It is mandatory in any case. + async def config(self, id, params): + self.logger.debug("Execute action config, params: {}".format(params)) + # Config action is special, params are merged with previous config calls + self.config_params.update(params) + required_params = ["ssh-hostname"] + self._check_required_params(self.config_params, required_params) + yield "OK", "Configured" + + # This method implements the "run_script" primitive. Uncomment and modify it if a primitive requires executing a user + # script in the VDU. It needs "file" parameter (script's file to run, must be in "source" directory) + # and optionally "parameters" (command-line arguments for script). + async def run_script(self, id, params): + self.logger.debug("Execute action run_script, params: '{}'".format(params)) + self._check_required_params(params, ["file"]) + + command = "bash " + self.SSH_SCRIPT + " " + self.config_params["ssh-hostname"] + " " + self.config_params["ssh-username"] + " " + params["file"] + if "parameters" in params: + command += " \"" + params.get("parameters", "") + "\"" + self.logger.debug("Command: '{}'".format(command)) + return_code, stdout, stderr = await util_ee.local_async_exec(command) + if return_code != 0: + yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + else: + yield "OK", stdout.decode() + + # This method implements the "copy_files" primitive. Uncomment and modify it if a primitive requires + # to copy files to a VNF. It needs file name parameter (file must be in "source" directory). + + async def copy_files(self, id, params): + self.logger.debug("Execute action copy_files, params: '{}'".format(params)) + self._check_required_params(params, ["file"]) + + command= "scp" + " -o StrictHostKeyChecking=no /app/EE/osm_ee/vnf/" + params["file"] + " " + self.config_params["ssh-username"] + "@" + self.config_params["ssh-hostname"] + ":" + params["file"] + self.logger.debug("Command: '{}'".format(command)) + return_code, stdout, stderr = await util_ee.local_async_exec(command) + if return_code != 0: + yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + else: + yield "OK", stdout.decode() + + # This method implements the "ansible_playbook" primitive. Uncomment and modify it if a primitive requires + # executing an Ansible Playbook. It needs "playbook-name" parameter (playbook file, must be in "source" directory). + # async def ansible_playbook(self, id, params): + # self.logger.debug("Execute action ansible_playbook, params: '{}'".format(params)) + + # try: + # self._check_required_params(params, ["playbook-name"]) + # params["ansible_user"] = self.config_params["ssh-username"] + # inventory = self.config_params["ssh-hostname"] + "," + # playbook = self.PLAYBOOK_PATH + "/" + params["playbook-name"] + # os.environ["ANSIBLE_HOST_KEY_CHECKING"] = "False" + # return_code, stdout, stderr = await util_ansible.execute_playbook(playbook, inventory, params) + # status = "OK" if return_code == 0 else "ERROR" + # yield status, stdout + stderr + # except Exception as e: + # self.logger.debug("Error executing ansible playbook: {}".format(repr(e))) + # yield "ERROR", str(e) + + # This method implements the "ping" primitive. Uncomment and modify it if a primitive requires + # executing a local command (such as ping) on EE. It uses "ssh-hostname" as ping destination. + # async def ping(self, id, params): + # self.logger.debug("Execute action ping, params: '{}'".format(params)) + + # command = "ping -c 3 " + self.config_params["ssh-hostname"] + # return_code, stdout, stderr = await util_ee.local_async_exec(command) + # if return_code != 0: + # yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + # else: + # yield "OK", stdout.decode() + + # This method implements the "http_check" primitive. Uncomment and modify it if a primitive requires + # executing embedded python code on VfnEE class. It requests "http:///" using a HTTP library. + # async def http_check(self, id, params): + # self.logger.debug("Execute action http_check, params: '{}'".format(params)) + + # try: + # session = requests.Session() + # url = 'http://' + self.config_params["ssh-hostname"] + # self.logger.debug("HTTP GET {}...".format(url)) + # req = session.get(url) + # self.logger.debug("{}".format(req.text)) + # if req.status_code == 200: + # yield "OK", req.text + # else: + # yield "ERROR", req.text + # except Exception as e: + # self.logger.error("HTTP error: {}".format(repr(e))) + # yield "ERROR", str(e) + + # This method implements the "touch" primitive. Uncomment and modify it if you need a primitive that + # imports a user-defined python library. It only needs "file" parameter for creating it in VDU via SSH. + # async def touch(self, id, params): + # self.logger.debug("Execute action touch, params: '{}'".format(params)) + # + # self._check_required_params(params, ["file"]) + # command = "touch" + " " + params["file"] + # return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + # if return_code != 0: + # yield "ERROR", description + # else: + # yield "OK", description + + # This method implements the "gnbsim_up" primitive. Uncomment and modify it if you need a primitive that + # starts up the gnbsim to test 5G OAI Core. It only needs "file" parameter, in this case use gnbsim. + async def ext_dn_up(self, id, params): + self.logger.debug("Execute action gnbsim_up, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = "docker-compose up -d oai-ext-dn" + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "gnbsim_down" primitive. Uncomment and modify it if you need a primitive that + # stops the gnbsim for testing 5G OAI Core. It only needs "file" parameter, in this case use gnbsim. + async def ext_dn_down(self, id, params): + self.logger.debug("Execute action gnbsim_down, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = "docker-compose down" + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "send_command" primitive. Uncomment and modify it if you need a primitive that + # sends any command to the VM through SSH. It only needs "file" parameter which contains the command to send. + async def send_command(self, id, params): + self.logger.debug("Execute action send_command, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = params["file"] + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "check_database" primitive. Uncomment and modify it if a primitive requires + # accessing to a service provided by a helm subchart. Access parameters are read from environment variables + # async def check_database(self, id, params): + # self.logger.debug("Execute action check_database, params: '{}'".format(params)) + + # host = os.getenv('mysql_host') + # user = os.getenv('mysql_user') + # password = os.getenv('mysql_password') + # retries = 3 + # query = "SHOW DATABASES" + # return_code, description = mylib.mysql_query(host, user, password, retries, query) + # if return_code != 0: + # yield "ERROR", description + # else: + # yield "OK", description + + + # Static method that verifies whether a parameter exists in the map + @staticmethod + def _check_required_params(params, required_params): + for required_param in required_params: + if required_param not in params: + raise VnfException("Missing required param: {}".format(required_param)) + diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/NOTES.txt b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/NOTES.txt new file mode 100755 index 00000000..c52fc2c4 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/NOTES.txt @@ -0,0 +1,21 @@ +1. Get the application URL by running these commands: +{{- if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ . }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "eechart.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "eechart.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "eechart.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "eechart.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl port-forward $POD_NAME 8080:80 +{{- end }} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/_helpers.tpl b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/_helpers.tpl new file mode 100755 index 00000000..d3e28e02 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/_helpers.tpl @@ -0,0 +1,56 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "eechart.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "eechart.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "eechart.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "eechart.labels" -}} +app.kubernetes.io/name: {{ include "eechart.name" . }} +helm.sh/chart: {{ include "eechart.chart" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "eechart.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "eechart.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/configmap.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/configmap.yaml new file mode 100755 index 00000000..5b9634c7 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/configmap.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "eechart.fullname" . }} +data: +{{ (.Files.Glob "source/*").AsConfig | indent 2 }} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/generator.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/generator.yaml new file mode 100644 index 00000000..96f7e237 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/generator.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower }}" +data: + generator.yml: |- + {{ .Files.Get "snmp/generator.yml" | nindent 4}} \ No newline at end of file diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/ingress.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/ingress.yaml new file mode 100755 index 00000000..264f8909 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/ingress.yaml @@ -0,0 +1,41 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "eechart.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: +{{ include "eechart.labels" . | indent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: +{{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} +{{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ . }} + backend: + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} +{{- end }} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/mibs.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/mibs.yaml new file mode 100644 index 00000000..e7b5eab5 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/mibs.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" +data: +{{ (.Files.Glob "snmp/mibs/**").AsConfig | indent 2 }} \ No newline at end of file diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/secret.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/secret.yaml new file mode 100644 index 00000000..62d4b267 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/secret.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "eechart.fullname" . }} +type: Opaque +data: + mysql_host: {{ .Values.mysql.fullnameOverride | b64enc | quote }} + mysql_user: {{ "root" | b64enc | quote }} + mysql_password: {{ .Values.mysql.auth.rootPassword | b64enc | quote }} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/service.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/service.yaml new file mode 100755 index 00000000..88d38d66 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: grpc + protocol: TCP + name: grpc + selector: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/serviceaccount.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/serviceaccount.yaml new file mode 100755 index 00000000..be615a5f --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/serviceaccount.yaml @@ -0,0 +1,8 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ template "eechart.serviceAccountName" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +{{- end -}} diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/statefulset.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/statefulset.yaml new file mode 100755 index 00000000..a13cfa6e --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/statefulset.yaml @@ -0,0 +1,65 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + serviceName: {{ include "eechart.fullname" . }} + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + template: + metadata: + labels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + vnf: {{ .Values.global.osm.vnf_id | lower}} + spec: + imagePullSecrets: + - name: regcred + serviceAccountName: {{ template "eechart.serviceAccountName" . }} + securityContext: + runAsUser: 0 + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + envFrom: + - secretRef: + name: {{ include "eechart.fullname" . }} + ports: + - name: grpc + containerPort: 50051 + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: osm-ee + mountPath: /app/storage + - name: osm-ee-source + mountPath: /app/EE/osm_ee/vnf + - name: snmp-config-volume + mountPath: /etc/snmp_exporter + - name: vnf-mibs + mountPath: /root/.snmp/mibs + - name: vnf-generator + mountPath: /app/vnf/generator + volumes: + - name: osm-ee-source + configMap: + name: {{ include "eechart.fullname" . }} + - name: snmp-config-volume + hostPath: + path: "/var/lib/osm/snmp_exporter/{{ .Values.global.osm.vnf_id | lower }}/" + - name: vnf-mibs + configMap: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" + - name: vnf-generator + configMap: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower}}" + - name: osm-ee + hostPath: + path: /var/lib/osm/osm/osm_osm_packages/_data diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/tests/test-connection.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/tests/test-connection.yaml new file mode 100755 index 00000000..e52b7b8b --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "eechart.fullname" . }}-test-connection" + labels: +{{ include "eechart.labels" . | indent 4 }} + annotations: + "helm.sh/hook": test-success +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "eechart.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/oai-helm/ext-dn_vnf/helm-charts/eechart/values.yaml b/oai-helm/ext-dn_vnf/helm-charts/eechart/values.yaml new file mode 100644 index 00000000..c63644a2 --- /dev/null +++ b/oai-helm/ext-dn_vnf/helm-charts/eechart/values.yaml @@ -0,0 +1,77 @@ +global: + osm: + vnf_id: AVNFId + +# Default values for eechart. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: opensourcemano/api-fe + tag: latest + pullPolicy: IfNotPresent + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: false + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 50050 + +ingress: + enabled: false + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: [] + + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +mysql: + auth: + rootPassword: "123456" + fullnameOverride: "eechart-mysql" diff --git a/oai-helm/gnbsim_vnf/.sample_ee_vnfd.yaml.swp b/oai-helm/gnbsim_vnf/.sample_ee_vnfd.yaml.swp new file mode 100644 index 0000000000000000000000000000000000000000..27c3c82570353f02745284eb028f5ae643a57a87 GIT binary patch literal 16384 zcmeI3U92QU701g}cUJ*nF)9fd3pNBlQkR*#3rj}9AP?pS?n)MRtj6F2y2k&h>gws9>At)7 zE+k5-li!`4sye4mo%)zMhi23}wzA4^Tk11BS21?tE02#(z56-#^iQv4#i)q#f-1It z;w%*Xe&}SmOt)(JkXCpzwNGUdXE$d~m;`bto8P>psS^fUsk3#~1J(l<>wzL4 zi`%X^dSJQVBa!_#T+cs!_0fx!w(YD3tOu+ItOu+ItOu+ItOu+ItOq^>9>|kj>|u;! zS2>ou%g>L@eSWn3zFK~6%+;4)?T7V%^?>z&^?>z&^?>z&^?>z&^?>z&^?>z&^}zq2 z2ON*F?Bk4`-VNjM-~Ubg|K631y$)UlC%}(D488-t4sHPZz@Dz1@GNjZ4_poYbva{y055~%;688=d>)*?jIlp~*TIY6F%W|lun+wGlZ^ci zoCZ&WF<1q+g3o||e1fsxf?t8>Knjk6JHUjIm#XpMgzq7x)s`1O9>p z%d6md@I!DfxC)#@V&)C-3-CDD1m6ZXf_IRlIcpL%7hYSudiLXAnS5Zt53;I^Q(@$U za=;TmTAQmd&9*10q*_IcKCZf5u!X8y<*2ZFT3hJa)~X8&*IRU|=x~zY@_W*)jO(_) zRbI($(d7m7Qgx?vCEM8|s+#Oni&D_7zinOVK6fC~Dni;?E2yy5YX&!(!qhbLTWN`f&!;zlqU<7qV$TBEY?+mN#IOJalD~l zcq5Jap@DPwuXIh>O3+uPs?;B9l{hI1@%G(du0o4CQRa{Enw{yW(MTU#+wevC(^2;X z8B%(|i`@;G3O5e%exDR;(J1r7`H{^=HTHx0U^<3k7MB|*(;yc}>|)E$`QK)a))_*Q65j7-O?+T@;y2=hhB2 zE9dQN>EW3(p z$of+Ez1p@Fc$KsHS5Nh^HB7jqSu1-h>c34~-C`G)@1;!HVn2d+Z)eY$ z_QkSU(s3eFCzrITMVyqUfUXSO5Jgmt-|?)hD)d()9{Q1pig1LVq+JFMub31c$)@ zd;#nR=a2_@3!DVcfGKdm-QYT~3;Y#+IRjn+&w(ew6i9Fs+zvP(|LpDs%ut8 zbB?T0E>zg&r4$m+!pN*h@IO{kQVWw)HPc?#L12~UGM8TR1Lr#ayZ6o`cOF|gaz9gL z_+#9F*jJ`w$F1Fqk>^1`PPfkGvbjka(2ZH<>!#S~h-AJQryID9m%5O5Q*khvt4-7s zZse(DWyz(PXi_J0CYs`%n%I9IP1M_kmXe;R(hH_|rzZ9)6Dfb;Cb;{zZ7dX`Lp=)< zKP>YBW+AH;YLXEmM$i?+g*VU(ckG0IFdgU(AeMXB070%Zb$TR=TSL$DVmU21)Aww< zl)c~OL~-Q1PB7^8dVNYYin32+xUlQRIHtSV$?61VroqAT{Bay z#)dQ0hOa!@Y}(w%XoT3(E8JYAau+jKDy8Hm13s5uY6hRER92|@>IzJ0npNP6Z8%$_ z3k!fcQoE6IU9)5st-NNZWqizeUGWwxYij~sbvHKPVQ_5%NqV+sahRRRO ORFVg~QfYIEoc{vK)l*{t literal 0 HcmV?d00001 diff --git a/oai-helm/gnbsim_vnf/gnbsim_vnfd.yaml b/oai-helm/gnbsim_vnf/gnbsim_vnfd.yaml new file mode 100644 index 00000000..0bfa7678 --- /dev/null +++ b/oai-helm/gnbsim_vnf/gnbsim_vnfd.yaml @@ -0,0 +1,183 @@ +vnfd: + description: gnbsim VNF with 2 networks attached + df: + - id: default-df + instantiation-level: + - id: default-instantiation-level + vdu-level: + - number-of-instances: 1 + vdu-id: gnbsim-VM + vdu-profile: + - id: gnbsim-VM + min-number-of-instances: 1 + lcm-operations-configuration: + operate-vnf-op-config: + day1-2: + - config-primitive: + - execution-environment-primitive: gnbsim_up + execution-environment-ref: gnbsim + name: gnbsim_up + parameter: + - data-type: STRING + name: file + - execution-environment-primitive: gnbsim_down + execution-environment-ref: gnbsim + name: gnbsim_down + parameter: + - data-type: STRING + name: file + - execution-environment-primitive: send_command + execution-environment-ref: gnbsim + name: send_command + parameter: + - data-type: STRING + name: file + # - execution-environment-primitive: run_script + # execution-environment-ref: gnbsim + # name: run_script + # parameter: + # - data-type: STRING + # name: file + # - data-type: STRING + # name: parameters + # - execution-environment-primitive: ansible_playbook + # execution-environment-ref: gnbsim + # name: ansible_playbook + # parameter: + # - data-type: STRING + # name: playbook-name + # - data-type: STRING + # name: app + # - execution-environment-primitive: ping + # execution-environment-ref: gnbsim + # name: ping + # - execution-environment-primitive: http_check + # execution-environment-ref: gnbsim + # name: http_check + # - execution-environment-primitive: touch + # execution-environment-ref: gnbsim + # name: touch + # parameter: + # - data-type: STRING + # name: file + # - execution-environment-primitive: check_database + # execution-environment-ref: gnbsim + # name: check_database + config-access: + ssh-access: + default-user: ubuntu + required: true + execution-environment-list: + - external-connection-point-ref: vnf-mgmt-ext + helm-chart: eechart + id: gnbsim + id: gnbsim-vnf + initial-config-primitive: + - execution-environment-ref: gnbsim + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + seq: 1 + - execution-environment-ref: gnbsim + name: run_script + parameter: + - name: file + value: install_docker.sh + seq: 2 + - execution-environment-ref: gnbsim + name: copy_files + parameter: + - name: file + value: docker-compose-gnbsim.yaml + seq: 3 + # - execution-environment-ref: gnbsim + # name: ansible_playbook + # parameter: + # - name: playbook-name + # value: playbook.yaml + # - name: app + # value: ntp + # seq: 3 + # - execution-environment-ref: gnbsim + # name: ping + # seq: 4 + # - execution-environment-ref: gnbsim + # name: http_check + # seq: 5 + # - execution-environment-ref: gnbsim + # name: touch + # parameter: + # - name: file + # value: myfile.txt + # seq: 3 + # - execution-environment-ref: gnbsim + # name: check_database + # seq: 7 + ext-cpd: + - id: vnf-mgmt-ext + int-cpd: + cpd: vdu-eth0-int + vdu-id: gnbsim-VM + - id: vnf-internal-ext + int-cpd: + cpd: vdu-eth1-int + vdu-id: gnbsim-VM + id: gnbsim-vnf + mgmt-cp: vnf-mgmt-ext + product-name: gnbsim-vnf + sw-image-desc: + - id: ubuntu20.04 + image: ubuntu20.04 + name: ubuntu20.04 + - id: ubuntu20.04-azure + name: ubuntu20.04-azure + image: Canonical:0001-com-ubuntu-server-focal:20_04-lts:latest + vim-type: azure + - id: ubuntu20.04-gcp + name: ubuntu20.04-gcp + image: ubuntu-os-cloud:image-family:ubuntu-2004-lts + vim-type: gcp + vdu: + - id: gnbsim-VM + int-cpd: + - id: vdu-eth0-int + virtual-network-interface-requirement: + - name: vdu-eth0 + position: 0 + virtual-interface: + type: PARAVIRT + - id: vdu-eth1-int + virtual-network-interface-requirement: + - name: vdu-eth1 + position: 1 + virtual-interface: + type: PARAVIRT + - id: vdu-eth2-int + virtual-network-interface-requirement: + - name: vdu-eth2 + position: 2 + virtual-interface: + type: PARAVIRT + name: gnbsim-VM + supplemental-boot-data: + boot-data-drive: true + sw-image-desc: ubuntu20.04 + alternative-sw-image-desc: + - ubuntu20.04-azure + - ubuntu20.04-gcp + virtual-compute-desc: gnbsim-VM-compute + virtual-storage-desc: + - gnbsim-VM-storage + version: 1.0 + virtual-compute-desc: + - id: gnbsim-VM-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 4.0 + virtual-storage-desc: + - id: gnbsim-VM-storage + size-of-storage: 20 diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/.helmignore b/oai-helm/gnbsim_vnf/helm-charts/eechart/.helmignore new file mode 100644 index 00000000..50af0317 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/.helmignore @@ -0,0 +1,22 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/Chart.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/Chart.yaml new file mode 100644 index 00000000..414c5f1a --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +appVersion: "1.0" +description: OSM EE helm chart +name: eechart +version: 0.1.0 diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz b/oai-helm/gnbsim_vnf/helm-charts/eechart/charts.sample/mysql-8.8.26.tgz new file mode 100644 index 0000000000000000000000000000000000000000..2cfb9b29533b6f6837de93a2022eec32c11b0b4b GIT binary patch literal 40369 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 /dev/null +apt-get -y update +apt-get -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin +groupadd docker +usermod -aG docker ubuntu +newgrp docker + +curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose +chmod +x /usr/local/bin/docker-compose + +sysctl net.ipv4.conf.all.forwarding=1 +iptables -P FORWARD ACCEPT +ip route add 192.168.70.128/26 via 192.168.1.1 dev ens4 +ip route add 192.168.18.0/24 via 192.168.1.1 dev ens4 + +EOF diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/source/mylib.py b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/mylib.py new file mode 100644 index 00000000..c0bd3bc8 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/mylib.py @@ -0,0 +1,80 @@ +## +# Copyright 2022 Telefonica Investigacion y Desarrollo, S.A.U. +# This file is part of OSM +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# For those usages not covered by the Apache License, Version 2.0 please +# contact with: nfvlabs@tid.es +## + +import logging +import asyncio +import asyncssh +import time + + +from mysql.connector import connect, Error + +logger = logging.getLogger("osm_ee.vnf") + + +async def ssh_exec(host: str, user: str, command: str + ) -> (int, str): + """ + Execute a remote command via SSH. + """ + + try: + async with asyncssh.connect(host, + username=user, + known_hosts=None) as conn: + logger.debug("Executing command '{}'".format(command)) + result = await conn.run(command) + logger.debug("Result: {}".format(result)) + return result.exit_status, result.stderr + except Exception as e: + logger.error("Error: {}".format(repr(e))) + return -1, str(e) + + +def mysql_query(host: str, user: str, password: str, retries: int, query: str + ) -> (int, str): + """ + Execute a query to a MySQL database. + """ + + text = "" + logger.debug("Host: '{}', user: '{}', password: '{}', query: '{}'".format(host, user, password, query)) + for i in range(0, retries): + try: + with connect( + host=host, + user=user, + password=password, + ) as connection: + with connection.cursor() as cursor: + cursor.execute(query) + for (db) in cursor: + logger.debug(db) + text = text + str(db[0]) + ", " + return 0, text[0:len(text)-2] + except Error as e: + text = str(e) + logger.debug("Error: {}".format(e)) + time.sleep(3) + continue + + return -1, text diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/source/playbook.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/playbook.yaml new file mode 100644 index 00000000..bc6013d7 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/playbook.yaml @@ -0,0 +1,14 @@ +--- +- hosts: all + become: yes + tasks: + - name: Wait 120 seconds, but only start checking after 10 seconds + wait_for_connection: + delay: 20 + timeout: 120 + - name: Install packages + apt: + name: + - "{{ app }}" + state: latest + cache_valid_time: 3600 diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/source/run_ssh.sh b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/run_ssh.sh new file mode 100755 index 00000000..8b58b3cc --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/run_ssh.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +date "+%H:%M:%S Starting $0..." +IP=$1 +USERNAME=$2 +SCRIPT=$3 +PARAMS=$4 + +DIR=$(dirname $0) + +date "+%H:%M:%S Waiting for $IP to be ready..." +i=5 +while ! ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" 'exit' ; do + date "+%H:%M:%S Error accessing $IP, retrying..." + sleep 5 + i=$(( $i - 1 )) + [ $i -ge 0 ] || exit 1 +done + +date "+%H:%M:%S SSH server is up, sending script '${DIR}/${SCRIPT}'..." +scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${DIR}/${SCRIPT} "$USERNAME"@"$IP": +if [ $? -ne 0 ]; then + date "+%H:%M:%S scp error" + exit 1 +fi +date "+%H:%M:%S OK. Setting file permissions" +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "chmod a+x $SCRIPT" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +COMMAND="./$SCRIPT" +[ ${#PARAMS} -ge 0 ] || COMMAND="${COMMAND=} $PARAMS" +date "+%H:%M:%S Running '$COMMAND' on $IP..." +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "$COMMAND" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +date "+%H:%M:%S End" +exit 0 diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/source/vnf_ee.py b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/vnf_ee.py new file mode 100644 index 00000000..393763c8 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/source/vnf_ee.py @@ -0,0 +1,206 @@ +## +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. +## + +import asyncio +import asyncssh +import requests +import logging +import os + + +from osm_ee.exceptions import VnfException + +import osm_ee.util.util_ee as util_ee +import osm_ee.util.util_ansible as util_ansible +import osm_ee.vnf.mylib as mylib + +class VnfEE: + + PLAYBOOK_PATH = "/app/EE/osm_ee/vnf" + SSH_SCRIPT = "/app/EE/osm_ee/vnf/run_ssh.sh" + + def __init__(self, config_params): + self.logger = logging.getLogger('osm_ee.vnf') + self.config_params = config_params + + # config method saves SSH access parameters (host and username) for future use by other methods. + # It is mandatory in any case. + async def config(self, id, params): + self.logger.debug("Execute action config, params: {}".format(params)) + # Config action is special, params are merged with previous config calls + self.config_params.update(params) + required_params = ["ssh-hostname"] + self._check_required_params(self.config_params, required_params) + yield "OK", "Configured" + + # This method implements the "run_script" primitive. Uncomment and modify it if a primitive requires executing a user + # script in the VDU. It needs "file" parameter (script's file to run, must be in "source" directory) + # and optionally "parameters" (command-line arguments for script). + async def run_script(self, id, params): + self.logger.debug("Execute action run_script, params: '{}'".format(params)) + self._check_required_params(params, ["file"]) + + command = "bash " + self.SSH_SCRIPT + " " + self.config_params["ssh-hostname"] + " " + self.config_params["ssh-username"] + " " + params["file"] + if "parameters" in params: + command += " \"" + params.get("parameters", "") + "\"" + self.logger.debug("Command: '{}'".format(command)) + return_code, stdout, stderr = await util_ee.local_async_exec(command) + if return_code != 0: + yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + else: + yield "OK", stdout.decode() + + # This method implements the "copy_files" primitive. Uncomment and modify it if a primitive requires + # to copy files to a VNF. It needs file name parameter (file must be in "source" directory). + + async def copy_files(self, id, params): + self.logger.debug("Execute action copy_files, params: '{}'".format(params)) + self._check_required_params(params, ["file"]) + + command= "scp" + " -o StrictHostKeyChecking=no /app/EE/osm_ee/vnf/" + params["file"] + " " + self.config_params["ssh-username"] + "@" + self.config_params["ssh-hostname"] + ":" + params["file"] + self.logger.debug("Command: '{}'".format(command)) + return_code, stdout, stderr = await util_ee.local_async_exec(command) + if return_code != 0: + yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + else: + yield "OK", stdout.decode() + + # This method implements the "ansible_playbook" primitive. Uncomment and modify it if a primitive requires + # executing an Ansible Playbook. It needs "playbook-name" parameter (playbook file, must be in "source" directory). + # async def ansible_playbook(self, id, params): + # self.logger.debug("Execute action ansible_playbook, params: '{}'".format(params)) + + # try: + # self._check_required_params(params, ["playbook-name"]) + # params["ansible_user"] = self.config_params["ssh-username"] + # inventory = self.config_params["ssh-hostname"] + "," + # playbook = self.PLAYBOOK_PATH + "/" + params["playbook-name"] + # os.environ["ANSIBLE_HOST_KEY_CHECKING"] = "False" + # return_code, stdout, stderr = await util_ansible.execute_playbook(playbook, inventory, params) + # status = "OK" if return_code == 0 else "ERROR" + # yield status, stdout + stderr + # except Exception as e: + # self.logger.debug("Error executing ansible playbook: {}".format(repr(e))) + # yield "ERROR", str(e) + + # This method implements the "ping" primitive. Uncomment and modify it if a primitive requires + # executing a local command (such as ping) on EE. It uses "ssh-hostname" as ping destination. + # async def ping(self, id, params): + # self.logger.debug("Execute action ping, params: '{}'".format(params)) + + # command = "ping -c 3 " + self.config_params["ssh-hostname"] + # return_code, stdout, stderr = await util_ee.local_async_exec(command) + # if return_code != 0: + # yield "ERROR", "return code {}: {}".format(return_code, stderr.decode()) + # else: + # yield "OK", stdout.decode() + + # This method implements the "http_check" primitive. Uncomment and modify it if a primitive requires + # executing embedded python code on VfnEE class. It requests "http:///" using a HTTP library. + # async def http_check(self, id, params): + # self.logger.debug("Execute action http_check, params: '{}'".format(params)) + + # try: + # session = requests.Session() + # url = 'http://' + self.config_params["ssh-hostname"] + # self.logger.debug("HTTP GET {}...".format(url)) + # req = session.get(url) + # self.logger.debug("{}".format(req.text)) + # if req.status_code == 200: + # yield "OK", req.text + # else: + # yield "ERROR", req.text + # except Exception as e: + # self.logger.error("HTTP error: {}".format(repr(e))) + # yield "ERROR", str(e) + + # This method implements the "touch" primitive. Uncomment and modify it if you need a primitive that + # imports a user-defined python library. It only needs "file" parameter for creating it in VDU via SSH. + # async def touch(self, id, params): + # self.logger.debug("Execute action touch, params: '{}'".format(params)) + # + # self._check_required_params(params, ["file"]) + # command = "touch" + " " + params["file"] + # return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + # if return_code != 0: + # yield "ERROR", description + # else: + # yield "OK", description + + # This method implements the "gnbsim_up" primitive. Uncomment and modify it if you need a primitive that + # starts up the gnbsim to test 5G OAI Core. It only needs "file" parameter, in this case use gnbsim. + async def gnbsim_up(self, id, params): + self.logger.debug("Execute action gnbsim_up, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = "docker-compose -f docker-compose-gnbsim.yaml up -d" + " " + params["file"] + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "gnbsim_down" primitive. Uncomment and modify it if you need a primitive that + # stops the gnbsim for testing 5G OAI Core. It only needs "file" parameter, in this case use gnbsim. + async def gnbsim_down(self, id, params): + self.logger.debug("Execute action gnbsim_down, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = "docker-compose -f docker-compose-gnbsim.yaml down" + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "send_command" primitive. Uncomment and modify it if you need a primitive that + # sends any command to the VM through SSH. It only needs "file" parameter which contains the command to send. + async def send_command(self, id, params): + self.logger.debug("Execute action send_command, params: '{}'".format(params)) + + self._check_required_params(params, ["file"]) + command = params["file"] + return_code, description = await mylib.ssh_exec(self.config_params["ssh-hostname"], self.config_params["ssh-username"], command) + if return_code != 0: + yield "ERROR", description + else: + yield "OK", description + + # This method implements the "check_database" primitive. Uncomment and modify it if a primitive requires + # accessing to a service provided by a helm subchart. Access parameters are read from environment variables + # async def check_database(self, id, params): + # self.logger.debug("Execute action check_database, params: '{}'".format(params)) + + # host = os.getenv('mysql_host') + # user = os.getenv('mysql_user') + # password = os.getenv('mysql_password') + # retries = 3 + # query = "SHOW DATABASES" + # return_code, description = mylib.mysql_query(host, user, password, retries, query) + # if return_code != 0: + # yield "ERROR", description + # else: + # yield "OK", description + + + # Static method that verifies whether a parameter exists in the map + @staticmethod + def _check_required_params(params, required_params): + for required_param in required_params: + if required_param not in params: + raise VnfException("Missing required param: {}".format(required_param)) + diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/NOTES.txt b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/NOTES.txt new file mode 100755 index 00000000..c52fc2c4 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/NOTES.txt @@ -0,0 +1,21 @@ +1. Get the application URL by running these commands: +{{- if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ . }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "eechart.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "eechart.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "eechart.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "eechart.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl port-forward $POD_NAME 8080:80 +{{- end }} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/_helpers.tpl b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/_helpers.tpl new file mode 100755 index 00000000..d3e28e02 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/_helpers.tpl @@ -0,0 +1,56 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "eechart.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "eechart.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "eechart.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "eechart.labels" -}} +app.kubernetes.io/name: {{ include "eechart.name" . }} +helm.sh/chart: {{ include "eechart.chart" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "eechart.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "eechart.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/configmap.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/configmap.yaml new file mode 100755 index 00000000..5b9634c7 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/configmap.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "eechart.fullname" . }} +data: +{{ (.Files.Glob "source/*").AsConfig | indent 2 }} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/generator.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/generator.yaml new file mode 100644 index 00000000..96f7e237 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/generator.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower }}" +data: + generator.yml: |- + {{ .Files.Get "snmp/generator.yml" | nindent 4}} \ No newline at end of file diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/ingress.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/ingress.yaml new file mode 100755 index 00000000..264f8909 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/ingress.yaml @@ -0,0 +1,41 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "eechart.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: +{{ include "eechart.labels" . | indent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: +{{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} +{{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ . }} + backend: + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} +{{- end }} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/mibs.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/mibs.yaml new file mode 100644 index 00000000..e7b5eab5 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/mibs.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" +data: +{{ (.Files.Glob "snmp/mibs/**").AsConfig | indent 2 }} \ No newline at end of file diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/secret.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/secret.yaml new file mode 100644 index 00000000..62d4b267 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/secret.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "eechart.fullname" . }} +type: Opaque +data: + mysql_host: {{ .Values.mysql.fullnameOverride | b64enc | quote }} + mysql_user: {{ "root" | b64enc | quote }} + mysql_password: {{ .Values.mysql.auth.rootPassword | b64enc | quote }} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/service.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/service.yaml new file mode 100755 index 00000000..88d38d66 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: grpc + protocol: TCP + name: grpc + selector: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/serviceaccount.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/serviceaccount.yaml new file mode 100755 index 00000000..be615a5f --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/serviceaccount.yaml @@ -0,0 +1,8 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ template "eechart.serviceAccountName" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +{{- end -}} diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/statefulset.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/statefulset.yaml new file mode 100755 index 00000000..a13cfa6e --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/statefulset.yaml @@ -0,0 +1,65 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + serviceName: {{ include "eechart.fullname" . }} + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + template: + metadata: + labels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + vnf: {{ .Values.global.osm.vnf_id | lower}} + spec: + imagePullSecrets: + - name: regcred + serviceAccountName: {{ template "eechart.serviceAccountName" . }} + securityContext: + runAsUser: 0 + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + envFrom: + - secretRef: + name: {{ include "eechart.fullname" . }} + ports: + - name: grpc + containerPort: 50051 + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: osm-ee + mountPath: /app/storage + - name: osm-ee-source + mountPath: /app/EE/osm_ee/vnf + - name: snmp-config-volume + mountPath: /etc/snmp_exporter + - name: vnf-mibs + mountPath: /root/.snmp/mibs + - name: vnf-generator + mountPath: /app/vnf/generator + volumes: + - name: osm-ee-source + configMap: + name: {{ include "eechart.fullname" . }} + - name: snmp-config-volume + hostPath: + path: "/var/lib/osm/snmp_exporter/{{ .Values.global.osm.vnf_id | lower }}/" + - name: vnf-mibs + configMap: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" + - name: vnf-generator + configMap: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower}}" + - name: osm-ee + hostPath: + path: /var/lib/osm/osm/osm_osm_packages/_data diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/tests/test-connection.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/tests/test-connection.yaml new file mode 100755 index 00000000..e52b7b8b --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "eechart.fullname" . }}-test-connection" + labels: +{{ include "eechart.labels" . | indent 4 }} + annotations: + "helm.sh/hook": test-success +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "eechart.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/oai-helm/gnbsim_vnf/helm-charts/eechart/values.yaml b/oai-helm/gnbsim_vnf/helm-charts/eechart/values.yaml new file mode 100644 index 00000000..c63644a2 --- /dev/null +++ b/oai-helm/gnbsim_vnf/helm-charts/eechart/values.yaml @@ -0,0 +1,77 @@ +global: + osm: + vnf_id: AVNFId + +# Default values for eechart. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: opensourcemano/api-fe + tag: latest + pullPolicy: IfNotPresent + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: false + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 50050 + +ingress: + enabled: false + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: [] + + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +mysql: + auth: + rootPassword: "123456" + fullnameOverride: "eechart-mysql" diff --git a/oai-helm/img/architecture.png b/oai-helm/img/architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..1c0fd567247b366b5920d8027ea5d8990fd6f1a5 GIT binary patch literal 80519 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 z z?k6U+n>P24;t-JM4=7bv-(?WK5@HHUys^6mx-GUoFqPYmQogsy8{=mS@zIJY;4mM#;1Z0HcpXjR0)AUi_ONdrz&nbe-p~p3IlW$xxDrqV4)l}{`i$I zB@~;|&rL}uCq-tasyL!aQgrJ5^b$_onAYJ?q2uG@e8YNbHgPrm64MvaWvl!bC*zH! z-WUgv+*Ibzsf8S9J0s}Krpm3u8KhFT8ZZC)F|7BBPE8%Cv=8*}^z`(Uk&^?G+nY7W zk_ja)$c+ylKOQWx14-yrvha}e`GwC_6zs1Iy-E@!l9H05_go~on$aUAn(6Pqrwl6_9{^<=;5--C-V26u-@J~#Q)^}b zq&K8I?)pnP+Gr3n0^Or+ILAl8igy^r{YZb3jkZTg=`{z$zWxc(`dHg^Z;ZVdu?o~u zL-h~eTllYeobe)^diK!JN8mw#B9Q94?*P675a=&Tzj;z3BZ=w6Am+!rOF&F5_T01l z`t|Ee!ZnbHox#f9-RWc)hPrQ&uIquU5v^eQ?AbGm+dW4|9w03Zfcg5Zn(3s}33s3E zznVPJcWf!5Zl+5;-^;CsgAUfmkqZmYPY*YFY7KPEEi86MwTz;ZlV4%bR$HGv&UQMj z;k5!-U`@AILXi<-w5R@8U)jeGyDB4Ol$7!@EU)AFt!|6Cqd5@iyAKy_xIn`)zyW3{`||R(eLSe!ts0T>$Gt^seUKcen<0of{ut+Ah3GMXI+q@ zWNkD;4xFVkb`OZ|(T>a;Ox-h-s(fEm6_;Zuw}M)KT|YHCNe)f(#f$uN#Zh;MT5(m% zyoS~r{3H<;Hm#;5cc$1safuy%O^kgO6Xf=?e!xIQMa4Y6qFgdL;hkBD_TX7kDS)cR ze=-ynmzPW5t*RypIV$xh3MlHk_r>#a>Q_fSQp*}Fvx1o}fwjcVm(ZshF}(w_$z#HR z2hu^pvG?xYy>sWz+{)HSjvAF1g!9dtH=lxoksBL6Lz~>oGXddsb>g|21wCz{WI1or zaT5{}u&S%S`EV>z4GauKNO^ma8~zb>FHHyz#+#g+j2lUF6|kTBwlArj?9sn!t0!YiflPF*qudDrf(xv@q+eofN4N7K=N7`Rr8i_0e|YY;Y*j=- z*tZn_&Aq{BvU2;$qtBRUpYe%_Q3X{9Q!pL*+9e-Bj$8k@UJHfpji@Q_^l%j2tqJn& z_@4M`d2OvHoQnT5rx@8s5Qqz3gb>D;7w0lBUhH5RFVDYLLgQVD`FwnQxJBlQVnaf1 zY8L7%Xljyk>6YIY7M^$m!NA=qM4n>58uzaeOs46xB($#XDQhSaR8GQkJ|!M5f0IH= zOgUA7Z!*ww@5a%wDzsyg=R*iRoi>nc{UlRI^3+lelHAKodbtg~T+|a_hU?>n5mnh= zm^w+{4*z-+T`GZhyG+m$?+eX{xqaVlrR0~t)K1B@>WEcG66UwMV_0LNqUNd*-VZ?P zwirkjd6mGI`TRt!(a+b#)m1@R*}d;^)%0eBZJ}V&7XTFZ(k{<}H#Y15-3L(+-;-M6 zSE5&Pa=6(WKrAV*tE(H`m=0>Y^IX#hMm#0(#F=mZ4AaLi!`-JEKUmd~!KfT=i1lgB zo~xSHq(xE?t&MOBZor|oVqWgHFd)!TT_R9dit1?)pw&++t%u?}4s4K1I{SzbQGq-X z_qoT8m$tY=G?2$@0~hMIwhN*p<=+4@wK3b61}0S{UAEhuHhH}UmFgGv6Al)8Hc#fJ@}kcax$9 zp*}%%kmpZlVB^_qNp!S*z#7I$utmM*@isUqj{r!sucCK9kfcyi4%Kv(`bT*8?Vy6? z?$u+;UWav*TMr$5T*88#&2F3af|M8SD@rn%t(J4@ROnYPI#{IDO{NpU`jA|V63fZm zb*TZc)#}%tC->vH#l@4aV1RIF{zD?_C&r+x`|R}#EjjS>@Dxor*~3yL5}sI-7S$h8 zU!I|)JlArvK?FO%Yj?I=iN(g&htlyJ931vnhqJp5DW(Vd9BP)xW4R4_m?Fhn&W`sK z^-+DB??&^0abb(76Cq<&TAaPS5K_xl%CziH6vxcC-oU{zC@2im*C0pQ%sli8cqyLJ z69LD&BGDaEm&Vbd=C1yq8840=(KD!3PS&WZKR4xj_F>6eH8!N{yUNh4^!S0mTF)Vp zCvUR;@=iK>!ze2|5u~Q%pZqp8S*zi?GVFRU{D}?5W4b}sFLe9==FR%UoaBlnaY;aJ z;0iL)->*4{Q@kR3S`-{01AK=Qk<>i1KrJq;sg}TQtEuz~^e@jVd07eq-Y8l|9-Y_m zn6R|eRUX#Yq1mjQIug^pm>3sl^wd&Qu*UNk-JMYqrzjJq0IqX`jmkOy2GkZUc7kW8UBK6pS>K|klwFHK9dpRhh%WLNn| zo@V}Y`UfYCj(!X3s(k+58>yxiNJNS(5c_M8v4-Jk`yvQK!BjsF?Pxc0ZiC*~iTb)H zkcU|R#<|c2V%%p) zmDZPuu>Xxg@!F|u@r~A?noJ~*_Qftl(7a&ON6V*~XO#{dScTl&Bfm8R{UlmJ@^sEQ zI4fOn=PN6v;`~?1|GxC)`3&=C@plov^<$k~LAQ(4BL1 z>|x>t=~&wcH+kwM%Yrbh#9zHy@4oj)N4OG4I{Qbz_fKO;5fv$B$60jV+j|FDew)-0 z7J|g?%UrrI)|bD$lt3QrmXqiU%zd50?3BJ?s>a6x7M^ig%^t$PfqCa0{)dZ(D=J2m zocz+?SoWoj=xTz_{wf0T#_@%-o1627RX?@HPPylHe;xCu%G=Go%Wur#$6qiv4Vv(w3%O`^35BwU)|>^Y$KequAHrExNXnPck6)^7+U+ zUbt*=foSh*cBs;VP{_2&u-ozJyj{O@c<%hIeE${Jf^zagTTTXJD*_8$SU4m2gSGLZ zGWwHRHb(|ew%Rb(_KwKu?)&S(5j#yGdN;SGA_C+h_$^L+9PsT26qO?~q^B)kB}k?r zS!3Q#RdW}K`!Znhi1U7Y(|Qs&rRm^6&v4-`SYdNx=g&m+{^n%#W&c^I*{#r}H7Fpa zxf*98ejfrp8h8^A0V%=ehSt1Hi*<7H6RB-e%f9$$fMM5rW0t>b89opYxc5GkjFr!B z;<22HAK(@HXn4}!T2BXq|5-C2p{-rfOp5tJ+}sg(^d9d)z2G(Py5k3Mu%eCoXs!le zC;=FRcO+mpC2xlqMc=J7U7TAH4}hZ3KKN6b$9op20RMvr)@(pz7JG7v9S@ct99*di zdlB_mc8G>JEGdSy@j^p8c*JI+YL%uygWmQ!&ibiyx6RcPjYwN{B{x!)0xnQ|nG-XR zH*z2YgU55&@V6@2xRQv}vsxP_t|Y-9%9z6&TDN`}72SS9kkk3+H)V1%XLaq}+uhLG zYUBDYj&nhW>431X?+>omstF86Ds3hKY-J#5H|eWz&J`M$Eta4&*&aK+2@%|yXiW)d zsR6MF)axuO9-}rOTf~dFvN+c5;DV~RwAdX3m>S9ZPI~X~#YOYw{vcHn z(yLjzMNFLiB8(iM&6YO}E=w>+1k=_lZdF^*z<3C76*?A(HFVr@`V~dxKU5Y zv1{4hd&N)9R?t3-10v{KXcEwxaI`aS_XVzH>gf>&dBGA>6Su3|`hU{7-ZZNu9AGJ= z5zVA`D*wsx?PYX(lB*ZiKaJ$BO+$&faDIph&Gz(~>5Q;AKF0Czs*S5DJlR{m;4d4e)ur}yS4i;mS`Mmbuc0@8nR#gcpOB~z|y`KCWf81G~xF8Dhzb47Dx?4n^|LhI@KQsHD7=J9%sRqz%;@&x4!8%G=5*VU_e-m zf=C!@!dmnLq(d>I08xP&OvJBKU4$0z)FyZnt;v7eLlXg$9t$U^KQ~CuJ`*S-kdBPq3~u8lhRA ztH?T@p1qJAFEm&kE1&@Y7N}iel>~u!1}J)QAh5&{OPxi1`gEhxZt{7B&FIZrHQOH? zbW#|`z##W>2Y)ymqP8*Pu5ou(wiMx0qc06E$NUT?s|6wi)~n{%^>z!i;(l@dysaW3 z9CaQXL4r8gC_TqR=IGShBup1-3Pb_Uuz*4ahAGZ>CdDLap}nie+cxeC2}KI}Bg(kq zwhqRPvYnB?Fj;swIM{)BvN}3CltIrRkeyy4s~JyJ%Ko~R$K&N)RAzLEStlRJ3%`E- zy5hbutjd-^{Wv;0`Zk4b@NJii{`m3Z+sRU9zzyvXbqSKbC*S;odFEz}HRZ$NwE|N= z>ZA|^H%2l)j1}GR4FdLl0MJ?_`12T{8n0xk9s@zH6}aEgz{*ohH=U@#+@DXGHt<32 zy?Z-;*UHLDGOZ%yh%8&!V})|dk1yc$G`Bsa1P@PIOlUW)gx^>V5J{}hzPYINH?R-OJ zWo58H2fjU03yF+G0m+c{!GjOAZtI5SZ~`!}`z$QDJUl!=GFsE7r=#oNUFyZwF0=fC zgh^c-F#(CCo|GXbBtG2i^RK)M9~EODBDp6-o7ckCcLiCQ0r1ErB>ety0KI0TCM-tbzt4hhVR**o;i zWJq}UldRWC5QR1kixqsZ|{Wa0dOXvG_U64w69-ARkI z_3^&0Ms(iOf6ptv(5OO`xC^=Oom`V7c?LcaP6`%VO_(&dK&|whu=5fI0Brq-zpTWw zS_|S1@Uz!gmHyuDEQNV zxP*8Z+=a$_&_N+HKW5f#wl9pABg(>K>^^u zcm$svPXZlZyw(0fAg*4{uy{#x=8f6UJ4PZ53I(%aI^o&<0RRld<<)Us{7(yx8_G>W z5>1dZXyqI1Zm%47n+r?+)k_m}3)@$lSVq4Bb&_ne_ zE43jqc}6^y3d0LJ(srk}^b}qyWxlD`4W}MU0|48ybqqc+0}t64P5@~P`|(mQ!!~B` zmtt^i-NDd1EX(uasKwOd(d(eaNH0%R53=EU<6vyU_fsW4w(-&wSH5;x^iV6)&hGBq^j6&7 z=Gjts4F@SJE32R#{Pk=qT}Z^_2ZOCAHOoLG4FIA^OiIdY;DmahYf#%eJ0=Tlp>{LX z(Fy!k3&8t{GxF<3rTGs)w;Fm|iKPgeu5fjv)J2z;k*|gg&8*)k7XXge=VJ97e*XB; z^yaV`kHKlNiv(0n?P{k7Ky;I%_x$uM0Qb8tDnlU#q-iUl*J9nhd)I0BwGgjG&)umi zM;L$;)}Y1$<(mbd^{EQmy|uieE4QupxLT%AjF*=e+)~Mi+jD8@TLc8qmlEu7jiiGV z(3T1$w;cMr@)fy(t<(RaDFZ3(5+o190gW1*+Qp(`^9!nH9uLdi$iQR4xiaYM@gfEb zHO#PL3v^*~NzkF{XIx-W@I5KTORC(=`q8BHzuPR+-_PPRJ_5xx3{2i`2aV%nw>5R8 zRPk=0A7guLlyu4~DOn=wJRdSMUxBHP2s%Y5Wb;Z*S4t5TKi?mIl_FX(A}DA-)dr^O z%Ir$>*}Vnyj;JUV^ArHe#U&&X1nsG>T|WIgm%_iT1B(j5R?Ks9D&>i94P|Hu@^ymf(d+#Q_a!g;rmma_iFK$V zv}L`MeEZ;#Z*=|UxlcXl{t=xv#guK$y_q@}+3@XHF}eO*r+%fvN{Yb|tF!MNm<_|3 zcboG6J7Rt)`=20Y!$Rnt+jOEbK)4L!EYl6U(AqmZgq%%|j@}Dve-6w@k;AnXpsD}X zETEQ)q_6)49v064u`Pel6LlvQZ_lZlg}N6yGjW@Yvn88)!Nt~kw84?gj}M!tvA3Pv zTRW#?fFlKz{)rL?P^||Byd?V$=Ke;!9WP=*pTJe0aCc8n3n*!2WxX1g3H*-yUA?_| z+gjV9`n>~0mf)N8QOYcP<(_w{E+4Zhk*8(gg2jH*8SnP|JX&^B$|~c!%>GK#ucaZo ziPEsP;YVj@>szl*Ft3PQjgWQq^|uHK9|HOSLRHM~+V$&nR(1a?2)&zd1CnDk?zTQ= zv4yCA5o-`yTs~F zS(AnnbR22#xlbLS%9bT2TL^>cA*i1BGN*p`5k}Ig6McO~sID=nrs(?r4-jcXBOQF( zV)aiZusouHW4$q1CgOK?WPzzyh+(-x{2=Zin^Q}a4N~LaGjPu)z#qACM-v5X|1|iX zf_s-?k8B^Tj@NI!0%-XA(8YsIh}adM27W|FRu)KP{HgvIp3k2@_t@ z4+{jIcqkAtc7dTsLQC5REViEYqDCdK>W_g$tz{#|Z#7^J=*Yw-q@}eLz;ps8+3>l_ zX$K^5D~x9we0>08jW`g4Y;@r<_&fz!{N?5;@Sge?+QUjF?Pi=i=|E2T9w~X!(BRha|AES8TBa^Ywb0VRxd8LJF?E6O%cpgq#=>P+=WXXNjR|uT_ zHgiPGWl{cQf3@|h0|wp@^3C8%&>qE04bkT@^q3E191nwm>cMMK&*-wLsuK21`a8Qu zVUE{}#i`7nj^Mgu0RDAR-8+|fX8^mBm}|!VZ<|93t;xe)@TA;{erZN2TZ1UoBEP!1 znp*Adf$qPXpxDJ&DYW7~`#uc)2-IC53IbHx-7_$hP!Xap0CFaPYCt0vB*x&|D-w%G z+ZqBb8Av2R_~podv6u@wmaA*E0gOeOx)n}T{skeI!JPso`(L@M<$r~+eY&yVm93UF z)upa%0PhRIaX!a%{(oU7P5vtk*o~u}u|=`9xY?c8J;G1Z_RvmHE7iZ8qw2s`)7rO~ z64(W6JzjI6;IM(J*BbI+s}pvG`R5nS9IA2j9-wjlNnm;W8;eV*`ac4t|F(I@i!T9m z*;Q*5wEh?}nHkQZ?$4`UP?CHUs*r!~OL2MPMW9Dap$?%~!u#H<>?O;>QzMF5^`tD3! zNgvIs=CaFWladc+T8&l|Wd$QnKiVQA`mOqs^;~YIbxcR%mK$_2SY7mndEj;x1HIXl z0W$_;y5wSg^(0Xx2WzbxJN+wjU2#52ZLB5hZ&`G#$ZK$2x5BFSA}`RH<4ZIx5}TZq z6*MkZ9NsvG)P#K6kB@1*qy)ndW+=Y3b>s*wUzAQHj=}bOMq5SBv@@S5-^p0Ms<>6J zkIV#>+vkTqKemlcG)K6 zfnCWF@9q$KpRjs+^6m2bj(w%iOJ(-hglHQ5pW`%K5P8Y3O$e@?4Y)^0#VohwNZ(y* z_)HL*n;FCFeQKHIbBOoI0%l#BqBe21>UdUNzo>{s!4apJ4t86K1fN${&fN33_)})} zi3)|M`;?5HdPT$3fL^D8aK#`+ZD{%!RvM$eIubsHBIJcGLWdSFesZ3y-nz|oPB2?H z9N)nmXXy9n4}`^~XFAN-sQ8eouh3{~(FnO^(OVR`y(Ld@kuFOjlt<8?g5N82$rsWn z>0H^5gG?O$t)R#9$~(ULyK;#Y`cCR5>P_`}&V#y>UTsO5Yv8033qMv-k>lMaIkU-q z7p~k?HMCZ`SlKT$s^-wjtkb_uqOE`R+3%ze{h7E`kqip^e^^6Km;5Xn?>ztV2am&n z5^%?8sTy$0Kc(I9&DheUr*9X(-F)UZ71g(Mjo?^mbtCLJ-D$G2Tq?M^;GKgWO(f~= zaJ}wLY2D1yl`7;SH@r3RN6^fli;X}VTbUb|-uI)9JPB%+CNs}i(?uoDxa-fps_(S5 zroMJLNk}2gN*KOP?>q0^QNSa4cMGi(+{Nx(chY0$kmhquPsY*je8@zenQIx;rfrqmRezE$lVt{V0!v zkH*`+kor;pGwZ2h@~f`erK>1$p69JRS} zhFI5`a=#v(vR5u^cVXmBc5-9tytSA_Yw1nBW$!)B^B{> z**apa86WEOxtKT;OP88a_}s2~6zJH^lviG3fcl1lE=HwTMa6g>3PcXn;Fx2h3oX)^ z(Yr`&!EkH&Sy|iTT9fOwENJA#YaH`K!e6%p-kvs=h`TQHzpGqGv`J4aYrgpCqW`op zf(`6(y!f^r`)uatwYTVSG6Bz3e>2aH+ZhfP`*4oX*A893(;ViVjl_g?L|ktPAmvH3 zVZEf|Qx9f_`kohbRFySuO)dqEc5uNpi_be-X3I7*VId9Lo+O8aB3EP7a3`5?ZNY{W zR7*NmkyKGDd3lo_PNm5jlV&9LOmgm24qtA@R;^PgnrSF-yg!A@L0jDQvu~jg<7*Z& zkhmz+m!SPmDoe8u$J)K`#Q0xzGp(Ir~sz|o#e^fCOo~(q53c-6| zGMY2mRMF3@B^y_7dB2nyA%JD>BJM$)E~XFIP;ByD2jom3fQi^J|EU&7V(VG+CuC z$2+E0pSY#AOj5MWf`Xw@r|YV+{s~HPta7BMy%IhnEYU=_tgK9p@@MS+lr0=>wQ%ar zh<(y&{rG5gQ3~TkTed(LA+u#-t28e!UF&^qFYWZh_#y6YTQ8IL<(nIr8uZ-iqtos` zT|(rokGYRMmfl&S+qFnZ9%T!jvj8iPwk}T)#pCFP%E_WpBj;#_;OQ2f zj>&s|Rn)LO$7o5l+P3FElj7g|=XgB3kdx2rXQc+$P(LT*+bo1*%+*x+f0R z27*-iGtT|g3;}X#p0!rr^ZIxxf%H-+E6WdX2ygVp4AL&d{g<2oL%zAO{Y-?_C3R2A z1BAz7X7R!JX!!a4h$FkJ>UOB5uT$Ie1r4v)*+ct#cqvb-jz@Y9%;n)|GUAS81lkJf zX%#HzBou~wqFK;y7e6rX5NDmCtS)MV39!-zlPEE-^c)H{KQIe?XfM;+-9X75B=6

AZK)x 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 gjyqXe=6FDfvnvNnA6+z``3=&7eu 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 (int, str): + """ + Execute a remote command via SSH. + """ + + try: + async with asyncssh.connect(host, + username=user, + known_hosts=None) as conn: + logger.debug("Executing command '{}'".format(command)) + result = await conn.run(command) + logger.debug("Result: {}".format(result)) + return result.exit_status, result.stderr + except Exception as e: + logger.error("Error: {}".format(repr(e))) + return -1, str(e) + + +def mysql_query(host: str, user: str, password: str, retries: int, query: str + ) -> (int, str): + """ + Execute a query to a MySQL database. + """ + + text = "" + logger.debug("Host: '{}', user: '{}', password: '{}', query: '{}'".format(host, user, password, query)) + for i in range(0, retries): + try: + with connect( + host=host, + user=user, + password=password, + ) as connection: + with connection.cursor() as cursor: + cursor.execute(query) + for (db) in cursor: + logger.debug(db) + text = text + str(db[0]) + ", " + return 0, text[0:len(text)-2] + except Error as e: + text = str(e) + logger.debug("Error: {}".format(e)) + time.sleep(3) + continue + + return -1, text diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/source/playbook.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/source/playbook.yaml new file mode 100644 index 00000000..bc6013d7 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/source/playbook.yaml @@ -0,0 +1,14 @@ +--- +- hosts: all + become: yes + tasks: + - name: Wait 120 seconds, but only start checking after 10 seconds + wait_for_connection: + delay: 20 + timeout: 120 + - name: Install packages + apt: + name: + - "{{ app }}" + state: latest + cache_valid_time: 3600 diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/source/run_ssh.sh b/oai-helm/vyos_pnf/helm-charts/eechart/source/run_ssh.sh new file mode 100755 index 00000000..8b58b3cc --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/source/run_ssh.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +date "+%H:%M:%S Starting $0..." +IP=$1 +USERNAME=$2 +SCRIPT=$3 +PARAMS=$4 + +DIR=$(dirname $0) + +date "+%H:%M:%S Waiting for $IP to be ready..." +i=5 +while ! ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" 'exit' ; do + date "+%H:%M:%S Error accessing $IP, retrying..." + sleep 5 + i=$(( $i - 1 )) + [ $i -ge 0 ] || exit 1 +done + +date "+%H:%M:%S SSH server is up, sending script '${DIR}/${SCRIPT}'..." +scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${DIR}/${SCRIPT} "$USERNAME"@"$IP": +if [ $? -ne 0 ]; then + date "+%H:%M:%S scp error" + exit 1 +fi +date "+%H:%M:%S OK. Setting file permissions" +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "chmod a+x $SCRIPT" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +COMMAND="./$SCRIPT" +[ ${#PARAMS} -ge 0 ] || COMMAND="${COMMAND=} $PARAMS" +date "+%H:%M:%S Running '$COMMAND' on $IP..." +ssh -T -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o LogLevel=ERROR "$USERNAME"@"$IP" "$COMMAND" +if [ $? -ne 0 ]; then + date "+%H:%M:%S ssh error" + exit 1 +fi + +date "+%H:%M:%S End" +exit 0 diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/source/vnf_ee.py b/oai-helm/vyos_pnf/helm-charts/eechart/source/vnf_ee.py new file mode 100644 index 00000000..c4015c3f --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/source/vnf_ee.py @@ -0,0 +1,74 @@ +## +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. +## + +import asyncio +import asyncssh +import requests +import logging +import os + +from osm_ee.exceptions import VnfException + +import osm_ee.util.util_ee as util_ee +import osm_ee.util.util_ansible as util_ansible +import osm_ee.vnf.mylib as mylib + +class VnfEE: + + PLAYBOOK_PATH = "/app/EE/osm_ee/vnf" + SSH_SCRIPT = "/app/EE/osm_ee/vnf/run_ssh.sh" + + def __init__(self, config_params): + self.logger = logging.getLogger('osm_ee.vnf') + self.config_params = config_params + + # config method saves SSH access parameters (host and username) for future use by other methods. + # It is mandatory in any case. + async def config(self, id, params): + self.logger.debug("Execute action config, params: {}".format(params)) + # Config action is special, params are merged with previous config calls + self.config_params.update(params) + required_params = ["ssh-hostname"] + self._check_required_params(self.config_params, required_params) + yield "OK", "Configured" + + # This method implements the "ansible_playbook" primitive. Uncomment and modify it if a primitive requires + # executing an Ansible Playbook. It needs "playbook-name" parameter (playbook file, must be in "source" directory). + async def ansible_playbook(self, id, params): + self.logger.debug("Execute action ansible_playbook, params: '{}'".format(params)) + + try: + self._check_required_params(params, ["playbook-name"]) + params["ansible_user"] = self.config_params["ssh-username"] + params["ansible_password"] = self.config_params["ssh-password"] + inventory = self.config_params["ssh-hostname"] + "," + playbook = self.PLAYBOOK_PATH + "/" + params["playbook-name"] + os.environ["ANSIBLE_HOST_KEY_CHECKING"] = "False" + return_code, stdout, stderr = await util_ansible.execute_playbook(playbook, inventory, params) + status = "OK" if return_code == 0 else "ERROR" + yield status, stdout + stderr + except Exception as e: + self.logger.debug("Error executing ansible playbook: {}".format(repr(e))) + yield "ERROR", str(e) + + # Static method that verifies whether a parameter exists in the map + @staticmethod + def _check_required_params(params, required_params): + for required_param in required_params: + if required_param not in params: + raise VnfException("Missing required param: {}".format(required_param)) + diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/NOTES.txt b/oai-helm/vyos_pnf/helm-charts/eechart/templates/NOTES.txt new file mode 100755 index 00000000..c52fc2c4 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/NOTES.txt @@ -0,0 +1,21 @@ +1. Get the application URL by running these commands: +{{- if .Values.ingress.enabled }} +{{- range $host := .Values.ingress.hosts }} + {{- range .paths }} + http{{ if $.Values.ingress.tls }}s{{ end }}://{{ $host.host }}{{ . }} + {{- end }} +{{- end }} +{{- else if contains "NodePort" .Values.service.type }} + export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "eechart.fullname" . }}) + export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") + echo http://$NODE_IP:$NODE_PORT +{{- else if contains "LoadBalancer" .Values.service.type }} + NOTE: It may take a few minutes for the LoadBalancer IP to be available. + You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "eechart.fullname" . }}' + export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "eechart.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}") + echo http://$SERVICE_IP:{{ .Values.service.port }} +{{- else if contains "ClusterIP" .Values.service.type }} + export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "eechart.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}") + echo "Visit http://127.0.0.1:8080 to use your application" + kubectl port-forward $POD_NAME 8080:80 +{{- end }} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/_helpers.tpl b/oai-helm/vyos_pnf/helm-charts/eechart/templates/_helpers.tpl new file mode 100755 index 00000000..d3e28e02 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/_helpers.tpl @@ -0,0 +1,56 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "eechart.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "eechart.fullname" -}} +{{- if .Values.fullnameOverride -}} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "eechart.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Common labels +*/}} +{{- define "eechart.labels" -}} +app.kubernetes.io/name: {{ include "eechart.name" . }} +helm.sh/chart: {{ include "eechart.chart" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "eechart.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "eechart.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/configmap.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/configmap.yaml new file mode 100755 index 00000000..5b9634c7 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/configmap.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "eechart.fullname" . }} +data: +{{ (.Files.Glob "source/*").AsConfig | indent 2 }} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/generator.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/generator.yaml new file mode 100644 index 00000000..96f7e237 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/generator.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower }}" +data: + generator.yml: |- + {{ .Files.Get "snmp/generator.yml" | nindent 4}} \ No newline at end of file diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/ingress.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/ingress.yaml new file mode 100755 index 00000000..264f8909 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/ingress.yaml @@ -0,0 +1,41 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "eechart.fullname" . -}} +{{- $svcPort := .Values.service.port -}} +{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1beta1 +{{- else -}} +apiVersion: extensions/v1beta1 +{{- end }} +kind: Ingress +metadata: + name: {{ $fullName }} + labels: +{{ include "eechart.labels" . | indent 4 }} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: +{{- if .Values.ingress.tls }} + tls: + {{- range .Values.ingress.tls }} + - hosts: + {{- range .hosts }} + - {{ . | quote }} + {{- end }} + secretName: {{ .secretName }} + {{- end }} +{{- end }} + rules: + {{- range .Values.ingress.hosts }} + - host: {{ .host | quote }} + http: + paths: + {{- range .paths }} + - path: {{ . }} + backend: + serviceName: {{ $fullName }} + servicePort: {{ $svcPort }} + {{- end }} + {{- end }} +{{- end }} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/mibs.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/mibs.yaml new file mode 100644 index 00000000..e7b5eab5 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/mibs.yaml @@ -0,0 +1,6 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" +data: +{{ (.Files.Glob "snmp/mibs/**").AsConfig | indent 2 }} \ No newline at end of file diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/secret.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/secret.yaml new file mode 100644 index 00000000..62d4b267 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/secret.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "eechart.fullname" . }} +type: Opaque +data: + mysql_host: {{ .Values.mysql.fullnameOverride | b64enc | quote }} + mysql_user: {{ "root" | b64enc | quote }} + mysql_password: {{ .Values.mysql.auth.rootPassword | b64enc | quote }} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/service.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/service.yaml new file mode 100755 index 00000000..88d38d66 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.service.port }} + targetPort: grpc + protocol: TCP + name: grpc + selector: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/serviceaccount.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/serviceaccount.yaml new file mode 100755 index 00000000..be615a5f --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/serviceaccount.yaml @@ -0,0 +1,8 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ template "eechart.serviceAccountName" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +{{- end -}} diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/statefulset.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/statefulset.yaml new file mode 100755 index 00000000..a13cfa6e --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/statefulset.yaml @@ -0,0 +1,65 @@ +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: {{ include "eechart.fullname" . }} + labels: +{{ include "eechart.labels" . | indent 4 }} +spec: + serviceName: {{ include "eechart.fullname" . }} + replicas: {{ .Values.replicaCount }} + selector: + matchLabels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + template: + metadata: + labels: + app.kubernetes.io/name: {{ include "eechart.name" . }} + app.kubernetes.io/instance: {{ .Release.Name }} + vnf: {{ .Values.global.osm.vnf_id | lower}} + spec: + imagePullSecrets: + - name: regcred + serviceAccountName: {{ template "eechart.serviceAccountName" . }} + securityContext: + runAsUser: 0 + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + envFrom: + - secretRef: + name: {{ include "eechart.fullname" . }} + ports: + - name: grpc + containerPort: 50051 + protocol: TCP + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + - name: osm-ee + mountPath: /app/storage + - name: osm-ee-source + mountPath: /app/EE/osm_ee/vnf + - name: snmp-config-volume + mountPath: /etc/snmp_exporter + - name: vnf-mibs + mountPath: /root/.snmp/mibs + - name: vnf-generator + mountPath: /app/vnf/generator + volumes: + - name: osm-ee-source + configMap: + name: {{ include "eechart.fullname" . }} + - name: snmp-config-volume + hostPath: + path: "/var/lib/osm/snmp_exporter/{{ .Values.global.osm.vnf_id | lower }}/" + - name: vnf-mibs + configMap: + name: "vnf-snmp-mibs-{{ .Values.global.osm.vnf_id | lower}}" + - name: vnf-generator + configMap: + name: "vnf-snmp-generator-{{ .Values.global.osm.vnf_id | lower}}" + - name: osm-ee + hostPath: + path: /var/lib/osm/osm/osm_osm_packages/_data diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/templates/tests/test-connection.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/templates/tests/test-connection.yaml new file mode 100755 index 00000000..e52b7b8b --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/templates/tests/test-connection.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ include "eechart.fullname" . }}-test-connection" + labels: +{{ include "eechart.labels" . | indent 4 }} + annotations: + "helm.sh/hook": test-success +spec: + containers: + - name: wget + image: busybox + command: ['wget'] + args: ['{{ include "eechart.fullname" . }}:{{ .Values.service.port }}'] + restartPolicy: Never diff --git a/oai-helm/vyos_pnf/helm-charts/eechart/values.yaml b/oai-helm/vyos_pnf/helm-charts/eechart/values.yaml new file mode 100644 index 00000000..c63644a2 --- /dev/null +++ b/oai-helm/vyos_pnf/helm-charts/eechart/values.yaml @@ -0,0 +1,77 @@ +global: + osm: + vnf_id: AVNFId + +# Default values for eechart. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +replicaCount: 1 + +image: + repository: opensourcemano/api-fe + tag: latest + pullPolicy: IfNotPresent + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +serviceAccount: + # Specifies whether a service account should be created + create: false + # The name of the service account to use. + # If not set and create is true, a name is generated using the fullname template + name: + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + port: 50050 + +ingress: + enabled: false + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: [] + + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +mysql: + auth: + rootPassword: "123456" + fullnameOverride: "eechart-mysql" diff --git a/oai-helm/vyos_pnf/vyos_pnfd.yaml b/oai-helm/vyos_pnf/vyos_pnfd.yaml new file mode 100644 index 00000000..c3edebc4 --- /dev/null +++ b/oai-helm/vyos_pnf/vyos_pnfd.yaml @@ -0,0 +1,65 @@ +vnfd: + description: VyOS Router PNF + df: + - id: default-df + instantiation-level: + - id: default-instantiation-level + vdu-level: + - number-of-instances: 1 + vdu-id: gateway_pdu + vdu-profile: + - id: gateway_pdu + min-number-of-instances: 1 + lcm-operations-configuration: + operate-vnf-op-config: + day1-2: + - config-primitive: + # - execution-environment-primitive: ansible_playbook + # execution-environment-ref: vyos-config-ee + # name: ansible_playbook + # parameter: + # - data-type: STRING + # name: playbook-name + config-access: + ssh-access: + default-user: vyos + required: true + execution-environment-list: + - id: vyos-config-ee + helm-chart: eechart + id: vyos_pnf + initial-config-primitive: + - execution-environment-ref: vyos-config-ee + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: vyos + - name: ssh-password + value: vyos + seq: 1 + - execution-environment-ref: vyos-config-ee + name: ansible_playbook + parameter: + - name: playbook-name + value: configure-remote.yaml + seq: 2 + ext-cpd: + - id: gateway_public-ext + int-cpd: + cpd: eth0-int + vdu-id: gateway_pdu + id: vyos_pnf + mgmt-cp: gateway_public-ext + product-name: vyos_pnf + vdu: + - description: gateway_pdu + name: gateway_pdu + id: gateway_pdu + int-cpd: + - id: eth0-int + virtual-network-interface-requirement: + - name: eth0 + pdu-type: gateway + version: 1.0 -- GitLab From aff698f2b44261e98b728d521b858a2e50ce2344 Mon Sep 17 00:00:00 2001 From: sergio-tarazona Date: Mon, 20 Jun 2022 18:11:26 -0500 Subject: [PATCH 2/2] replacing architecture image --- oai-helm/img/architecture.png | Bin 80519 -> 72499 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/oai-helm/img/architecture.png b/oai-helm/img/architecture.png index 1c0fd567247b366b5920d8027ea5d8990fd6f1a5..a34b19ea5936c45c1d95a62d2e27334a6a769192 100644 GIT binary patch literal 72499 zcma&NbyQqU@HU792m}cs1b3I`z`%SLI z7%%g+KY)V}!=rnXTD-$QGtKPHN12c09>D!=Yz)is=5cOI+WpK4H^0hb*RsmWN-2qd zO(5jVP9GloU$YiQyOR8$>)1&5l>b^*ID+55`*BJVfgRz`O@=OC%D#|GS_MZB|#Xl+Pd&>sB%YhC_ zllk?|8~Xc+98**35BA|1Dt!6EDEhdGwcNt^Ja*Q{#v@p(tEhKa7a{e3bYf&=WRb{{ zD17xTGIDzza=MPs=V+v>`7D2-xS&n0p@v337T`SSl{yLb;n7^Be&qC_?eUjq@m;l| zmHIs{cVqz&P>x|~OL+MCh#{o5qKy1mv^;LY1L#Gpe_?6q!N*xiiC|%$n`+a6n1;&G zzmLm=&06I`F9ygAOTELxXZRd9#B?=3{MANb&(UQd;L%U{!r7f?QM=BO$WEUK8-AhF z-~WI0_;PjO9fn2Lp>kasciv;E<)n$OZfn|iWp2w3PwWY3`_|Xk9Dvr=nbxy42CzXa z$zT90nm_)cif|HO`-+?BZ_qp5$Wwj8YA_rWeKLAxF{OBcpZd151~q3fQ(%;a&YI@c z6!B|ji`7n{(IxL1*}u}vfVU{LMwi0gnL<3@r^&(rYVk%b+&WMj@Qa_02#V=~lSSDx zW?RQ-$yoR8&lIt zoyLpzdmEL=Z}wh}&RK_xQ$@+knq6?+JI<}@ozdx7Um{)IVA~dR(i2RCd&EgrS^xo_sC#;&Gz?t)HHosouubm zPx)9&8w{KGWclk>cK=VzliVxn(=^@&RvBZ zMkdG#ql1HE=t^AJylAgK48^}3~nMWLkB+=ik4>UK!7uD~hRZ?tHgjMbiP18WRa zo5i!l+=BaLsRy#fz1|CBD$XX}^BkvgmvmqXVKJNDQK`u&I&M}Yh6cK5A#8Ux2H?Ib zdA%-H76NLKEj0AKcYc1I548wS|2W{C*cXd_SBk=*U;fS6x%#nbVkwO$}arHj{^bt{2?RyGmM4KBf!TS{=- zwbUy�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