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.
Služba poskytuje na tomto zařízení logické svazky pomocí ovladače LVM, které předává instancím pomocí přenosu iSCSI. Těmito pokyny se můžete řídit a s malými úpravami a dalšími uzly úložiště lze vaše prostředí horizontálně rozšířit.
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:
# yum install lvm2
Spusťte službu popisných dat LVM a nastavte ji, aby byla spuštěna při zavedení systému:
# systemctl enable lvm2-lvmetad.service
# systemctl start lvm2-lvmetad.service
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ě.
Pouze instance mají přístup ke svazkům blokového úložiště, ovšem základní operační systém spravuje zařízení přidružená ke svazkům. Standardně nástroj zjišťující svazky LVM hledá zařízení blokového úložiště obsahující svazky ve složce /dev. Pokud projekty používají LVM v jejich svazcích, nástroj tyto svazky najde a pokusí se je uložit do mezipaměti, což může způsobit různé problémy jak v operačním systému, tak ve svazcích projektu. Musíte nastavit LVM aby prohledával pouze zařízení které jsou ve skupině svazku cinder-volume. Upravte soubor /etc/lvm/lvm.conf a proveďte následující kroky:
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:
# yum install openstack-cinder targetcli python-keystone
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ě.
V částech [DEFAULT] a [oslo_messaging_rabbit] nastavte přístup ke frontě zpráv RabbitMQ:
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
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 = lioadm
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
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 target.service
# systemctl start openstack-cinder-volume.service target.service
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.