Release v1.5.0
2022 Aug 01
Table of contents
NSM v1.5.0 is released via a set of example use cases.
Kubernetes Compatibility
NSM v1.5.0 has been successfully integration tested with Kubernetes versions:
- v1.24.0
- v1.23.0
- v1.22.1
- v1.21.1
- v1.20.7
- v1.19.11
- v1.18.15
And also with Calico CNI plugin.
Public Cloud Capability
NSM v1.5.0 has been tested on
Changes since v1.4.0
Added support for VMs/Bare Metal external clients
Developed an application to allow for non k8s clients connect to NSM infrastructure from outside.
Distributed DNS over vL3 network
When vL3 NSE starts it creates a new DNS server that knowns each connected to that vL3 NSE netwrok service mesh clients.
By default planned to use the next domain scheme: {{ .workloadName }}.{{ .networkService}}.{{ .clusterName }}
.
The domain scheme planned to be configurable via go-template
. If the DNS server dont known host then it fanouts the question to other vL3 NSE in the current vL3 network.
NSM+Application Service Mesh
Added Consul mesh as a service in NSM vL3 netwrok (extension case) integration.
vL3 Improvements
Improved next aspects for the vL3 networks:
- Used uniform MTU for whole vL3 network. More Details
- Shifted vL3 to using one Network Service for connecting clients and a separate one for vL3 NSEs to interconnect with each other
- Shifted vL3 to using ClusterProperty for NSCs to select their candidates (including with scale from zero).
Webhook Improvements
Improved NSM admission webhook and added support for all container based k8s resources
OPA integration for connection monitor service
Added OPA policies for connection monitor service.
See more details:
Re-usuable workflows
Recently GitHub added a new kind of workflow that can be reused from different repos.
We integrated this fewature into sdk-.*
/cmd-.*
NSM repositories!
Now to modify multi-repo workflows we able simply update only base repo with reusable workflows!
Get rid of coredns sidecar
Previously we used coredns sidecar for external clients to provide capability to setup DNS.
In this release we simplified this approach and we get rid of using coredns sidecar See more details
It means that NSM is still providing DNS as it doing in previous releases but now it becomes more lightweight in term of sidecars (now we’re adding one sidecar insteadof two sidecars how it is going in v1.4.0 or less).
Stability improvements / bug fixes
Resolved bugs:
- https://github.com/networkservicemesh/deployments-k8s/issues/6305
- https://github.com/networkservicemesh/sdk/issues/1157
- https://github.com/networkservicemesh/sdk/pull/1316
- https://github.com/networkservicemesh/sdk/pull/1318
- https://github.com/networkservicemesh/cmd-nsmgr/issues/510
- https://github.com/networkservicemesh/deployments-k8s/issues/6645
- https://github.com/networkservicemesh/deployments-k8s/issues/6488
- https://github.com/networkservicemesh/sdk/pull/1312
- https://github.com/networkservicemesh/cmd-forwarder-vpp/issues/664
- https://github.com/networkservicemesh/cmd-nse-simple-vl3-docker/issues/6
- https://github.com/networkservicemesh/cmd-exclude-prefixes-k8s/runs/7393153553?check_suite_focus=true
- https://github.com/networkservicemesh/sdk/issues/1253
- https://github.com/networkservicemesh/cmd-forwarder-vpp/issues/656
Table of contents