-
Notifications
You must be signed in to change notification settings - Fork 276
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1318 from srl-labs/rn-0.39
rn 0.39
- Loading branch information
Showing
3 changed files
with
103 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters