From 891b2811c77c2bc072f9f93ee51f7411831aa493 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Tue, 1 Apr 2025 18:29:34 +0300 Subject: [PATCH] Release 2.1.0 New features: - Support separate OSD cluster network - [osd_cluster_network](https://vitastor.io/docs/config/network.html#osd_cluster_network) and, in general, multiple OSD networks, including RDMA - Add an alternative RDMA implementation via RDMA-CM - [use_rdmacm](https://vitastor.io/docs/config/network.html#use_rdmacm), required for iWARP and, maybe, for some IB setups (but not for RoCE) - Change default PG behaviour to wait for all "up" OSDs to be connected before starting it. The old behaviour may be returned by enabling a new [allow_net_split](https://vitastor.io/docs/config/osd.html#allow_net_split) option. - Add a patch for QEMU 9.2 Bug fixes: - Fix incorrect "has_xxx" PG state names in ls-pgs - Fix possible QEMU crashes after detaching of Vitastor disks (and update all QEMU builds in Vitastor repos) - Fix clients sometimes spamming OSDs with infinite reconnections when some PGs are offline - Fall back to TCP on RDMA connection failures - Add missing logging of RDMA ibv_modify_qp() errors - Add a minimum interval for etcd_state_client to reload state --- CMakeLists.txt | 2 +- csi/Makefile | 2 +- csi/deploy/004-csi-nodeplugin.yaml | 2 +- csi/deploy/007-csi-provisioner.yaml | 2 +- csi/src/config.go | 2 +- debian/changelog | 2 +- docker/Makefile | 2 +- docker/etc/vitastor/docker.conf | 2 +- docs/installation/docker.en.md | 4 ++-- docs/installation/docker.ru.md | 4 ++-- mon/package.json | 4 ++-- node-binding/package.json | 2 +- patches/cinder-vitastor.py | 2 +- rpm/vitastor-el7.spec | 4 ++-- rpm/vitastor-el8.spec | 4 ++-- rpm/vitastor-el9.spec | 4 ++-- src/CMakeLists.txt | 2 +- src/client/vitastor.pc.in | 2 +- 18 files changed, 24 insertions(+), 24 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3276af45..f662f688 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,6 @@ cmake_minimum_required(VERSION 2.8.12) project(vitastor) -set(VITASTOR_VERSION "2.0.0") +set(VITASTOR_VERSION "2.1.0") add_subdirectory(src) diff --git a/csi/Makefile b/csi/Makefile index f2405e12..0f005f98 100644 --- a/csi/Makefile +++ b/csi/Makefile @@ -1,4 +1,4 @@ -VITASTOR_VERSION ?= v2.0.0 +VITASTOR_VERSION ?= v2.1.0 all: build push diff --git a/csi/deploy/004-csi-nodeplugin.yaml b/csi/deploy/004-csi-nodeplugin.yaml index 9213d941..03c496a4 100644 --- a/csi/deploy/004-csi-nodeplugin.yaml +++ b/csi/deploy/004-csi-nodeplugin.yaml @@ -49,7 +49,7 @@ spec: capabilities: add: ["SYS_ADMIN"] allowPrivilegeEscalation: true - image: vitalif/vitastor-csi:v2.0.0 + image: vitalif/vitastor-csi:v2.1.0 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/deploy/007-csi-provisioner.yaml b/csi/deploy/007-csi-provisioner.yaml index e3d3d32a..f564ed33 100644 --- a/csi/deploy/007-csi-provisioner.yaml +++ b/csi/deploy/007-csi-provisioner.yaml @@ -121,7 +121,7 @@ spec: privileged: true capabilities: add: ["SYS_ADMIN"] - image: vitalif/vitastor-csi:v2.0.0 + image: vitalif/vitastor-csi:v2.1.0 args: - "--node=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" diff --git a/csi/src/config.go b/csi/src/config.go index 2c456709..003466d9 100644 --- a/csi/src/config.go +++ b/csi/src/config.go @@ -5,7 +5,7 @@ package vitastor const ( vitastorCSIDriverName = "csi.vitastor.io" - vitastorCSIDriverVersion = "2.0.0" + vitastorCSIDriverVersion = "2.1.0" ) // Config struct fills the parameters of request or user input diff --git a/debian/changelog b/debian/changelog index 53497ebc..ee54bb65 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -vitastor (2.0.0-1) unstable; urgency=medium +vitastor (2.1.0-1) unstable; urgency=medium * Bugfixes diff --git a/docker/Makefile b/docker/Makefile index 8f71f197..521b4280 100644 --- a/docker/Makefile +++ b/docker/Makefile @@ -1,4 +1,4 @@ -VITASTOR_VERSION ?= v2.0.0 +VITASTOR_VERSION ?= v2.1.0 all: build push diff --git a/docker/etc/vitastor/docker.conf b/docker/etc/vitastor/docker.conf index 87c4f043..e34f26a2 100644 --- a/docker/etc/vitastor/docker.conf +++ b/docker/etc/vitastor/docker.conf @@ -4,7 +4,7 @@ # # Desired Vitastor version -VITASTOR_VERSION=v2.0.0 +VITASTOR_VERSION=v2.1.0 # Additional arguments for all containers # For example, you may want to specify a custom logging driver here diff --git a/docs/installation/docker.en.md b/docs/installation/docker.en.md index 73f7dc49..e79423f9 100644 --- a/docs/installation/docker.en.md +++ b/docs/installation/docker.en.md @@ -26,9 +26,9 @@ at Vitastor Kubernetes operator: https://github.com/Antilles7227/vitastor-operat The instruction is very simple. 1. Download a Docker image of the desired version: \ - `docker pull vitastor:2.0.0` + `docker pull vitastor:2.1.0` 2. Install scripts to the host system: \ - `docker run --rm -it -v /etc:/host-etc -v /usr/bin:/host-bin vitastor:2.0.0 install.sh` + `docker run --rm -it -v /etc:/host-etc -v /usr/bin:/host-bin vitastor:2.1.0 install.sh` 3. Reload udev rules: \ `udevadm control --reload-rules` diff --git a/docs/installation/docker.ru.md b/docs/installation/docker.ru.md index 059ac935..9149e890 100644 --- a/docs/installation/docker.ru.md +++ b/docs/installation/docker.ru.md @@ -25,9 +25,9 @@ Vitastor можно установить в Docker/Podman. При этом etcd, Инструкция по установке максимально простая. 1. Скачайте Docker-образ желаемой версии: \ - `docker pull vitastor:2.0.0` + `docker pull vitastor:2.1.0` 2. Установите скрипты в хост-систему командой: \ - `docker run --rm -it -v /etc:/host-etc -v /usr/bin:/host-bin vitastor:2.0.0 install.sh` + `docker run --rm -it -v /etc:/host-etc -v /usr/bin:/host-bin vitastor:2.1.0 install.sh` 3. Перезагрузите правила udev: \ `udevadm control --reload-rules` diff --git a/mon/package.json b/mon/package.json index e90deb9f..337247c0 100644 --- a/mon/package.json +++ b/mon/package.json @@ -1,6 +1,6 @@ { "name": "vitastor-mon", - "version": "2.0.0", + "version": "2.1.0", "description": "Vitastor SDS monitor service", "main": "mon-main.js", "scripts": { @@ -19,6 +19,6 @@ "eslint-plugin-node": "^11.1.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=12.1.0" } } diff --git a/node-binding/package.json b/node-binding/package.json index 739c9d09..4ceaa99f 100644 --- a/node-binding/package.json +++ b/node-binding/package.json @@ -1,6 +1,6 @@ { "name": "vitastor", - "version": "2.0.0", + "version": "2.1.0", "description": "Low-level native bindings to Vitastor client library", "main": "index.js", "keywords": [ diff --git a/patches/cinder-vitastor.py b/patches/cinder-vitastor.py index d772a581..a8efca9d 100644 --- a/patches/cinder-vitastor.py +++ b/patches/cinder-vitastor.py @@ -50,7 +50,7 @@ from cinder.volume import configuration from cinder.volume import driver from cinder.volume import volume_utils -VITASTOR_VERSION = '2.0.0' +VITASTOR_VERSION = '2.1.0' LOG = logging.getLogger(__name__) diff --git a/rpm/vitastor-el7.spec b/rpm/vitastor-el7.spec index 7d1ff3d0..600b8410 100644 --- a/rpm/vitastor-el7.spec +++ b/rpm/vitastor-el7.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 2.0.0 +Version: 2.1.0 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-2.0.0.el7.tar.gz +Source0: vitastor-2.1.0.el7.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/rpm/vitastor-el8.spec b/rpm/vitastor-el8.spec index c04061b5..759c0a26 100644 --- a/rpm/vitastor-el8.spec +++ b/rpm/vitastor-el8.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 2.0.0 +Version: 2.1.0 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-2.0.0.el8.tar.gz +Source0: vitastor-2.1.0.el8.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/rpm/vitastor-el9.spec b/rpm/vitastor-el9.spec index a39d8e1b..a89ded3c 100644 --- a/rpm/vitastor-el9.spec +++ b/rpm/vitastor-el9.spec @@ -1,11 +1,11 @@ Name: vitastor -Version: 2.0.0 +Version: 2.1.0 Release: 1%{?dist} Summary: Vitastor, a fast software-defined clustered block storage License: Vitastor Network Public License 1.1 URL: https://vitastor.io/ -Source0: vitastor-2.0.0.el9.tar.gz +Source0: vitastor-2.1.0.el9.tar.gz BuildRequires: liburing-devel >= 0.6 BuildRequires: gperftools-devel diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index baf21cdb..c272955a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -19,7 +19,7 @@ if("${CMAKE_INSTALL_PREFIX}" MATCHES "^/usr/local/?$") set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") endif() -add_definitions(-DVITASTOR_VERSION="2.0.0") +add_definitions(-DVITASTOR_VERSION="2.1.0") add_definitions(-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wno-sign-compare -Wno-comment -Wno-parentheses -Wno-pointer-arith -fdiagnostics-color=always -fno-omit-frame-pointer -I ${CMAKE_SOURCE_DIR}/src) add_link_options(-fno-omit-frame-pointer) if (${WITH_ASAN}) diff --git a/src/client/vitastor.pc.in b/src/client/vitastor.pc.in index 834ddf5c..cefa502d 100644 --- a/src/client/vitastor.pc.in +++ b/src/client/vitastor.pc.in @@ -6,7 +6,7 @@ includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ Name: Vitastor Description: Vitastor client library -Version: 2.0.0 +Version: 2.1.0 Libs: -L${libdir} -lvitastor_client Cflags: -I${includedir}