Skip to content

Commit de9de86

Browse files
authored
Merge pull request #73 from sighupio/develop
v1.15.0 release
2 parents a4503b3 + 050d8fa commit de9de86

17 files changed

+638
-340
lines changed

.drone.yml

+61-69
Large diffs are not rendered by default.

README.md

+7-6
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ Kubernetes Fury Networking provides the following packages:
2929

3030
| Package | Version | Description |
3131
| -------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
32-
| [calico](katalog/calico) | `3.26.1` | [Calico][calico-page] CNI Plugin. For cluster with `< 50` nodes. |
33-
| [cilium](katalog/cilium) | `1.13.3` | [Cilium][cilium-page] CNI Plugin. For cluster with `< 200` nodes. |
34-
| [tigera](katalog/tigera) | `1.30.4` | [Tigera Operator][tigera-page], a Kubernetes Operator for Calico, provides pre-configured installations for on-prem and for EKS in policy-only mode. |
32+
| [calico](katalog/calico) | `3.26.3` | [Calico][calico-page] CNI Plugin. For cluster with `< 50` nodes. |
33+
| [cilium](katalog/cilium) | `1.14.3` | [Cilium][cilium-page] CNI Plugin. For cluster with `< 200` nodes. |
34+
| [tigera](katalog/tigera) | `1.30.7` | [Tigera Operator][tigera-page], a Kubernetes Operator for Calico, provides pre-configured installations for on-prem and for EKS in policy-only mode. |
3535
| [ip-masq](katalog/ip-masq) | `2.8.0` | The `ip-masq-agent` configures iptables rules to implement IP masquerading functionality |
3636

3737
> The resources in these packages are going to be deployed in `kube-system` namespace. Except for the operator.
@@ -42,9 +42,10 @@ Click on each package to see its full documentation.
4242

4343
| Kubernetes Version | Compatibility | Notes |
4444
| ------------------ | :----------------: | --------------- |
45-
| `1.24.x` | :white_check_mark: | No known issues |
4645
| `1.25.x` | :white_check_mark: | No known issues |
4746
| `1.26.x` | :white_check_mark: | No known issues |
47+
| `1.27.x` | :white_check_mark: | No known issues |
48+
4849

4950
Check the [compatibility matrix][compatibility-matrix] for additional information on previous releases of the module.
5051

@@ -59,14 +60,14 @@ Check the [compatibility matrix][compatibility-matrix] for additional informatio
5960

6061
### Deployment
6162

62-
> ⚠️ please notice that the Calico packages is for cluster with less the 50 nodes. If your cluster has more than 50 nodes, you'll need to switch to [Calico + Typha](https://projectcalico.docs.tigera.io/archive/v3.23/getting-started/kubernetes/self-managed-onprem/onpremises#install-calico-with-kubernetes-api-datastore-more-than-50-nodes) or to the [Tigera Operator](katalog/tigera/README.md).
63+
> ⚠️ Please notice that the Calico packages is for cluster with less the 50 nodes. If your cluster has more than 50 nodes, you'll need to switch to [Calico + Typha](https://docs.tigera.io/calico/latest/getting-started/kubernetes/self-managed-onprem/onpremises) or to the [Tigera Operator](katalog/tigera/README.md).
6364
6465
1. List the packages you want to deploy and their version in a `Furyfile.yml`
6566

6667
```yaml
6768
bases:
6869
- name: networking
69-
version: "v1.14.0"
70+
version: "v1.15.0"
7071
```
7172
7273
> See `furyctl` [documentation][furyctl-repo] for additional details about `Furyfile.yml` format.

docs/COMPATIBILITY_MATRIX.md

+10-9
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
# Compatibility Matrix
22

