Gradiant / 5g-charts

Helm charts for 5G Technologies
Apache License 2.0
119 stars 47 forks source link

open5gs with multus #77

Closed jmarkotic closed 2 years ago

jmarkotic commented 2 years ago

Hi, first thanks for great work on open5gs charts. This is not really an issue but kind request for help. I'd like to split control&data traffic via mutliple interfaces (ie. N3, N6 for UPF). Perhaps I can manage on adding multus, preparing NetworkAttachmentDefinitions, pod annotations) but not rally sure on how to reflect changes in chart manifests (interfaces referenced, IP addresses of components to be static or dynamic, vs hostnames). I could not find some references inside charts (beside mentioning interface for some components). Do you have some guidelines on how to introduce separation of traffic types with multus ?

avrodriguezgrad commented 2 years ago

Hi, We are currently changing the way open5gs chart is deployed so there isn't a method to split control&data traffic. Although, we have it in our roadmap and, in the next days, we'll upload a version with that.

However, we work with Multus in our testing lab. FYI, you'll have the option to change the name of the interface in the config file of open5gs and to add annotations to use NetworkAttachmentDefinitions, just using the values.yaml.

I'll let you know when all this is ready.

jmarkotic commented 2 years ago

Hi Alvaro, thank You for feedback. I am interested to split data path for N3 (having ueransim/gNB on other K8s cluster, having GTPu tunnel between 2 endpoints on different clusters) and ie having N6 on upf separated as well for flexibility (ie adding external SGi services, like NAT, ...). I managed to add NAD definition and assign it to upf pod added annotations (with static ip). But i struggled from there. I need to have those IPs exposed to config files and still didn't manage to set it correctly. I beileve one can't have K8s services on 2nd ary multus controller interfaces, so static IPs migght be best option for that. Looking forward to get those new charts. Feel free to share chart branch even if not fully polished.

avrodriguezgrad commented 2 years ago

Hi, Now, you can find an option in open5gs-upf chart to change the name of the gtpu interface. Through values.yaml, you can see the field to change it ( .Values.config.upf.gtpu.dev ).

This is a basic split of control&data plane, but I think it'll meet your needs.

jmarkotic commented 2 years ago

Hi Alvaro, thanks You !! I actually pulled helm like 10d ago and had to provide both dev/interface, but i also had to define ip address in Values.config.upf.gtpu.advertise that should be advertised and which was assigned via NetworkAttachmentDefinition. Btw, I also had error reported by helm in resource/config.upf.yaml file. So I modified: from: advertise: "{{ tpl .Values.config.upf.gtpu.advertise }}" to: advertise: {{ .Values.config.upf.gtpu.advertise }}

One question though. If I am applying open5gs helm chart (with all other dependencies), i can apply my own values,yaml file to override some of values. But I was wondering on how could i override values in open5gs-upf chart which is called as dependency. Otherwise i need to go to upf values.yaml and edit it there. Tbh, i tried putting value in main values file (like .Values.config.upf ...) but didn't get resolved.

avrodriguezgrad commented 2 years ago

You almost got it right. In values.yaml of open5gs helm chart, you have to put (.Values.upf) and inside that, you can change the values of the open5gs-upf chart. You can see an example with udr, hss... which have mongodb.enabled, changing the values.yaml of the chart accordingly.

jmarkotic commented 2 years ago

all good. Thank you for help !! Closing the issue.

sam-sre commented 9 months ago

Hi @jmarkotic I'm in a similar situation (trying to split UPF CP/UP traffic via Multus) but so far I could'nt fit the Multus NAD & Pod annotations with the Openverso charts. I'd like to know if you had it right?and what was your workaround to do so? Thanks..

jmarkotic commented 9 months ago

Hi @sam-sre, perhaps best that you provide some email address and i can send over values/config file i used for multus ans traffic separation (single and/or multuple clusters).

sam-sre commented 9 months ago

@jmarkotic

sami.sam.rom@gmail.com

Thanks 👍