Skip to content

Commit

Permalink
Merge branch 'main' into add-versioning
Browse files Browse the repository at this point in the history
  • Loading branch information
CsatariGergely committed Jun 6, 2024
2 parents 18beba7 + a6d278c commit 0729094
Show file tree
Hide file tree
Showing 6 changed files with 40 additions and 27 deletions.
2 changes: 1 addition & 1 deletion .linkspector.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ ignorePatterns:
- pattern: "^http://HOSTNAME:PORT.*$"
replacementPatterns:
- pattern: ".md#.*$"
replacement: ".md"
replacement: ".md"
8 changes: 4 additions & 4 deletions content/en/docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,21 @@ Some experiments on working with [C4 model](https://c4model.com/) to document Ne
## System Context View


![System Context](/images/architecture/level1-nephio-system.png)
![System Context](/static/images/architecture/level1-nephio-system.png)

The system context view gives a high level perspective of the Nephio software system and the external entities that it interacts with. There are no deployment considerations in this view - the main purpose of the picture is to depict what is the responsibility and scope of Nephio, and the key interfaces and capabilities it exposes to deliver on that responsibility.

## System Landscape View

![System Landscape](/images/architecture/level2-nephio-container.png)
![System Landscape](/static/images/architecture/level2-nephio-container.png)

Nephio is an amalgamation of software systems, so a system landscape provides a high-level view of how those software systems interoperate.

## Component Views

### Nephio Core

![Nephio Core Component View](/images/architecture/level3-nephio-core-component.png)
![Nephio Core Component View](/static/images/architecture/level3-nephio-core-component.png)

Nephio core is a collection of operators and functions that perform the fundamental aspects of Nephio use cases, independent of the specifics of vendor implementations.

Expand All @@ -36,7 +36,7 @@ The controllers for OAI and Free5GC are represented here. Although they are vend

### Porch

![Nephio Porch Component View](/images/architecture/nephio-porch-component-view.png)
![Nephio Porch Component View](/static/images/architecture/nephio-porch-component-view.png)

### ConfigSync

Expand Down
21 changes: 17 additions & 4 deletions content/en/docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ these terms.
## Config
See [Configuration](#configuration).

## Config Injection
See [Injector](#injector).

## Configuration
In Nephio, this *usually* refers to the Kubernetes resources used to provision
and manage network functions, their underlying infrastructure, and their
Expand All @@ -31,8 +34,18 @@ is part of the "Kubernetes Everywhere" principle).
As a community, we should try to use a common set of terminology for different types of configuration. See
[docs#4](https://github.com/nephio-project/nephio/issues/266).

## Config Injection
See [Injector](#injector).
## Configuration as Data
Configuration as Data is an approach to management of configuration (incl. configuration of infrastructure, policy,
services, applications, etc.) which:

* makes configuration data the source of truth, stored separately from the live state
* uses a uniform, serializable data model to represent configuration
* separates code that acts on the configuration from the data and from packages / bundles of the data
* abstracts configuration file structure and storage from operations that act upon the configuration data; clients
manipulating configuration data don’t need to directly interact with storage (git, container images)

Source of definition and more information about Configuration as Data can be found in the
[kpt documentation](https://github.com/nephio-project/porch/blob/main/docs/06-config-as-data.md).

## Controller
This term comes from Kubernetes where
Expand Down Expand Up @@ -178,7 +191,7 @@ based upon the target cluster.
## kpt
[Kpt](https://kpt.dev) is an open source tool for managing bundles of Kubernetes
resource configurations, called kpt [packages](#package), using the
[Configuration-as-Data](#config-as-data) methodology.
[Configuration as Data](#configuration-as-data) methodology.

The `kpt` command-line tool allows pulling, pushing, cloning and otherwise
managing packages stored in version control repositories (Git or OCI), as well
Expand Down Expand Up @@ -289,7 +302,7 @@ Also see [REST](https://en.wikipedia.org/wiki/Representational_state_transfer).
This refers to a software component that runs in the Nephio Management cluster,
and could be considered a type of [controller](#controller). However, it
specifically watches for `PackageRevision` resources in a Draft state, and
checks for the [conditions](#conditions) on those resources. When it finds
checks for the conditions on those resources. When it finds
unsatisfied conditions of the type it handles, the specializer will
[mutate](#mutation) (modify) the Draft package by adding or
changing resources.
Expand Down
6 changes: 3 additions & 3 deletions content/en/docs/guides/install-guides/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ weight: 1
- [Installing on GCE](#installing-on-gce)
- [GCE Prerequisites](#gce-prerequisites)
- [Create a Virtual Machine on GCE](#create-a-virtual-machine-on-gce)
- [Follow installation on GCE](#follow-installation-on-gce)
- [Follow installation on GCE](#follow-the-installation-on-gce)
- [Installing on a pre-provisioned VM](#installing-on-a-pre-provisioned-vm)
- [VM Prerequisites](#vm-prerequisites)
- [Kick off the installation on VM](#kick-off-installation-on-vm)
- [Follow installation on VM](#follow-installation-on-vm)
- [Kick off the installation on VM](#kick-off-an-installation-on-vm)
- [Follow installation on VM](#follow-the-installation-on-vm)
- [Access to the User Interfaces](#access-to-the-user-interfaces)
- [Open terminal](#open-terminal)
- [Next Steps](#next-steps)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ weight: 7
- [kpt fn render](#kpt-fn-render)
- [kpt live init](#kpt-live-init)
- [porchctl rpkg for the Workload clusters](#porchctl-rpkg-for-workload-clusters)
- [Create workload cluster package](#create-workload-cluster-package)
- [Create workload cluster package](#create-the-workload-cluster-package)
- [Configure the package](#configure-the-package)
- [Propose the package](#propose-the-package)
- [Approve the package and trigger configsync](#approve-the-package-and-trigger-configsync)
- [Transformations in the Workload cluster creation](#transformations-in-workload-cluster-creation)
- [Transformations in the Workload cluster creation](#transformations-in-the-workload-cluster-creation)

# Vanilla kpt for the Management cluster

Expand Down
26 changes: 13 additions & 13 deletions content/en/docs/guides/user-guides/exercise-1-free5gc.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Free5GC Testbed Deployment and E2E testing with UERANSIM
description: >
A step by step guide to deploy Free5GC Core and perform E2E testing with UERANSIM
A step by step guide to deploy free5GC Core and perform E2E testing with UERANSIM
weight: 2
---

Expand All @@ -11,11 +11,11 @@ weight: 2
- [Create the Regional cluster](#step-1-create-the-regional-cluster)
- [Check the Regional cluster installation](#step-2-check-the-regional-cluster-installation)
- [Deploy two Edge clusters](#step-3-deploy-two-edge-clusters)
- [Deploy Free5GC control plane functions](#step-4-deploy-free5Gc-control-plane-functions)
- [Deploy Free5GC Operator in the Workload clusters](#step-5-deploy-free5GC-operator-in-the-workload-clusters)
- [Check Free5GC Operator deployment](#step-6-check-free5GC-operator-deployment)
- [Deploy free5GC control plane functions](#step-4-deploy-free5gc-control-plane-functions)
- [Deploy free5GC Operator in the Workload clusters](#step-5-deploy-free5gc-operator-in-the-workload-clusters)
- [Check free5GC Operator deployment](#step-6-check-free5gc-operator-deployment)
- [Deploy AMF, SMF and UPF](#step-7-deploy-the-amf-smf-and-upf-nfs)
- [Deploy UERANSIM](#step-8-deploy-UERANSIM)
- [Deploy UERANSIM](#step-8-deploy-ueransim)
- [Change the Capacities of the UPF and SMF NFs](#step-9-change-the-capacities-of-the-upf-and-smf-nfs)

## Introduction
Expand All @@ -29,14 +29,14 @@ These exercises will take you from a system with only the Nephio Management clus
- Two Edge clusters
- Repositories for each cluster, registered with Nephio, and with Config Sync set up to pull from those repositories.
- Inter-cluster networking between those clusters
- A complete free5gc deployment including:
- A complete free5GC deployment including:

- AUSF, NRF, NSSF, PCF, UDM, UDR running on the Regional cluster and communicating via the Kubernetes default network
- SMF, AMF running on the Regional cluster and attached to the secondary Multus networks as needed
- UPF running on the Edge clusters and attached to the secondary Multus networks as needed
- The free5gc WebUI and MongoDB as supporting services
- The free5GC WebUI and MongoDB as supporting services

- A registered subscriber in the free5gc core
- A registered subscriber in the free5GC core
- UERANSIM running on the edge01 cluster and simulating a gNB and the subscriber's UE

The network configuration is illustrated in the following figure:
Expand All @@ -45,7 +45,7 @@ The network configuration is illustrated in the following figure:

Note that for simplicity, only one edge cluster is represented.

Additionally, you can use Nephio to change the capacity requirement for the UPF and SMF NFs and see how the free5gc
Additionally, you can use Nephio to change the capacity requirement for the UPF and SMF NFs and see how the free5GC
operator translates that into increased memory and CPU requirements for the underlying workload.

To perform these exercises, you will need:
Expand All @@ -54,7 +54,7 @@ To perform these exercises, you will need:
- Access to the Nephio UI as described in the installation guide

Access to Gitea, used in the demo environment as the Git provider, is optional. Later in the exercises, you will also
access the free5gc Web UI.
access the free5GC Web UI.

## Step 1: Create the Regional cluster

Expand Down Expand Up @@ -426,7 +426,7 @@ rawtopology.topo.nephio.org/nephio created

## Step 4: Deploy free5GC Control Plane Functions

While the Edge clusters are deploying (which will take 5-10 minutes), you can install the free5gc functions other than
While the Edge clusters are deploying (which will take 5-10 minutes), you can install the free5GC functions other than
SMF, AMF, and UPF. For this, you will use the Regional cluster. Since these are all installed with a single package, you
can use the UI to pick the `free5gc-cp` package from the `free5gc-packages` repository and clone it to the `regional`
repository (you could have also used the CLI).
Expand All @@ -446,7 +446,7 @@ click "Propose", and then "Approve".

![Install free5gc - Step 6](/static/images/user-guides/free5gc-cp-6.png)

Shortly thereafter, you should see free5gc-cp in the cluster namespace:
Shortly thereafter, you should see free5GC-cp in the cluster namespace:

```bash
kubectl get ns --context regional-admin@regional
Expand Down Expand Up @@ -543,7 +543,7 @@ packagevariantset.config.porch.kpt.dev/free5gc-operator created

## Step 6: Check free5GC Operator Deployment

Within five minutes of applying the free5gc Operator YAML file, you should see `free5gc` namespaces on your regional and
Within five minutes of applying the free5GC Operator YAML file, you should see `free5gc` namespaces on your regional and
edge clusters:

```bash
Expand Down

0 comments on commit 0729094

Please sign in to comment.