3-
| Module Version / Kubernetes Version | 1.24.X | 1.25.X | 1.26.X |
4-
| ----------------------------------- | ------------------ | ------------------ | ------------------ |
5-
| v1.10.0 | :white_check_mark: | | |
6-
| v1.11.0 | :white_check_mark: | :white_check_mark: | |
7-
| v1.12.0 | :white_check_mark: | :white_check_mark: | |
8-
| v1.12.1 | :white_check_mark: | :white_check_mark: | |
9-
| v1.12.2 | :white_check_mark: | :white_check_mark: | |
10-
| v1.14.0 | :white_check_mark: | :white_check_mark: | :white_check_mark: |
3+
| Module Version / Kubernetes Version | 1.24.X | 1.25.X | 1.26.X | 1.27.X |
4+
| ----------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ |
5+
| v1.10.0 | :white_check_mark: | | | |
6+
| v1.11.0 | :white_check_mark: | :white_check_mark: | | |
7+
| v1.12.0 | :white_check_mark: | :white_check_mark: | | |
8+
| v1.12.1 | :white_check_mark: | :white_check_mark: | | |
9+
| v1.12.2 | :white_check_mark: | :white_check_mark: | | |
10+
| v1.14.0 | :white_check_mark: | :white_check_mark: | :white_check_mark: | |
11+
| v1.15.0 | | :white_check_mark: | :white_check_mark: | :white_check_mark: |
1112

1213

1314
:white_check_mark: Compatible
@@ -41,4 +42,4 @@
4142
| v1.8.0 | | | | | | | :x: | :x: | :x: | :x: |
4243
| v1.8.1 | | | | | | | :x: | :x: | :x: | :x: |
4344
| v1.8.2 | | | | | | | :white_check_mark: | :x: | :x: | :x: |
44-
| v1.9.0 | | | | | | | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
45+
| v1.9.0 | | | | | | | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: |

