Skip to content

Commit

Permalink
Merge pull request #1318 from srl-labs/rn-0.39
Browse files Browse the repository at this point in the history
rn 0.39
  • Loading branch information
hellt authored Apr 11, 2023
2 parents 7134d72 + d30983d commit 2290694
Show file tree
Hide file tree
Showing 3 changed files with 103 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/htmltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ IgnoreURLs:
- https://*github.com/
- https://twitter.com/*
- mysocket.io # remove mysocket.io links until we rework to border0.com
- https://supportcenter.checkpoint.com/ # started to fail, meh.
IgnoreDirectoryMissingTrailingSlash: true
IgnoreAltMissing: true
IgnoreSSLVerify: true
Expand Down
101 changes: 101 additions & 0 deletions docs/rn/0.39.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# Release 0.39

:material-calendar: 2023-04-10 · :material-list-status: [Full Changelog](https://github.com/srl-labs/containerlab/releases)

## Partial configs for SR OS

Containerlab now supports partial configs for SR OS. This means you can now provide CLI snippets that will be added to the default config. A very useful feature when you want to add a few things to the config, and you don't want to copy the whole config to your lab. #1249

We believe this will make your lab repos cleaner and easier to maintain.

=== "Topology"
```yaml
name: sros_lab
topology:
nodes:
sros:
kind: vr-sros
startup-config: myconfig.partial.txt
```
=== "`myconfig.partial.txt`"
```
configure {
router "Base" {
static-routes {
route 192.168.200.200/32 route-type unicast {
next-hop "192.168.0.1" {
admin-state enable
}
}
}
}
}
```

The partial config can be provided as a [local file](../manual/kinds/vr-sros.md#partial-startup-config), [remote URL](../manual/kinds/vr-sros.md#remote-partial-files) or even [embedded](../manual/kinds/vr-sros.md#embedded-partial-files), yay!

Learn more about partial configs for SR OS [here](../manual/kinds/vr-sros.md#user-defined-config).

## Embedded startup-configs

The changes made for allowing SR OS to have partial configs also allowed all other nodes to enjoy embedding startup-configs into the topology file.

For example, this is a perfectly valid way to provide partial config for a Nokia SR Linux node:

```yaml
name: srl

topology:
nodes:
srl:
kind: nokia_srlinux
image: ghcr.io/nokia/srlinux:22.11.2
startup-config: |
system information location "I am embedded config"
```
## Node filtering
One of the most requested features is finally there. Users wanted to be able to deploy only a subset of nodes defined in their topology file. Usually, this was driven by the need to control the resource usage of the lab and optimize the deployment time.
Containerlab now allows users to provide a list of nodes to deploy, destroy, save, and graph commands to scope the operation to only those nodes. #1298
Check out [Node Filtering docs](../manual/node-filtering.md) for details.
## CPU and Memory setting for SR OS nodes
With [hellt/vrnetlab](https://github.com/hellt/vrnetlab/releases/tag/v0.10.1) release v0.10.1 we support setting the CPU and Memory for SR OS nodes.
Before that feature was available, the CPU and Memory were set to the default values for a particular SR OS variant. This was not ideal as requirements change over time and when resources are underprovisioned, the node may not be able to start.
Now you can set the CPU and Memory for SR OS nodes directly in the topology file:
```yaml
# distrubuted node
sr:
kind: vr-sros
type: sr-1e
license: sros22.lic
env:
CP_MEMORY: 6 # CPM MEM
CP_CPU: 4 # CPM CPU
LC_MEMORY: 6 # Line card MEM
LC_CPU: 4 # Line card CPU

# integrated
sr:
kind: vr-sros
type: sr-1
license: sros22.lic
env:
MEMORY: 6
CPU: 4
```
## RARE joins Containerlab
We are happy to announce that [RARE](../manual/kinds/rare-freertr.md) Network OS is now supported by Containerlab. RARE stands for Router for Academia, Research & Education.
## Securely connecting to labs with Border0 (experimental)
With mysocketio rebranding to border0 we had to revisit APIs for creating secured remote access to labs. This is an experimental feature and is not yet fully supported. Please see [this](../manual/published-ports.md) page for more details. #1131
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ nav:
- 5-stage Clos topology: lab-examples/templated02.md
- RARE/freeRtr: lab-examples/rare-freertr.md
- Release notes:
- "0.39": rn/0.39.md
- "0.38": rn/0.38.md
- "0.37": rn/0.37.md
- "0.36": rn/0.36.md
Expand Down

0 comments on commit 2290694

Please sign in to comment.