diff --git a/workloads/oai/README.md b/workloads/oai/README.md index cff3d35..277f2d4 100644 --- a/workloads/oai/README.md +++ b/workloads/oai/README.md @@ -1,9 +1,100 @@ # OAI Packages -Packages for deploying the following are stored here +Packages for deploying the following are stored in the folder - OAI RAN custom controller - OAI CU-CP - OAI CU-UP - OAI DU - OAI UE SIM +- Network for RAN and Core deployments +- Workload cluster for RAN and Core deployments + +PackageVariant and PackageVariantSets for deploying OAI RAN are also stored in this folder. + +# Steps to manually deploy OAI RAN on Nephio + +Note: Scripts to automatically deploy OAI RAN on Nephio, will be available here: https://github.com/nephio-project/test-infra/tree/main/e2e/tests/oai + +## Step 0: Prerequisite + +1. Nephio should be installed. +2. Verify Network required for OAI RAN and Core should should be installed. + Perform the following to verify in the Nephio management cluster. +3. Catalog repository need to be registered. + Since the OAI RAN packages are in workloads/oai of https://github.com/nephio-project/catalog.git repository, + we need to register the repository with --directory option + + e.g. kpt alpha repo register --namespace default https://github.com/nephio-project/catalog.git --directory=workloads/oai + + Also the following tags need to be created for upstream repository(https://github.com/nephio-project/catalog.git) used: + 1. workloads/oai/oai-ran-operator/v1 + 2. workloads/oai/pkg-example-cucp-bp/v1 + 3. workloads/oai/pkg-example-cuup-bp/v1 + 4. workloads/oai/pkg-example-du-bp/v1 + 5. workloads/oai/pkg-example-ue-bp/v1 + +```bash +kubectl get networks +``` +Verify output as shown below. + +```console + NAME REPO_STATUS + vpc-cu-e1-srl True + vpc-cudu-f1-srl True + vpc-internal-srl True + vpc-internet-srl True + vpc-ran-srl True +``` +3. OAI core components should be deployed before deploying OAI RAN. + Steps are mentioned here: https://github.com/OPENAIRINTERFACE/oai-packages/blob/r2/README.md + + +## Step 2: Deploy OAI RAN NF operator + +Execute the command as shown below in Nephio Management cluster + +```bash +kubectl apply -f package-variants/oai-ran-operator.yaml +``` +Check OAI RAN operators pods are in running state in all clusters. + +```bash +kubectl get pods -n oai-ran-operators +``` + +## Step 3: Deploy OAI RAN NFs + +Deploy OAI CU CP using the below command in Nephio Management cluster + +```bash +kubectl apply -f package-variants/oai-cucp.yaml +``` +Check OAI CU CP pod is in running state in regional cluster. + +```bash +kubectl get pods -n oai-ran-cucp +``` +Deploy OAI CU UP using the below command in Nephio Management cluster + +```bash +kubectl apply -f package-variants/oai-cuup.yaml +``` + +Check OAI CU UP pod is in running state in edge cluster. + +```bash +kubectl get pods -n oai-ran-cuup +``` +Deploy OAI DU using the below command in Nephio Management cluster + +```bash +kubectl apply -f package-variants/oai-du.yaml +``` + +Check OAI DU pod is in running state in edge cluster. + +```bash +kubectl get pods -n oai-ran-du +``` diff --git a/workloads/oai/packagevariants/edge-oai-cucp.yaml b/workloads/oai/package-variants/oai-cucp.yaml similarity index 80% rename from workloads/oai/packagevariants/edge-oai-cucp.yaml rename to workloads/oai/package-variants/oai-cucp.yaml index 96a3cf3..43284a8 100644 --- a/workloads/oai/packagevariants/edge-oai-cucp.yaml +++ b/workloads/oai/package-variants/oai-cucp.yaml @@ -1,16 +1,16 @@ apiVersion: config.porch.kpt.dev/v1alpha1 kind: PackageVariant metadata: - name: edge-oai-cucp + name: regional-oai-cucp spec: upstream: repo: catalog package: pkg-example-cucp-bp revision: v1 downstream: - repo: edge02 + repo: regional package: oai-ran-cucp annotations: approval.nephio.org/policy: initial injectors: - - name: edge02 + - name: regional diff --git a/workloads/oai/packagevariants/edge-oai-cuup.yaml b/workloads/oai/package-variants/oai-cuup.yaml similarity index 89% rename from workloads/oai/packagevariants/edge-oai-cuup.yaml rename to workloads/oai/package-variants/oai-cuup.yaml index a048947..e995089 100644 --- a/workloads/oai/packagevariants/edge-oai-cuup.yaml +++ b/workloads/oai/package-variants/oai-cuup.yaml @@ -8,9 +8,9 @@ spec: package: pkg-example-cuup-bp revision: v1 downstream: - repo: edge01 + repo: edge package: oai-ran-cuup annotations: approval.nephio.org/policy: initial injectors: - - name: edge01 + - name: edge diff --git a/workloads/oai/packagevariants/edge-oai-du.yaml b/workloads/oai/package-variants/oai-du.yaml similarity index 89% rename from workloads/oai/packagevariants/edge-oai-du.yaml rename to workloads/oai/package-variants/oai-du.yaml index 6fda93c..a644fd7 100644 --- a/workloads/oai/packagevariants/edge-oai-du.yaml +++ b/workloads/oai/package-variants/oai-du.yaml @@ -8,9 +8,9 @@ spec: package: pkg-example-du-bp revision: v1 downstream: - repo: edge01 + repo: edge package: oai-ran-du annotations: approval.nephio.org/policy: initial injectors: - - name: edge01 + - name: edge diff --git a/workloads/oai/packagevariants/oai-ran-operator.yaml b/workloads/oai/package-variants/oai-ran-operator.yaml similarity index 100% rename from workloads/oai/packagevariants/oai-ran-operator.yaml rename to workloads/oai/package-variants/oai-ran-operator.yaml diff --git a/workloads/oai/packagevariants/edge-oai-ue.yaml b/workloads/oai/package-variants/oai-ue.yaml similarity index 89% rename from workloads/oai/packagevariants/edge-oai-ue.yaml rename to workloads/oai/package-variants/oai-ue.yaml index 666efaf..1d085f2 100644 --- a/workloads/oai/packagevariants/edge-oai-ue.yaml +++ b/workloads/oai/package-variants/oai-ue.yaml @@ -8,9 +8,9 @@ spec: package: pkg-example-ue-bp revision: v1 downstream: - repo: edge01 + repo: edge package: oai-ran-ue annotations: approval.nephio.org/policy: initial injectors: - - name: edge01 + - name: edge diff --git a/workloads/oai/pkg-example-cucp-bp/apply-replacements-namespace.yaml b/workloads/oai/pkg-example-cucp-bp/apply-replacements-namespace.yaml index 04cb9cc..3b32d61 100644 --- a/workloads/oai/pkg-example-cucp-bp/apply-replacements-namespace.yaml +++ b/workloads/oai/pkg-example-cucp-bp/apply-replacements-namespace.yaml @@ -29,14 +29,6 @@ replacements: kind: Interface fieldPaths: - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-cucp-bp/apply-replacements-owner.yaml b/workloads/oai/pkg-example-cucp-bp/apply-replacements-owner.yaml index 7971729..bd93557 100644 --- a/workloads/oai/pkg-example-cucp-bp/apply-replacements-owner.yaml +++ b/workloads/oai/pkg-example-cucp-bp/apply-replacements-owner.yaml @@ -24,20 +24,6 @@ replacements: options: delimiter: '-' index: 1 - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-cucp-bp/config_ran_nf.yaml b/workloads/oai/pkg-example-cucp-bp/config_ran_nf.yaml index 560534d..1c29427 100644 --- a/workloads/oai/pkg-example-cucp-bp/config_ran_nf.yaml +++ b/workloads/oai/pkg-example-cucp-bp/config_ran_nf.yaml @@ -1,14 +1,14 @@ apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig metadata: - name: cucp-nf-config-edge01 + name: cucp-nf-config namespace: example spec: configRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: RANConfig metadata: - name: ranconfig-edge01 + name: ranconfig namespace: default spec: cellIdentity: 12345678L @@ -23,7 +23,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: PLMN metadata: - name: plmn-edge01 + name: plmn namespace: default spec: PLMNInfo: @@ -37,7 +37,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: OAIConfig metadata: - name: oai-nf-config-edge01 + name: oai-nf-config namespace: default spec: image: "docker.io/oaisoftwarealliance/oai-gnb:2023.w19" \ No newline at end of file diff --git a/workloads/oai/pkg-example-cucp-bp/cucpdeployment.yaml b/workloads/oai/pkg-example-cucp-bp/cucpdeployment.yaml index b931a0e..cd918df 100644 --- a/workloads/oai/pkg-example-cucp-bp/cucpdeployment.yaml +++ b/workloads/oai/pkg-example-cucp-bp/cucpdeployment.yaml @@ -6,9 +6,7 @@ metadata: spec: provider: cucp.openairinterface.org capacity: - maxDownlinkThroughput: 100M - maxUplinkThroughput: 1M parametersRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig - name: cucp-nf-config-edge01 \ No newline at end of file + name: cucp-nf-config \ No newline at end of file diff --git a/workloads/oai/pkg-example-cuup-bp/apply-replacements-namespace.yaml b/workloads/oai/pkg-example-cuup-bp/apply-replacements-namespace.yaml index 04cb9cc..3b32d61 100644 --- a/workloads/oai/pkg-example-cuup-bp/apply-replacements-namespace.yaml +++ b/workloads/oai/pkg-example-cuup-bp/apply-replacements-namespace.yaml @@ -29,14 +29,6 @@ replacements: kind: Interface fieldPaths: - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-cuup-bp/apply-replacements-owner.yaml b/workloads/oai/pkg-example-cuup-bp/apply-replacements-owner.yaml index 7971729..bd93557 100644 --- a/workloads/oai/pkg-example-cuup-bp/apply-replacements-owner.yaml +++ b/workloads/oai/pkg-example-cuup-bp/apply-replacements-owner.yaml @@ -24,20 +24,6 @@ replacements: options: delimiter: '-' index: 1 - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-cuup-bp/config_ran_nf.yaml b/workloads/oai/pkg-example-cuup-bp/config_ran_nf.yaml index 2359198..e125ae6 100644 --- a/workloads/oai/pkg-example-cuup-bp/config_ran_nf.yaml +++ b/workloads/oai/pkg-example-cuup-bp/config_ran_nf.yaml @@ -1,14 +1,14 @@ apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig metadata: - name: cuup-nf-config-edge01 + name: cuup-nf-config namespace: example spec: configRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: RANConfig metadata: - name: ranconfig-edge01 + name: ranconfig namespace: default spec: cellIdentity: 12345678L @@ -23,7 +23,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: PLMN metadata: - name: plmn-edge01 + name: plmn namespace: default spec: PLMNInfo: @@ -37,7 +37,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: OAIConfig metadata: - name: oai-nf-config-edge01 + name: oai-nf-config namespace: default spec: image: "docker.io/oaisoftwarealliance/oai-nr-cuup:2023.w19" \ No newline at end of file diff --git a/workloads/oai/pkg-example-cuup-bp/cuupdeployment.yaml b/workloads/oai/pkg-example-cuup-bp/cuupdeployment.yaml index 7acb290..a584196 100644 --- a/workloads/oai/pkg-example-cuup-bp/cuupdeployment.yaml +++ b/workloads/oai/pkg-example-cuup-bp/cuupdeployment.yaml @@ -5,10 +5,7 @@ metadata: namespace: example spec: provider: cuup.openairinterface.org - capacity: - maxDownlinkThroughput: 100M - maxUplinkThroughput: 1M parametersRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig - name: cuup-nf-config-edge01 \ No newline at end of file + name: cuup-nf-config \ No newline at end of file diff --git a/workloads/oai/pkg-example-du-bp/apply-replacements-namespace.yaml b/workloads/oai/pkg-example-du-bp/apply-replacements-namespace.yaml index 04cb9cc..3b32d61 100644 --- a/workloads/oai/pkg-example-du-bp/apply-replacements-namespace.yaml +++ b/workloads/oai/pkg-example-du-bp/apply-replacements-namespace.yaml @@ -29,14 +29,6 @@ replacements: kind: Interface fieldPaths: - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/namespace] - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-du-bp/apply-replacements-owner.yaml b/workloads/oai/pkg-example-du-bp/apply-replacements-owner.yaml index 7971729..bd93557 100644 --- a/workloads/oai/pkg-example-du-bp/apply-replacements-owner.yaml +++ b/workloads/oai/pkg-example-du-bp/apply-replacements-owner.yaml @@ -24,20 +24,6 @@ replacements: options: delimiter: '-' index: 1 - - select: - kind: Capacity - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - - select: - kind: DataNetwork - fieldPaths: - - metadata.annotations.[specializer.nephio.org/owner] - options: - delimiter: '-' - index: 1 - select: kind: Dependency fieldPaths: diff --git a/workloads/oai/pkg-example-du-bp/config_ran_nf.yaml b/workloads/oai/pkg-example-du-bp/config_ran_nf.yaml index c8201a1..abdb5f6 100644 --- a/workloads/oai/pkg-example-du-bp/config_ran_nf.yaml +++ b/workloads/oai/pkg-example-du-bp/config_ran_nf.yaml @@ -1,14 +1,14 @@ apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig metadata: - name: du-nf-config-edge01 + name: du-nf-config namespace: example spec: configRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: RANConfig metadata: - name: ranconfig-edge01 + name: ranconfig namespace: default spec: cellIdentity: 12345678L @@ -23,7 +23,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: PLMN metadata: - name: plmn-edge01 + name: plmn namespace: default spec: PLMNInfo: @@ -37,7 +37,7 @@ spec: - apiVersion: workload.nephio.org/v1alpha1 kind: OAIConfig metadata: - name: oai-nf-config-edge01 + name: oai-nf-config namespace: default spec: image: "docker.io/oaisoftwarealliance/oai-gnb:2023.w19" \ No newline at end of file diff --git a/workloads/oai/pkg-example-du-bp/dudeployment.yaml b/workloads/oai/pkg-example-du-bp/dudeployment.yaml index eee4648..cf96efa 100644 --- a/workloads/oai/pkg-example-du-bp/dudeployment.yaml +++ b/workloads/oai/pkg-example-du-bp/dudeployment.yaml @@ -5,10 +5,7 @@ metadata: namespace: example spec: provider: du.openairinterface.org - capacity: - maxDownlinkThroughput: 100M - maxUplinkThroughput: 1M parametersRefs: - apiVersion: workload.nephio.org/v1alpha1 kind: NFConfig - name: du-nf-config-edge01 \ No newline at end of file + name: du-nf-config \ No newline at end of file