(Moving to sdfabric-dev, which is more suitable for this discussion)
Hi David,
It is recommended to deploy using Kubernetes and Helm. You can download the SD-Fabric umbrella helm chart
here.
The latest SD-Fabric release version is 1.1.2. You can find the version of each sub-components
here.
Thanks.
Charles Chan, PhD (he/him)
Cloud Software Development Engineer
Software Product Incubation | Network and Edge Group
Intel Corporation | intel.com
On 6/27/22, 04:57, "'David Lake' via SDFABRIC-Announce" <sdfabric...@opennetworking.org> wrote:
Hello
I'm trying to follow the deployment guide for SD-Fabric.
I'm building a very simple environment - one EdgeCore switch running latest Stratum to do GTP encap/decap as a hardware UPF in a a Free5GC network.
Stratum is running on the switch but I don't understand what I need to do next. I need to install ONOS but I don't know which version and then I don't understand how to install the PFCP agent that is discussed in the guide.
Is 'SD-Fabric' a package of ONOS/PFCP/DBUF that I can simply pull a Docker container or do I have to manually install ONS first? In which case, what version is tested?
Many thanks
David
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
sdfabric-annou...@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-announce/04f5bd33-9595-4383-999b-5c1c092a20fan%40opennetworking.org.
Hi Charlie
Thank you but I’m having immense difficulty understanding the deployment procedures and the order of operations – there seems to be some circular syntax on deployment page…
I’m also assuming that the whole point of the SD-Fabric Helm chart is that I no longer need to manually install/configure Stratum on the switches, ONOS, PFCP, DBUF on the controller node – am I correct in this assumption or is there something I’ve missed?
Many thanks for your assistance
David
One other question – there is no step whereby the switches join the Kubernetes cluster as a regular node would; do I need to do this (if so, how?) or is this part of the SD-Fabric implementation?
Thanks again!
David
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
sdfabric-dev...@opennetworking.org.
To view this discussion on the web visit
https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB47920425B2E60A2852AA169BB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
You can find more information here: https://docs.sd-fabric.org/master/deployment.html
Step 2: Configure switches as special Kubernetes nodes
Thanks.
Charles Chan, PhD (he/him)
Cloud Software Development Engineer
Software Product Incubation | Network and Edge Group
Intel Corporation | intel.com
On 6/28/22, 03:04, "David Lake" <d.l...@surrey.ac.uk> wrote:
One other question – there is no step whereby the switches join the Kubernetes cluster as a regular node would; do I need to do this (if so, how?) or is this part of the SD-Fabric implementation?
Thanks again!
David
From: 'David Lake' via SDFABRIC-Dev <sdfabr...@opennetworking.org>
Date: Tuesday, 28 June 2022 at 10:42
To: Chan, Charles <charle...@intel.com>, sdfabr...@opennetworking.org <sdfabr...@opennetworking.org>
Subject: [sdfabric-dev] Re: [sdfabric-announce] Installation Instructions for GTP on EdgeCore
Hi Charlie
Thank you but I’m having immense difficulty understanding the deployment procedures and the order of operations – there seems to be some circular syntax on deployment page…
1) With reference to https://docs.sd-fabric.org/master/deployment.html , ‘Step 2: Configure switches as special Kubernetes nodes’ immediately after the configuration of the switch. The discussion appears centred around configuration of the switch as it follows from the terminal session in section 1 but I am unsure is the two items referred to (‘Label’ and ‘Taint’) are shell commands on the switch or within part of the configuration of Kubernetes on the switch. The documentation states that I should set-up ‘Label’ and ‘Taint’ but it gives no details of these items or where they should be set? Ditto with ‘NodeSelector’ and ‘Toleration’ – is this a local configuration to Kubernetes on the switch (in which case where/how) or do I have to include this on my Kubernetes Control Plane somewhere?
2) The ‘example of five nodes Kubernetes’ – is this executed on the switch or somewhere else? As far as I can see, at this point in the configuration we haven’t actually deployed anything relating to the switch layout (I believe that is in Step 5 of this page but I’m not sure?).
3) Step 3 points to a separate page that discusses ONOS Network Configuration; this page details various options but does not mention where these configuration files should be located?
4) Step 4 similarly points to configuration relevant to Stratum but again does not give the name nor location of the created configuration file?
5) Step 5 – this is the most confusing part! I’m very unclear about the ‘Prerequisites’ – there is mention of a ‘Step 5’ pre-requisite but I only see 4? https://gerrit.opencord.org/plugins/gitiles/sdfabric-helm-charts/+/HEAD/sdfabric/README.md
Hi Charles
Apologies, but I don’t understand.
I have installed the ONL version on the switch but there is no Kubernetes on it.
How do I add the switches to the Kubernetes control plane?
Thanks
Hi
Just to follow up on this.
I’ve eventually worked out how to download the Helm charts – the URL in the documentation is incorrect (or at least requires an SSH key) and should be git clone https://gerrit.opencord.org/sdfabric-helm-charts
Once the Helm charts were on my Control Plane node I looked at the README.md which states:
There are several preparation work that need to be done before deploying SD-Fabric.
1. All switches have been provisioned with Docker and Kubernetes
2. All switches have been configured as special Kubernetes nodes
3. Prepare ONOS network config
4. Prepare Stratum chassis config for each switch
The switch has been installed using the same version of ONL as in the documentation but there is no Kuberenetes installed on it and ‘apt-get install kubeadm kubectl’ fails to find a candidate in the repo.
So I am unsure whether I need to install Kubernetes manually or from another repo.
Please advise how I should install Kubernetes on the switches.
Many thanks
Hi all
OK – I’ve managed to work out how to install Kubernetes on the EdgeCore Switch but I haven’t yet tried to join the Kubernetes cluster.
The instructions say that I need to ‘… set up Label to all switch node…’ and ‘… Taint to all switch node…’
I don’t understand WHERE this is set? Is that on the Kubernetes node (i.e. the switch) in which case how and where is that done?
Or is it on the Kubernetes control plane – again how and where is that done?
Thanks
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB479291CF2605A1B3E5D79ADCB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
We use Rancher to provision K8s, but any existing solutions that works on x86 servers will work for the switches theoretically. After all, the switch is yet another x86 devices running Linux. I’d suggest go
with whatever K8s management tools you are familiar with.
It’s the same for the taints and labels. There is nothing different from operating typical K8s cluster.
K8s configuration and operation are beyond the scope of the SD-Fabric, but there are a lot of resources on the Internet. For example:
https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
Thanks.
Charles Chan, PhD (he/him)
Cloud Software Development Engineer
Software Product Incubation | Network and Edge Group
Intel Corporation | intel.com
The problem I’m having is much more basic than Rancher – I can’t even get K8S to run on the EdgeCore in the way that your documentation says it does.
I’ve downloaded and installed the exact version of ONL that the website states and there is no Kubernetes on there and no instructions on your website as to what to do.
Given that K8S on the EdgeCore is a fundamental part of this project, all I want to do is to follow the steps your team has taken to make this work. I’ve tried to download the latest K8S to the switch and hit a number of errors.
Can you tell me what version of K8S you have running on your EdgeCore switches and how you installed it?
Thank you
David
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/BN6PR1101MB217723F38F96E40EDBA4F0D887BA9%40BN6PR1101MB2177.namprd11.prod.outlook.com.
Success!
I’ve finally been able to install Kubernetes on the ONL system. The latest K8S is 1.24.2 but this will not run on Debian Stretch with Docker 20.x.x which is the version ONL is based on so I went back to Docker 19.03.15 and K8S 1.18.20.
As my CP node is Ubuntu 20.04, I’ve had to force installation of older packages:
apt-get install containerd=1.3.3-0ubuntu2
apt-get install docker.io=19.03.8-0ubuntu1
On both the switch and the CP node I installed:
apt install kubectl=1.18.20-00 kubelet=1.18.20-00 kubernetes-cni cri-tools=1.19.0-00 kubeadm=1.18.20-00
I also found that I needed to change the cgroups driver to systemd for Docker on the CP node in /etc/docker/daemon.json:
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
I’m using Flannel networking but found that the initnetdev script was missing in ONL – I added it from here https://github.com/opennetworklinux/ONL/blob/master/builds/swi/all/shared/sbin/initnetdev
Once that was installed, I ran
kubeadm init --pod-network-cidr 10.244.0.0/16
.. on the Control Plane node and the corresponding kubeadm on the switch. I then installed Flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
I’m now in the process of labelling and tainting the switch before I attempt to deploy SD-Fabric.
I hope this helps anyone else going through the same issues. If ONL is bumped to Debian 10 at any point, then it would be possible to run K8S 1.24 and newer Docker so these steps will change.
David
From: sdfabr...@opennetworking.org <sdfabr...@opennetworking.org> on behalf of Chan, Charles <charle...@intel.com>
Date: Thursday, 30 June 2022 at 06:39
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/BN6PR1101MB217723F38F96E40EDBA4F0D887BA9%40BN6PR1101MB2177.namprd11.prod.outlook.com.
Success!
I’ve finally been able to install Kubernetes on the ONL system. The latest K8S is 1.24.2 but this will not run on Debian Stretch with Docker 20.x.x which is the version ONL is based on so I went back to Docker 19.03.15 and K8S 1.18.20.
As my CP node is Ubuntu 20.04, I’ve had to force installation of older packages:
apt-get install containerd=1.3.3-0ubuntu2
apt-get install docker.io=19.03.8-0ubuntu1
On both the switch and the CP node I installed:
apt install kubectl=1.18.20-00 kubelet=1.18.20-00 kubernetes-cni cri-tools=1.19.0-00 kubeadm=1.18.20-00
I also found that I needed to change the cgroups driver to systemd for Docker on the CP node in /etc/docker/daemon.json:
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
I’m using Flannel networking but found that the initnetdev script was missing in ONL – I added it from here https://github.com/opennetworklinux/ONL/blob/master/builds/swi/all/shared/sbin/initnetdev
Once that was installed, I rankubeadm init --pod-network-cidr 10.244.0.0/16.. on the Control Plane node and the corresponding kubeadm on the switch. I then installed Flannel:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
I’m now in the process of labelling and tainting the switch before I attempt to deploy SD-Fabric.
I hope this helps anyone else going through the same issues. If ONL is bumped to Debian 10 at any point, then it would be possible to run K8S 1.24 and newer Docker so these steps will change.
David
From: sdfabric-dev@opennetworking.org <sdfabric-dev@opennetworking.org> on behalf of Chan, Charles <charle...@intel.com>
Date: Thursday, 30 June 2022 at 06:39
To: Lake, David (PG/R - Elec Electronic Eng) <d.l...@surrey.ac.uk>, sdfabric-dev@opennetworking.org <sdfabric-dev@opennetworking.org>
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-announce+unsubscribe@opennetworking.org.
To view this discussion on the web visit
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev+unsubscribe@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB47920425B2E60A2852AA169BB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev+unsubscribe@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB479291CF2605A1B3E5D79ADCB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev+unsubscribe@opennetworking.org.
Hi HungWei
I would be very happy to contribute to the documentation.
My Kubernetes Control Plane node is Ubuntu 22.04 which by default installs Kubernetes 1.24.2. I was able to install 1.24.2 on the ONL with Debian 9 but I didn’t know about the Docker issue at that point and reverted to Kubernetes 1.18.8 across both the control plane and ONL.
I have had to put ‘apt-mark hold’ for kubeadm, kubectl, Kubernetes-cri, kubelet and docker.io to prevent them upgrading automatically.
Is there any way that Kubernetes plus docker with a systemd configuration could be included in the base ONL package rather than having to install?
Thanks
David
To: Lake, David (PG/R - Elec Electronic Eng) <d.l...@surrey.ac.uk>, sdfabr...@opennetworking.org <sdfabr...@opennetworking.org>
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-annou...@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-announce/04f5bd33-9595-4383-999b-5c1c092a20fan%40opennetworking.org.
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev...@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB47920425B2E60A2852AA169BB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev...@opennetworking.org.
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB479291CF2605A1B3E5D79ADCB5B89%40DB7PR06MB4792.eurprd06.prod.outlook.com.
--
You received this message because you are subscribed to the Google Groups "SDFABRIC-Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sdfabric-dev...@opennetworking.org.
Hi David,
We don’t plan to upgrade to a newer ONL image. Instead, we are looking into porting Stratum onto SONiC. That will provide even better platform support moving forward.
I would suggest sticking with current ONL + old K8s for a while, or you can try to build Stratum on top of Ubuntu 22.04 – but we won’t be able to support that either.
Thanks.
Charles Chan, PhD (he/him)
Cloud Software Development Engineer
Software Product Incubation | Network and Edge Group
Intel Corporation | intel.com
To view this discussion on the web visit https://groups.google.com/a/opennetworking.org/d/msgid/sdfabric-dev/DB7PR06MB47922251099909607B090AADB5809%40DB7PR06MB4792.eurprd06.prod.outlook.com.