Comments (22)
@free5gc-org I did the necessary modifications and I sent the PR for each of the NFs.
When they are merged, I can create a PR for the free5gc
repo as well, since there are changes that need to be done to the configurations in config
folder as well.
from free5gc.
Yes..
An example of how I configured the NRF in k8s is this:
nrfcfg.conf: |
info:
version: 3.0.2
description: NRF initial local configuration
configuration:
MongoDBName: "free5gc"
MongoDBUrl: "mongodb://mongodb-svc:27017"
DefaultServiceIP: "free5gc-nrf-service"
sbi:
scheme: http
ipv4Addr: 0.0.0.0
port: 29510
DefaultPlmnId:
mcc: "208"
mnc: "93"
serviceNameList:
- nnrf-nfm
- nnrf-disc
So the remaining 5GC components communicates to the NRF using service name free5gc-nrf-service instead of the POD IP
from free5gc.
Hi @free5gc-org ,
That's great! 😃
Yes, now the only thing left is to change the config files so that they match the new format.
It should be smth like this:
sbi:
scheme: http
registerIPv4: 127.0.0.1 #Can also be a kubernetes service IP or domain name.
bindingIPv4: 127.0.0.1 #Can also be an ENV.
port: 29518
If you can do these changes without me creating a PR, I guess it would be fastest. I can of course create a PR as I have them already changed in my local code.
from free5gc.
@infinitydon I noticed that they are not in the same files for each of the NFs (probably different persons coded the NFs) but for AMF for e.g. I had to modify the following files:
amf_context/context.go
, amf_service/amf_init.go
, amf_util/initContext.go
and factory/config_configuration
.
It would be nice if @free5gc-org would consider to have add this feature in the code.
from free5gc.
Dear @endrigoshi ,
Sorry for the lat reply. This PR seems good and we'll start to review recently.
Thanks a lot!
from free5gc.
Hi @free5gc-org ,
I just tested it in my setup and it work correctly.
On another note, I noticed that we may need to change the config
inside the compose
folder.
from free5gc.
You would have to manually add the parameter in the config file and then in config-parsing files for each of the NFs. Indeed it is quite useful when deploying the core network in k8s. I have done it previously but not for the latest version of the code.
from free5gc.
@endrigoshi Thanks for the response, can you please show me where the config-parsing files for each of the NFs are located?
from free5gc.
We're not quite understand,
So the feature is asking for listen on, for example, IPA, and register to nrf with IPB?
from free5gc.
@free5gc-org Is this something that fits with your vision for free5gc? If so I can work on this and have a PR by next week. Or if you plan to release a new version of the code soon, I can wait for that and do the changes there.
from free5gc.
Hi @endrigoshi,
We have no plane to release our new version in recent weeks. We're glad to see someone who can help us to implement this feature. 💪
from free5gc.
Hello @infinitydon
sorry for asking this question in this thread.
I am also thinking to deploy Free5GC on k8s. I see your work.
https://bitbucket.org/infinitydon/virtual-4g-simulator/src/master/free5gc/
I can deploy only NRF. others are giving error.
For example when I deploying AUSF
ubuntu@localhost:~$ kubectl logs free5gc-ausf-deployment-7647cc7cd9-fsrhf Error from server (BadRequest): container "myapp-container" in pod "free5gc-ausf-deployment-7647cc7cd9-fsrhf" is waiting to start: PodInitializing
Do you know why it is happening?
Thanks
Sothy
from free5gc.
Hi @sothy ,
The deployment uses sdnvortex/network-controller to add a second network interface to the container and this requires that bridge interface exists in the worker node, can you check if there is a bridge br0 in the worker node?
Also open-v-switch needs to be installed in the worker nodes.
N.B - The bridge should be created with open-v-switch.
NRF uses the default k8s interface, this is why it is running without any issues.
from free5gc.
Hello @infinitydon
There is no br0.
ubuntu@localhost:~$ sudo ovs-vsctl list-br br-int
I see your
`ubuntu@localhost:~$ kubectl describe daemonsets network-controller-server-unix -n kube-system
Name: network-controller-server-unix
Selector: name=network-controller-server-unix
Node-Selector:
Labels:
Annotations: deprecated.daemonset.template.generation: 1
Desired Number of Nodes Scheduled: 1
Current Number of Nodes Scheduled: 1
Number of Nodes Scheduled with Up-to-date Pods: 1
Number of Nodes Scheduled with Available Pods: 1
Number of Nodes Misscheduled: 0
Pods Status: 1 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: name=network-controller-server-unix
Containers:
network-controller-server-unix:
Image: sdnvortex/network-controller:v0.4.9
Port:
Host Port:
Command:
/go/bin/server
Args:
-unix=/tmp/vortex.sock
-netlink-gc
Environment:
Mounts:
/tmp/ from grpc-sock (rw)
/var/run/docker.sock from docker-sock (rw)
/var/run/docker/netns:shared from docker-ns (rw)
/var/run/openvswitch/db.sock from ovs-sock (rw)
Volumes:
docker-ns:
Type: HostPath (bare host directory volume)
Path: /run/docker/netns
HostPathType:
docker-sock:
Type: HostPath (bare host directory volume)
Path: /run/docker.sock
HostPathType:
ovs-sock:
Type: HostPath (bare host directory volume)
Path: /run/openvswitch/db.sock
HostPathType:
grpc-sock:
Type: HostPath (bare host directory volume)
Path: /tmp/vortex
HostPathType:
Events:
Type Reason Age From Message
Normal SuccessfulCreate 5m44s daemonset-controller Created pod: network-controller-server-unix-fp5m6
`
I dnt know why it is not possible to create br0?
Best regards
Sothy
from free5gc.
The bridge needs manually on the worker node, you can do this via
sudo ovs-vsctl add-br br0
from free5gc.
Thanks @infinitydon
It worked for me.
only upf is not woking.
I guess UPF is not working. I dont install gtp plugin the host and kernel version is matched.
Kernel
ubuntu@localhost:~$ uname -a
Linux localhost 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
from free5gc.
Hello @infinitydon
I see many times NRF failed.
ubuntu@localhost:~$ kubectl get pods NAME READY STATUS RESTARTS AGE free5gc-amf-deployment-94cf8b957-9kfmp 1/1 Running 0 36m free5gc-ausf-deployment-7647cc7cd9-d95wx 1/1 Running 0 39m free5gc-nrf-deployment-76cf5587b5-bgfvv 0/1 CrashLoopBackOff 7 85m free5gc-pcf-deployment-6c6976c67d-ffxlm 1/1 Running 0 35m free5gc-smf-deployment-77c94bc9bb-bz8kw 1/1 Running 0 36m free5gc-udm-deployment-748fcb4944-zqbxd 1/1 Running 0 35m free5gc-udr-deployment-796b5969c-274fw 1/1 Running 0 30m
When I see logs of NRF,
INFO[2020-08-16T13:04:17Z]/src/nrf/Management/api_management.go:700 free5gc/src/nrf/Management.setLocationHeader() UriList create NRF=ManagementLog FATA[2020-08-16T13:05:47Z]/lib/MongoDBLibrary/api_mongoDB.go:53 free5gc/lib/MongoDBLibrary.RestfulAPIGetMany() server selection error: server selection timeout current topology: Type: Unknown Servers: Addr: mongodb-svc:27017, Type: Unknown, State: Connected, Average RTT: 0, Last error: dial tcp: lookup mongodb-svc on 10.244.0.3:53: no such host MongoDB=MongoDB ubuntu@localhost:~$
Do I need to do for mongdb?
from free5gc.
I suggest you should delete the whole free5gc deployment and start afresh..
Kindly use the issues page to continue the discussion: https://bitbucket.org/infinitydon/virtual-4g-simulator/issues?status=new&status=open
from free5gc.
@free5gc-org I did the necessary modifications and I sent the PR for each of the NFs.
When they are merged, I can create a PR for thefree5gc
repo as well, since there are changes that need to be done to the configurations inconfig
folder as well.
Hi @endrigoshi ,
We have merge the PR, thanks for the contribution. Seems we should update the config on free5gc here right. 😃
from free5gc.
Ok, we can do it!
Thanks for your help!!!
from free5gc.
Hi @endrigoshi @infinitydon ,
The config has been updated!
If you have time, please helps to check the config and try running it due to we have no k8s env now.
Thanks for your report and contribution! 👍 ❤️
from free5gc.
The config of compose has been fixed now.
from free5gc.
Related Issues (20)
- [Docs] Fix minor typos
- [Docs] Update nodejs, GTP-U module and requirements versions
- [Feat] Improve/Correct the webconsole build behavior and update docs accordingly
- [Feat] 您好,想咨询一下AF和NEF功能大约什么时候发布? HOT 2
- VM of N3IWUE has slow upload in speedtest HOT 1
- Is multicast feature supported on V3.3.0 ? HOT 1
- [Docs] How to add subscriber via REST-API HOT 2
- free5gc SCTP could not connect HOT 11
- INSUFFICIENT_RESOURCES_FOR_SPECIFIC_SLICE_AND_DNN HOT 10
- [Feat]How can I set a static IP address for a UE? HOT 3
- [Bugs] N3IWUE fails to stablish network connection with N3IWF in v3.4.0 HOT 11
- Test free5GC HOT 6
- Duplicate Definition of t3555 Timer in amfcfg.yaml HOT 1
- [Feat]Options for Creating an sslkey.log HOT 1
- [Bug] UPF not working in Kubernetes Cluster HOT 5
- Profile B not implemented HOT 1
- [Bugs] Wrong Interface Type in PFCP Session Establishment Request for IP Based PDU Session HOT 5
- [Bugs] Sometime accept for the SCTP socket fails
- [Bugs] SMF panic on external (3rd party) CHF integration HOT 31
- [Bugs] HTTP PRI method appearing in distributed tracing HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from free5gc.