docs/releases/v1.15.0.md

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Networking Core Module Release 1.15.0
2+
3+
Welcome to the latest release of the `Networking` module of [`Kubernetes Fury Distribution`](https://github.com/sighupio/fury-distribution) maintained by team SIGHUP.
4+
5+
This minor release updates some components and adds support to Kubernetes 1.27.
6+
7+
## Component Images 🚢
8+
9+
| Component | Supported Version | Previous Version |
10+
| ----------------- | -------------------------------------------------------------------------------- | ---------------- |
11+
| `calico` | [`v3.26.3`](https://projectcalico.docs.tigera.io/archive/v3.26/release-notes/) | `v3.26.1` |
12+
| `cilium` | [`v1.14.3`](https://github.com/cilium/cilium/releases/tag/v1.14.3) | `v1.13.1` |
13+
| `ip-masq` | [`v2.8.0`](https://github.com/kubernetes-sigs/ip-masq-agent/releases/tag/v2.5.0) | No update |
14+
| `tigera-operator` | [`v1.30.7`](https://github.com/tigera/operator/releases/tag/v1.30.7) | `v1.30.4` |
15+
16+
> Please refer the individual release notes to get detailed information on each release.
17+
18+
## Update Guide 🦮
19+
20+
### Process
21+
22+
If you are using Cilium, read the steps [below](#cilium-upgrade) before proceeding.
23+
24+
1. Just deploy as usual:
25+
26+
```bash
27+
kustomize build katalog/calico | kubectl apply -f -
28+
# OR
29+
kustomize build katalog/tigera/on-prem | kubectl apply -f -
30+
# OR
31+
kustomize build katalog/cilium | kubectl apply -f -
32+
```
33+
34+
#### Cilium upgrade
35+
Cilium suggested path expect a pre-flight check to be run before any upgrade.
36+
37+
1. Create the resources for the check
38+
```bash
39+
kubectl create -f katalog/cilium/tasks/preflight.yaml
40+
```
41+
42+
2. Make sure that the number of READY pods is the same as the number of RUNNING Cilium pods.
43+
```text
44+
kubectl get daemonset -n kube-system | sed -n '1p;/cilium/p'
45+
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
46+
cilium 2 2 2 2 2 <none> 1h20m
47+
cilium-pre-flight-check 2 2 2 2 2 <none> 7m15s
48+
```
49+
50+
3. Once the number of READY pods is equal, make sure the Cilium pre-flight deployment is also marked as READY 1/1.
51+
If it shows READY 0/1, consult the [CNP Validation](https://docs.cilium.io/en/stable/operations/upgrade/#cnp-validation) section in the official docs and resolve issues with the deployment before continuing with the upgrade.
52+
```text
53+
kubectl get deployment -n kube-system cilium-pre-flight-check -w
54+
NAME READY UP-TO-DATE AVAILABLE AGE
55+
cilium-pre-flight-check 1/1 1 0 12s
56+
```
57+
58+
4. Once the number of READY for the preflight DaemonSet is the same as the number of cilium pods running and the preflight Deployment is marked as READY 1/1 you can delete the cilium-preflight and proceed with the upgrade.
59+
```bash
60+
kubectl delete -f cilium-preflight.yaml
61+
```
62+
63+
64+
If you are upgrading from previous versions, please refer to the [`v1.14.0` release notes](https://github.com/sighupio/fury-kubernetes-networking/releases/tag/v1.14.0).

katalog/calico/MAINTENANCE.md

+3-5
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@ Compare the `deploy.yaml` file with the downloaded `calico-${CALICO_VERSION}` fi
2020
3. Update the `kustomization.yaml` file with the right image versions.
2121

2222
```bash
23-
export CALICO_IMAGE_TAG=v3.26.1
23+
export CALICO_IMAGE_TAG=v3.26.3
2424
kustomize edit set image docker.io/calico/kube-controllers=registry.sighup.io/fury/calico/kube-controllers:${CALICO_IMAGE_TAG}
2525
kustomize edit set image docker.io/calico/cni=registry.sighup.io/fury/calico/cni:${CALICO_IMAGE_TAG}
2626
kustomize edit set image docker.io/calico/node=registry.sighup.io/fury/calico/node:${CALICO_IMAGE_TAG}
27-
# Not present anymore in 3.23:
28-
# kustomize edit set image docker.io/calico/pod2daemon-flexvol=registry.sighup.io/fury/calico/pod2daemon-flexvol:${CALICO_IMAGE_TAG}
2927
```
3028

3129
> ⚠️ Remember to check if images have been added to or dropped from upstream.
@@ -36,12 +34,12 @@ kustomize edit set image docker.io/calico/node=registry.sighup.io/fury/calico/no
3634

3735
The resources needed to provide monitoring features are not included in the default upstream manifests. There are some additional steps to perform.
3836

39-
See <https://projectcalico.docs.tigera.io/archive/v3.23/maintenance/monitor/monitor-component-metrics> for details. Note that we are adding an environment variable to the DaemonSet instead of modifing the `default` instance of the `felixconfigurations.crd.projectcalico.org` CRD as the docs say. Modifing the CRD is not possible using Kustomize patches.
37+
See <https://docs.tigera.io/calico/latest/operations/monitor/monitor-component-metrics> for details. Note that we are adding an environment variable to the DaemonSet instead of modifing the `default` instance of the `felixconfigurations.crd.projectcalico.org` CRD as the docs say. Modifing the CRD is not possible using Kustomize patches.
4038

4139
1. Download the dashboard from upstream:
4240

4341
```bash
44-
export CALICO_VERSION=3.26.1
42+
export CALICO_VERSION=3.26.3
4543
# ⚠️ Assuming $PWD == root of the project
4644
# We take the `felix-dashboard.json` from the downloaded yaml, we are not deploying `typha`, so we don't need its dashboard.
4745
curl -L https://raw.githubusercontent.com/projectcalico/calico/v${CALICO_VERSION}/manifests/grafana-dashboards.yaml | yq '.data["felix-dashboard.json"]' | sed 's/calico-demo-prometheus/prometheus/g' | jq > ./monitoring/dashboards/felix-dashboard.json

katalog/calico/README.md

+9-8
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Calico supports a broad range of platforms including Kubernetes, OpenShift, Dock
77

88
> For more information about Calico refer to [calico documentation][calico-documentation]
99
10+
## Components and features
1011
The deployment of Calico consists of a daemon set running on every node (including the control-plane) and a controller that implements:
1112

1213
- *policy controller* watches network policies and programs Calico policies.
@@ -20,18 +21,18 @@ The deployment of Calico consists of a daemon set running on every node (includi
2021
## Image repository and tag
2122

2223
- calico images:
23-
- `calico/kube-controllers:v3.25.0`.
24-
- `calico/cni:v3.25.0`.
25-
- `calico/node:v3.25.0`.
24+
- `calico/kube-controllers:v3.26.3`.
25+
- `calico/cni:v3.26.3`.
26+
- `calico/node:v3.26.3`.
2627
- calico repositories:
27-
- [https://github.com/projectcalico/kube-controllers](https://github.com/projectcalico/kube-controllers).
28-
- [https://github.com/projectcalico/cni-plugin](https://github.com/projectcalico/cni-plugin).
29-
- [https://github.com/projectcalico/node](https://github.com/projectcalico/node).
28+
- [https://github.com/projectcalico/kube-controllers](https://github.com/projectcalico/calico/tree/master/kube-controllers).
29+
- [https://github.com/projectcalico/cni-plugin](https://github.com/projectcalico/calico/tree/master/cni-plugin).
30+
- [https://github.com/projectcalico/node](https://github.com/projectcalico/calico/tree/master/node).
3031

3132
## Requirements
3233

33-
- Tested with Kubernetes >= `1.23.X`.
34-
- Tested with Kustomize >= `v3.3.X`.
34+
- Tested with Kubernetes >= `1.25.X`.
35+
- Tested with Kustomize >= `v3.5.3`.
3536
- Prometheus Operator, optional if you want to have metrics.
3637

3738
## Configuration

katalog/calico/deploy.yaml

+5-5
Original file line numberDiff line numberDiff line change
@@ -4643,7 +4643,7 @@ spec:
46434643
# It can be deleted if this is a fresh installation, or if you have already
46444644
# upgraded to use calico-ipam.
46454645
- name: upgrade-ipam
4646-
image: docker.io/calico/cni:v3.26.1
4646+
image: docker.io/calico/cni:v3.26.3
46474647
imagePullPolicy: IfNotPresent
46484648
command: ["/opt/cni/bin/calico-ipam", "-upgrade"]
46494649
envFrom:
@@ -4671,7 +4671,7 @@ spec:
46714671
# This container installs the CNI binaries
46724672
# and CNI network config file on each node.
46734673
- name: install-cni
4674-
image: docker.io/calico/cni:v3.26.1
4674+
image: docker.io/calico/cni:v3.26.3
46754675
imagePullPolicy: IfNotPresent
46764676
command: ["/opt/cni/bin/install"]
46774677
envFrom:
@@ -4714,7 +4714,7 @@ spec:
47144714
# i.e. bpf at /sys/fs/bpf and cgroup2 at /run/calico/cgroup. Calico-node initialisation is executed
47154715
# in best effort fashion, i.e. no failure for errors, to not disrupt pod creation in iptable mode.
47164716
- name: "mount-bpffs"
4717-
image: docker.io/calico/node:v3.26.1
4717+
image: docker.io/calico/node:v3.26.3
47184718
imagePullPolicy: IfNotPresent
47194719
command: ["calico-node", "-init", "-best-effort"]
47204720
volumeMounts:
@@ -4740,7 +4740,7 @@ spec:
47404740
# container programs network policy and routes on each
47414741
# host.
47424742
- name: calico-node
4743-
image: docker.io/calico/node:v3.26.1
4743+
image: docker.io/calico/node:v3.26.3
47444744
imagePullPolicy: IfNotPresent
47454745
envFrom:
47464746
- configMapRef:
@@ -4957,7 +4957,7 @@ spec:
49574957
priorityClassName: system-cluster-critical
49584958
containers:
49594959
- name: calico-kube-controllers
4960-
image: docker.io/calico/kube-controllers:v3.26.1
4960+
image: docker.io/calico/kube-controllers:v3.26.3
49614961
imagePullPolicy: IfNotPresent
49624962
env:
49634963
# Choose which controllers to run.

katalog/calico/kustomization.yaml

+3-5
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,13 @@ namespace: kube-system
1010
images:
1111
- name: docker.io/calico/cni
1212
newName: registry.sighup.io/fury/calico/cni
13-
newTag: v3.26.1
13+
newTag: v3.26.3
1414
- name: docker.io/calico/kube-controllers
1515
newName: registry.sighup.io/fury/calico/kube-controllers
16-
newTag: v3.26.1
16+
newTag: v3.26.3
1717
- name: docker.io/calico/node
1818
newName: registry.sighup.io/fury/calico/node
19-
newTag: v3.26.1
20-
- name: docker.io/calico/pod2daemon-flexvol
21-
newName: registry.sighup.io/fury/calico/pod2daemon-flexvol
19+
newTag: v3.26.3
2220

2321
# Resources needed for Monitoring
2422
resources:

0 commit comments

Comments
 (0)