From 073b505928698fe577f2607df6864bd4781b95d1 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Thu, 9 Dec 2021 22:28:09 +0300 Subject: [PATCH] Package Proxmox plugin as pve-storage-vitastor --- README-ru.md | 10 +++++++--- README.md | 9 ++++++--- debian/control | 6 ++++++ debian/pve-storage-vitastor.install | 1 + 4 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 debian/pve-storage-vitastor.install diff --git a/README-ru.md b/README-ru.md index dc1da771..bcc03815 100644 --- a/README-ru.md +++ b/README-ru.md @@ -547,6 +547,7 @@ for i in ./???-*.yaml; do kubectl apply -f $i; done nova-21.diff подходит для Nova 21-22, nova-23.diff подходит для Nova 23-24. - Скопируйте `patches/cinder-vitastor.py` в инсталляцию Cinder как `cinder/volume/drivers/vitastor.py` - Создайте тип томов в cinder.conf (см. ниже) +- Обязательно заблокируйте доступ от виртуальных машин к сети Vitastor (OSD и etcd), т.к. Vitastor (пока) не поддерживает аутентификацию - Перезапустите Cinder и Nova Пример конфигурации Cinder: @@ -578,10 +579,9 @@ image_upload_use_cinder_backend = True - Добавьте соответствующий Debian-репозиторий Vitastor в sources.list на хостах Proxmox (buster для 6.4, bullseye для 7.1) -- Установите пакеты vitastor-client и pve-qemu-kvm из репозитория Vitastor -- Скопируйте файл [patches/PVE_VitastorPlugin.pm](patches/PVE_VitastorPlugin.pm) на хосты - Proxmox как `/usr/share/perl5/PVE/Storage/Custom/VitastorPlugin.pm` +- Установите пакеты vitastor-client, pve-qemu-kvm, pve-storage-vitastor (* или см. сноску) из репозитория Vitastor - Определите тип хранилища в `/etc/pve/storage.cfg` (см. ниже) +- Обязательно заблокируйте доступ от виртуальных машин к сети Vitastor (OSD и etcd), т.к. Vitastor (пока) не поддерживает аутентификацию - Перезапустите демон Proxmox: `systemctl restart pvedaemon` Пример `/etc/pve/storage.cfg` (единственная обязательная опция - vitastor_pool, все остальные @@ -603,6 +603,10 @@ vitastor: vitastor vitastor_nbd 0 ``` +\* Примечание: вместо установки пакета pve-storage-vitastor вы можете вручную скопировать файл +[patches/PVE_VitastorPlugin.pm](patches/PVE_VitastorPlugin.pm) на хосты Proxmox как +`/usr/share/perl5/PVE/Storage/Custom/VitastorPlugin.pm`. + ## Известные проблемы - Запросы удаления объектов могут в данный момент приводить к "неполным" объектам в EC-пулах, diff --git a/README.md b/README.md index 1d9b7928..4f73c1af 100644 --- a/README.md +++ b/README.md @@ -496,6 +496,7 @@ To enable Vitastor support in an OpenStack installation: Patch 21 fits Nova 21-22, patch 23 fits Nova 23-24. - Install `patches/cinder-vitastor.py` as `..../cinder/volume/drivers/vitastor.py` - Define a volume type in cinder.conf (see below) +- Block network access from VMs to Vitastor network (to OSDs and etcd), because Vitastor doesn't support authentication (yet) - Restart Cinder and Nova Cinder volume type configuration example: @@ -526,10 +527,9 @@ To enable Vitastor support in Proxmox Virtual Environment (6.4 and 7.1 are suppo - Add the corresponding Vitastor Debian repository into sources.list on Proxmox hosts (buster for 6.4, bullseye for 7.1) -- Install vitastor-client and pve-qemu-kvm from Vitastor repository -- Copy [patches/PVE_VitastorPlugin.pm](patches/PVE_VitastorPlugin.pm) to Proxmox hosts - as `/usr/share/perl5/PVE/Storage/Custom/VitastorPlugin.pm` +- Install vitastor-client, pve-qemu-kvm, pve-storage-vitastor (* or see note) packages from Vitastor repository - Define storage in `/etc/pve/storage.cfg` (see below) +- Block network access from VMs to Vitastor network (to OSDs and etcd), because Vitastor doesn't support authentication (yet) - Restart pvedaemon: `systemctl restart pvedaemon` `/etc/pve/storage.cfg` example (the only required option is vitastor_pool, all others @@ -551,6 +551,9 @@ vitastor: vitastor vitastor_nbd 0 ``` +\* Note: you can also manually copy [patches/PVE_VitastorPlugin.pm](patches/PVE_VitastorPlugin.pm) to Proxmox hosts +as `/usr/share/perl5/PVE/Storage/Custom/VitastorPlugin.pm` instead of installing pve-storage-vitastor. + ## Known Problems - Object deletion requests may currently lead to 'incomplete' objects in EC pools diff --git a/debian/control b/debian/control index 136f192f..7f43a336 100644 --- a/debian/control +++ b/debian/control @@ -47,3 +47,9 @@ Architecture: amd64 Depends: ${shlibs:Depends}, ${misc:Depends}, vitastor-client (= ${binary:Version}), fio (= ${dep:fio}) Description: Vitastor, a fast software-defined clustered block storage - fio drivers Vitastor fio drivers for benchmarking. + +Package: pve-storage-vitastor +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, vitastor-client (= ${binary:Version}) +Description: Vitastor Proxmox Virtual Environment storage plugin + Vitastor storage plugin for Proxmox Virtual Environment. diff --git a/debian/pve-storage-vitastor.install b/debian/pve-storage-vitastor.install new file mode 100644 index 00000000..0ef35bdb --- /dev/null +++ b/debian/pve-storage-vitastor.install @@ -0,0 +1 @@ +patches/PVE_VitastorPlugin.pm usr/share/perl5/PVE/Storage/Custom/VitastorPlugin.pm