Tato část popisuje jak nainstalovat a nastavit uzly úložiště pro službu blokového úložiště. Pro zjednodušení toto nastavení pracuje s jedním uzlem úložiště obsahující prázdné místní zařízení blokového úložiště. Pokyny využívají /dev/sdb
, ale tuto hodnotu můžete nahradit jinou, podle vašich konkrétních potřeb.
The service provisions logical volumes on this device using the LVM driver and provides them to instances via iSCSI transport. You can follow these instructions with minor modifications to horizontally scale your environment with additional storage nodes.
Před instalací a nastavením služby blokového úložiště na uzlu úložiště je třeba připravit úložné zařízení.
Poznámka
Proveďte tyto kroky na uzlu úložiště.
Nainstalujte balíčky s podpůrnými nástroji:
Nainstalujte balíčky LVM:
# zypper install lvm2
(Nepovinné) Pokud budete chtít používat obrazy v neprostém formátu, jako např. QCOW2 a VMDK, nainstalujte balíček QEMU:
# zypper install qemu
Poznámka
Některé distribuce jsou vydávány s již nainstalovaným balíčkem LVM.
Vytvořte fyzický svazek LVM /dev/sdb
:
# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created
Vytvořte skupinu svazku LVM cinder-volumes
:
# vgcreate cinder-volumes /dev/sdb
Volume group "cinder-volumes" successfully created
Služba blokového úložiště bude vytvářet svazky v této skupině.
Only instances can access Block Storage volumes. However, the
underlying operating system manages the devices associated with
the volumes. By default, the LVM volume scanning tool scans the
/dev
directory for block storage devices that
contain volumes. If projects use LVM on their volumes, the scanning
tool detects these volumes and attempts to cache them which can cause
a variety of problems with both the underlying operating system
and project volumes. You must reconfigure LVM to scan only the devices
that contain the cinder-volumes
volume group. Edit the
/etc/lvm/lvm.conf
file and complete the following actions:
V části devices
přidejte filtr, který odfiltruje všechna zařízení mimo /dev/sdb
:
devices {
...
filter = [ "a/sdb/", "r/.*/"]
Každá položka v poli filtru začíná a
pro přijetí a r
pro **odmítnutí* následovaná regulárním výrazem pro název zařízení. Pole musí být ukončeno r/.*/
pro odmítnutí všech zbývajících zařízení. Pro vyzkoušení filtrů můžete použít příkaz vgs -vvvv.
Varování
Pokud vaše uzly úložiště využívají LVM na disku s operačním systémem, musíte také přidat přidružené zařízení do filtru. Například, pokud zařízení /dev/sda
obsahuje operační systém:
filter = [ "a/sda/", "a/sdb/", "r/.*/"]
Podobně, pokud vaše výpočtové uzly využívají LVM na disku s operačním systémem, musíte také změnit filtr v souboru /etc/lvm/lvm.conf
v těchto uzlech, aby byl zahrnut pouze disk s operačním systémem. Například, pokud zařízení /dev/sda
obsahuje operační systém:
filter = [ "a/sda/", "r/.*/"]
Nainstalujte balíčky:
# zypper install openstack-cinder-volume tgt
Upravte soubor /etc/cinder/cinder.conf
a proveďte následující úkony:
V části [database]
nastavte přístup k databázi:
[database]
# ...
connection = mysql+pymysql://cinder:CINDER_DBPASS@controller/cinder
Nahraďte CINDER_DBPASS
vámi zvoleným heslem pro databázi blokového úložiště.
In the [DEFAULT]
section, configure RabbitMQ
message queue access:
[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller
Nahraďte RABBIT_PASS
Vámi zvoleným heslem pro účet openstack
v RabbitMQ
.
V částech [DEFAULT]
a [keystone_authtoken]
nastavte přístup ke službě identit:
[DEFAULT]
# ...
auth_strategy = keystone
[keystone_authtoken]
# ...
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = cinder
password = CINDER_PASS
Nahraďte CINDER_PASS
vámi zvoleným heslem pro uživatele cinder
ve službě identit.
Poznámka
Okomentujte nebo odstraňte všechny ostatní možnosti v části [keystone_authtoken]
.
V části [DEFAULT]
nastavte volbu my_ip
:
[DEFAULT]
# ...
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
Nahraďte MANAGEMENT_INTERFACE_IP_ADDRESS
IP adresou síťového rozhraní pro správu ve vašem uzlu úložiště. Standardně 10.0.0.41 pro první uzel v ukázkové architektuře.
V části [lvm]
nastavte podpůrnou vrstvu LVM používající ovladač LVM, skupinou svazku cinder-volumes
, protokolem iSCSI a odpovídající službou iSCSI:
[lvm]
# ...
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
volume_group = cinder-volumes
iscsi_protocol = iscsi
iscsi_helper = tgtadm
V části [DEFAULT]
povolte podpůrnou vrstvu LVM:
[DEFAULT]
# ...
enabled_backends = lvm
Poznámka
Název podpůrné vrstvy může být libovolný. Například v tomto průvodci je využit název ovladače také v podpůrné vrstvě.
In the [DEFAULT]
section, configure the location of the
Image service API:
[DEFAULT]
# ...
glance_api_servers = http://controller:9292
V části [oslo_concurrencyservice_credentials]
nastavte cestu pro zámky:
[oslo_concurrency]
# ...
lock_path = /var/lib/cinder/tmp
Create the /etc/tgt/conf.d/cinder.conf
file
with the following data:
include /var/lib/cinder/volumes/*
Spusťte službu svazku blokového úložiště, včetně jejích závislostí, a nastavte ji pro spouštění při zavedení systému:
# systemctl enable openstack-cinder-volume.service tgtd.service
# systemctl start openstack-cinder-volume.service tgtd.service
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.