From a2ba0c1503d56110084123591c8ff52f964bcd52 Mon Sep 17 00:00:00 2001 From: Mengxin Liu Date: Fri, 13 May 2022 16:09:01 +0800 Subject: [PATCH] release 1.9.3 --- CHANGELOG.md | 6 +++++- dist/images/Dockerfile | 2 +- dist/images/install.sh | 2 +- dist/images/ovn-ic-db-docker.sh | 2 +- .../images/update/{1.8.3-1.9.2.sh => 1.8.3-1.9.3.sh} | 2 +- docs/cluster-interconnection.md | 12 ++++++------ docs/install.md | 2 +- docs/kube-ovn-cilium.svg | 2 +- docs/vpc.md | 4 ++-- yamls/kube-ovn-dual-stack.yaml | 10 +++++----- yamls/kube-ovn-ipv6.yaml | 10 +++++----- yamls/kube-ovn.yaml | 10 +++++----- yamls/ovn-dpdk.yaml | 2 +- yamls/ovn-ha.yaml | 4 ++-- yamls/ovn.yaml | 4 ++-- yamls/speaker.yaml | 2 +- yamls/webhook.yaml | 2 +- 17 files changed, 41 insertions(+), 37 deletions(-) rename dist/images/update/{1.8.3-1.9.2.sh => 1.8.3-1.9.3.sh} (99%) diff --git a/CHANGELOG.md b/CHANGELOG.md index e95ec6c8a10..546c596e6c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,15 @@ # CHANGELOG -## 1.9.3 -- 2022/05/09 +## 1.9.3 -- 2022/05/13 ### Enhancement - optimize IPAM initialization +- reduce ovs-ovn restart downtime +- optimize node port-group check +- optimize ovs request in cni ### Bugfix - delete ipam record and static route when gc lsp - fix: ovs trace flow always ends with controller action +- fix defunct ovn-nbctl daemon ## 1.9.2 -- 2022/04/25 diff --git a/dist/images/Dockerfile b/dist/images/Dockerfile index 1a03629883c..091625fb688 100644 --- a/dist/images/Dockerfile +++ b/dist/images/Dockerfile @@ -1,5 +1,5 @@ # syntax = docker/dockerfile:experimental -FROM kubeovn/kube-ovn-base:v1.9.2 +FROM kubeovn/kube-ovn-base:v1.9.3 COPY *.sh /kube-ovn/ COPY kubectl-ko /kube-ovn/kubectl-ko diff --git a/dist/images/install.sh b/dist/images/install.sh index f2cf0a1ad25..f7d275f985f 100755 --- a/dist/images/install.sh +++ b/dist/images/install.sh @@ -21,7 +21,7 @@ CNI_CONF_DIR="/etc/cni/net.d" CNI_BIN_DIR="/opt/cni/bin" REGISTRY="kubeovn" -VERSION="v1.9.2" +VERSION="v1.9.3" IMAGE_PULL_POLICY="IfNotPresent" POD_CIDR="10.16.0.0/16" # Do NOT overlap with NODE/SVC/JOIN CIDR POD_GATEWAY="10.16.0.1" diff --git a/dist/images/ovn-ic-db-docker.sh b/dist/images/ovn-ic-db-docker.sh index 0fe903b70b0..438ac99e4cd 100644 --- a/dist/images/ovn-ic-db-docker.sh +++ b/dist/images/ovn-ic-db-docker.sh @@ -1 +1 @@ -docker run -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.9.2 bash start-ic-db.sh +docker run -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.9.3 bash start-ic-db.sh diff --git a/dist/images/update/1.8.3-1.9.2.sh b/dist/images/update/1.8.3-1.9.3.sh similarity index 99% rename from dist/images/update/1.8.3-1.9.2.sh rename to dist/images/update/1.8.3-1.9.3.sh index 91862c24cb9..1a7455b0aca 100755 --- a/dist/images/update/1.8.3-1.9.2.sh +++ b/dist/images/update/1.8.3-1.9.3.sh @@ -1,7 +1,7 @@ #!/bin/bash set -eo pipefail -IMAGE=kubeovn/kube-ovn:v1.9.2 +IMAGE=kubeovn/kube-ovn:v1.9.3 echo "[Step 0/8] Update CRD" cat < kube-ovn-crd-1.9.yaml diff --git a/docs/cluster-interconnection.md b/docs/cluster-interconnection.md index 42643204f40..883c5094ef7 100644 --- a/docs/cluster-interconnection.md +++ b/docs/cluster-interconnection.md @@ -13,12 +13,12 @@ only L3 connectivity for gateway nodes is required. ## Auto Route Step 1. Run Interconnection Controller in a region that can be accessed by other cluster ```bash -docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.9.2 bash start-ic-db.sh +docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.9.3 bash start-ic-db.sh ``` ​ If `containerd` replaces `docker` then the command is as follows: ```shell -ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" docker.io/kubeovn/kube-ovn:v1.9.2 ovn-ic-db bash start-ic-db.sh +ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" docker.io/kubeovn/kube-ovn:v1.9.3 ovn-ic-db bash start-ic-db.sh ``` 2. Create `ovn-ic-config` ConfigMap in each cluster `kube-system` namespace. Edit and apply the yaml below in each cluster. @@ -160,25 +160,25 @@ kubectl ko nbctl lr-route-add ovn-cluster 10.16.0.0/24 169.254.100.79 `LOCALIP` is the IP of the node on which the container will run. For the leader, `LOCALIP` is its own IP. ```bash -docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn -e LOCAL_IP="LEADERIP" -e NODE_IPS="IP1,IP2,IP3" kubeovn/kube-ovn:v1.9.2 bash start-ic-db.sh +docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn -e LOCAL_IP="LEADERIP" -e NODE_IPS="IP1,IP2,IP3" kubeovn/kube-ovn:v1.9.3 bash start-ic-db.sh ``` ​ If `containerd` replaces `docker` then the command is as follows: ```shell -ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" --env="NODE_IPS="IP1,IP2,IP3"" --env="LOCAL_IP="LEADERIP"" docker.io/kubeovn/kube-ovn:v1.9.2 ovn-ic-db bash start-ic-db.sh +ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" --env="NODE_IPS="IP1,IP2,IP3"" --env="LOCAL_IP="LEADERIP"" docker.io/kubeovn/kube-ovn:v1.9.3 ovn-ic-db bash start-ic-db.sh ``` 2. Run the follower Interconnection Controller in the same region. ```bash -docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn -e LOCAL_IP="LOCALIP" -e NODE_IPS="IP1,IP2,IP3" -e LEADER_IP="LEADERIP" kubeovn/kube-ovn:v1.9.2 bash start-ic-db.sh +docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn -e LOCAL_IP="LOCALIP" -e NODE_IPS="IP1,IP2,IP3" -e LEADER_IP="LEADERIP" kubeovn/kube-ovn:v1.9.3 bash start-ic-db.sh ``` ​ If `containerd` replaces `docker` then the command is as follows: ```shell -ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" --env="NODE_IPS="IP1,IP2,IP3"" --env="LOCAL_IP="LEADERIP"" --env="NODE_IPS="IP1,IP2,IP3"" docker.io/kubeovn/kube-ovn:v1.9.2 ovn-ic-db bash start-ic-db.sh +ctr -n k8s.io run -d --net-host --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" --env="NODE_IPS="IP1,IP2,IP3"" --env="LOCAL_IP="LEADERIP"" --env="NODE_IPS="IP1,IP2,IP3"" docker.io/kubeovn/kube-ovn:v1.9.3 ovn-ic-db bash start-ic-db.sh ``` 3. Create `ic-config` ConfigMap in each cluster as follows. diff --git a/docs/install.md b/docs/install.md index c142115dd26..83260980561 100644 --- a/docs/install.md +++ b/docs/install.md @@ -39,7 +39,7 @@ If you want to try the latest developing Kube-OVN, try the script below: JOIN_CIDR="100.64.0.0/16" # Subnet CIDR used for connectivity between nodes and Pods, Do NOT overlap with NODE/POD/SVC CIDR LABEL="node-role.kubernetes.io/master" # The node label to deploy OVN DB IFACE="" # The nic to support container network can be a nic name or a group of regex separated by comma e.g. `IFACE=enp6s0f0,eth.*`, if empty will use the nic that the default route use - VERSION="v1.9.2" + VERSION="v1.9.3" ``` This basic setup works for default overlay network. If you are using default underlay/vlan network, please refer [Vlan/Underlay Support](vlan.md). diff --git a/docs/kube-ovn-cilium.svg b/docs/kube-ovn-cilium.svg index f737f203c27..cd65a3ef5d8 100644 --- a/docs/kube-ovn-cilium.svg +++ b/docs/kube-ovn-cilium.svg @@ -40,4 +40,4 @@ - \ No newline at end of file + diff --git a/docs/vpc.md b/docs/vpc.md index ec086080e01..5e7e359a620 100644 --- a/docs/vpc.md +++ b/docs/vpc.md @@ -128,7 +128,7 @@ metadata: name: ovn-vpc-nat-gw-config namespace: kube-system data: - image: 'kubeovn/vpc-nat-gateway:v1.9.2' # Docker image for vpc nat gateway + image: 'kubeovn/vpc-nat-gateway:v1.9.3' # Docker image for vpc nat gateway enable-vpc-nat-gw: true # 'true' for enable, 'false' for disable nic: eth1 # The nic that connect to underlay network, use as the 'master' for macvlan ``` @@ -190,7 +190,7 @@ Allow external network to access services in custom VPCs. 1. Install Multus CNI and macvlan CNI. -2. Pull docker image `kubeovn/vpc-nat-gateway:v1.9.2`. +2. Pull docker image `kubeovn/vpc-nat-gateway:v1.9.3`. 3. Create an attachment network using macvlan. Replace `eth0` on necessary. diff --git a/yamls/kube-ovn-dual-stack.yaml b/yamls/kube-ovn-dual-stack.yaml index cef7ec2b76f..48d6ec59d0f 100644 --- a/yamls/kube-ovn-dual-stack.yaml +++ b/yamls/kube-ovn-dual-stack.yaml @@ -41,7 +41,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-controller - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent args: - /kube-ovn/start-controller.sh @@ -146,7 +146,7 @@ spec: hostPID: true initContainers: - name: install-cni - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/install-cni.sh"] securityContext: @@ -157,7 +157,7 @@ spec: name: cni-bin containers: - name: cni-server - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: - bash @@ -277,7 +277,7 @@ spec: hostPID: true containers: - name: pinger - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" command: - /kube-ovn/kube-ovn-pinger - --external-address=114.114.114.114,2400:3200::1 @@ -409,7 +409,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-monitor - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-ovn-monitor.sh"] securityContext: diff --git a/yamls/kube-ovn-ipv6.yaml b/yamls/kube-ovn-ipv6.yaml index bd184be90be..3a99b631bef 100644 --- a/yamls/kube-ovn-ipv6.yaml +++ b/yamls/kube-ovn-ipv6.yaml @@ -41,7 +41,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-controller - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent args: - /kube-ovn/start-controller.sh @@ -132,7 +132,7 @@ spec: hostPID: true initContainers: - name: install-cni - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/install-cni.sh"] securityContext: @@ -143,7 +143,7 @@ spec: name: cni-bin containers: - name: cni-server - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: - bash @@ -249,7 +249,7 @@ spec: hostPID: true containers: - name: pinger - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" command: - /kube-ovn/kube-ovn-pinger - --external-address=2400:3200::1 @@ -376,7 +376,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-monitor - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-ovn-monitor.sh"] securityContext: diff --git a/yamls/kube-ovn.yaml b/yamls/kube-ovn.yaml index 51132e87a5b..3d5b62f8be3 100644 --- a/yamls/kube-ovn.yaml +++ b/yamls/kube-ovn.yaml @@ -41,7 +41,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-controller - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent args: - /kube-ovn/start-controller.sh @@ -144,7 +144,7 @@ spec: hostPID: true initContainers: - name: install-cni - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/install-cni.sh"] securityContext: @@ -155,7 +155,7 @@ spec: name: cni-bin containers: - name: cni-server - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: - bash @@ -275,7 +275,7 @@ spec: hostPID: true containers: - name: pinger - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" command: - /kube-ovn/kube-ovn-pinger - --external-address=114.114.114.114 @@ -407,7 +407,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-monitor - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-ovn-monitor.sh"] securityContext: diff --git a/yamls/ovn-dpdk.yaml b/yamls/ovn-dpdk.yaml index 209d295b45b..4fd86489e92 100644 --- a/yamls/ovn-dpdk.yaml +++ b/yamls/ovn-dpdk.yaml @@ -224,7 +224,7 @@ spec: hostNetwork: true containers: - name: ovn-central - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-db.sh"] securityContext: diff --git a/yamls/ovn-ha.yaml b/yamls/ovn-ha.yaml index 7c597333f14..55989a9711f 100644 --- a/yamls/ovn-ha.yaml +++ b/yamls/ovn-ha.yaml @@ -243,7 +243,7 @@ spec: hostNetwork: true containers: - name: ovn-central - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-db.sh"] securityContext: @@ -371,7 +371,7 @@ spec: hostPID: true containers: - name: openvswitch - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-ovs.sh"] securityContext: diff --git a/yamls/ovn.yaml b/yamls/ovn.yaml index fadb470784b..80c1d178bec 100644 --- a/yamls/ovn.yaml +++ b/yamls/ovn.yaml @@ -254,7 +254,7 @@ spec: hostNetwork: true containers: - name: ovn-central - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-db.sh"] securityContext: @@ -387,7 +387,7 @@ spec: hostPID: true containers: - name: openvswitch - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: ["/kube-ovn/start-ovs.sh"] securityContext: diff --git a/yamls/speaker.yaml b/yamls/speaker.yaml index c2a55e3f66a..e65fe423890 100644 --- a/yamls/speaker.yaml +++ b/yamls/speaker.yaml @@ -29,7 +29,7 @@ spec: hostNetwork: true containers: - name: ovn-central - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: - /kube-ovn/kube-ovn-speaker diff --git a/yamls/webhook.yaml b/yamls/webhook.yaml index 76bc4461abd..aefde675466 100644 --- a/yamls/webhook.yaml +++ b/yamls/webhook.yaml @@ -33,7 +33,7 @@ spec: hostNetwork: true containers: - name: kube-ovn-webhook - image: "kubeovn/kube-ovn:v1.9.2" + image: "kubeovn/kube-ovn:v1.9.3" imagePullPolicy: IfNotPresent command: - /kube-ovn/kube-ovn-webhook