Ubuntu 24.04
Sponsored Link

OpenStack Caracal : Cinder स्टोरेज का उपयोग करें (NFS)2024/05/22

 

यदि किसी इंस्टेंस को अधिक डिस्क की आवश्यकता है तो Cinder द्वारा प्रदान किए गए वर्चुअल स्टोरेज का उपयोग करना संभव है।

यहां NFS बैकएंड के साथ वर्चुअल स्टोरेज कॉन्फ़िगर करें।

------------+--------------------------+--------------------------+------------
            |                          |                          |
        eth0|10.0.0.30             eth0|10.0.0.50             eth0|10.0.0.51
+-----------+-----------+  +-----------+-----------+  +-----------+-----------+
|   [ dlp.srv.world ]   |  | [ network.srv.world ] |  |  [ node01.srv.world ] |
|     (Control Node)    |  |     (Network Node)    |  |     (Compute Node)    |
|                       |  |                       |  |                       |
|  MariaDB    RabbitMQ  |  |  Neutron L2/L3 Agent  |  |        Libvirt        |
|  Memcached  Nginx     |  |   Neutron Metadata    |  |      Nova Compute     |
|  Keystone   httpd     |  |     Open vSwitch      |  |    Neutron L2 Agent   |
|  Glance     Nova API  |  |     iSCSI Target      |  |      Open vSwitch     |
|  Neutron Server       |  |     Cinder Volume     |  |                       |
|  Neutron Metadata     |  |                       |  |                       |
|  Cinder API           |  |                       |  |                       |
+-----------------------+  +-----------------------+  +-----------------------+

-----------+-------------------------------------------------------------------
       eth0|10.0.0.35
+----------+-----------+
|   [ nfs.srv.world ]  |
|       NFS Server     |
+----------------------+

[1]

NFS सर्वर का आपके स्थानीय नेटवर्क पर चलना आवश्यक है, यहां देखें।
इस उदाहरण पर, [/var/lib/nfs-share] निर्देशिका को [nfs.srv.world] पर एक साझा निर्देशिका के रूप में कॉन्फ़िगर करें।

[2] संग्रहण नोड कॉन्फ़िगर करें।
root@network:~#
apt -y install nfs-common
root@network:~#
vi /etc/idmapd.conf
# पंक्ति 5: टिप्पणी हटाएं और अपने डोमेन नाम में बदलाव करें

Domain =
srv.world
root@network:~#
vi /etc/cinder/cinder.conf
# [enabled_backends] पैरामीटर में मान जोड़ें

enabled_backends =
nfs
# अंत में जोड़ें

[nfs]
volume_driver = cinder.volume.drivers.nfs.NfsDriver
nfs_shares_config = /etc/cinder/nfs_shares
nfs_mount_point_base = $state_path/mnt
root@network:~#
vi /etc/cinder/nfs_shares
# नया बनाएँ: NFS साझा निर्देशिका निर्दिष्ट करें
# यदि एकाधिक शेयर सेट है, तो प्रति पंक्ति एक लिखें

nfs.srv.world:/var/lib/nfs-share
root@network:~#
chmod 640 /etc/cinder/nfs_shares

root@network:~#
chgrp cinder /etc/cinder/nfs_shares

root@network:~#
systemctl restart cinder-volume

root@network:~#
chown -R cinder:cinder /var/lib/cinder/mnt
[3] NFS माउंट करने के लिए कंप्यूट नोड पर Nova सेटिंग्स बदलें।
root@node01:~#
apt -y install nfs-common
root@node01:~#
vi /etc/idmapd.conf
# पंक्ति 5: टिप्पणी हटाएं और अपने डोमेन नाम में बदलाव करें

Domain =
srv.world
root@node01:~#
vi /etc/nova/nova.conf
# [keystone_authtoken] अनुभाग में अनुसरण जोड़ें
[keystone_authtoken]
.....
.....
service_token_roles = service
service_token_roles_required = true

# अंत में जोड़ें
[service_user]
send_service_user_token = true
auth_url = https://dlp.srv.world:5000
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = servicepassword
insecure = false

[cinder]
os_region_name = RegionOne

root@node01:~#
systemctl restart nova-compute
[4] एक सामान्य उपयोगकर्ता के रूप में लॉगिन करें, आप स्वयं के इंस्टेंस में वॉल्यूम जोड़ना चाहेंगे।
उदाहरण के लिए, 10GB वाली एक वर्चुअल डिस्क [disk01] बनाएं। किसी भी नोड पर काम करना ठीक है. (नीचे उदाहरण नियंत्रण नोड पर है)
# पर्यावरण चर सेट करें

ubuntu@dlp ~(keystone)$
echo "export OS_VOLUME_API_VERSION=3" >> ~/keystonerc

ubuntu@dlp ~(keystone)$
source ~/keystonerc
ubuntu@dlp ~(keystone)$
openstack volume create --size 10 disk01

+---------------------+--------------------------------------+
| Field               | Value                                |
+---------------------+--------------------------------------+
| attachments         | []                                   |
| availability_zone   | nova                                 |
| bootable            | false                                |
| consistencygroup_id | None                                 |
| created_at          | 2024-05-22T00:23:23.005084           |
| description         | None                                 |
| encrypted           | False                                |
| id                  | 256872e5-b263-44d9-9eb8-f4892336b7b2 |
| multiattach         | False                                |
| name                | disk01                               |
| properties          |                                      |
| replication_status  | None                                 |
| size                | 10                                   |
| snapshot_id         | None                                 |
| source_volid        | None                                 |
| status              | creating                             |
| type                | __DEFAULT__                          |
| updated_at          | None                                 |
| user_id             | b9371d015e0d43dca74f29161448ffd2     |
+---------------------+--------------------------------------+

ubuntu@dlp ~(keystone)$
openstack volume list

+------------------------------------+--------+-----------+------+-------------+
| ID                                 | Name   | Status    | Size | Attached to |
+------------------------------------+--------+-----------+------+-------------+
| 256872e5-b263-44d9-9eb8-           | disk01 | available |   10 |             |
| f4892336b7b2                       |        |           |      |             |
+------------------------------------+--------+-----------+------+-------------+
[5] वर्चुअल डिस्क को किसी इंस्टेंस से जोड़ें।
नीचे दिए गए उदाहरण के लिए, डिस्क को [/dev/vdb] के रूप में कनेक्ट किया गया है। इस पर फ़ाइल सिस्टम बनाने के लिए इसे स्टोरेज के रूप में उपयोग करना संभव है।
ubuntu@dlp ~(keystone)$
openstack server list

+--------------+-------------+---------+--------------+------------+----------+
| ID           | Name        | Status  | Networks     | Image      | Flavor   |
+--------------+-------------+---------+--------------+------------+----------+
| 7fbc24c1-    | Ubuntu-2404 | SHUTOFF | private=10.0 | Ubuntu2404 | m1.small |
| c0d1-43d6-   |             |         | .0.208, 192. |            |          |
| 87aa-        |             |         | 168.100.130  |            |          |
| 68df83597b57 |             |         |              |            |          |
+--------------+-------------+---------+--------------+------------+----------+

ubuntu@dlp ~(keystone)$
openstack server add volume Ubuntu-2404 disk01

+-----------------------+--------------------------------------+
| Field                 | Value                                |
+-----------------------+--------------------------------------+
| ID                    | 256872e5-b263-44d9-9eb8-f4892336b7b2 |
| Server ID             | 7fbc24c1-c0d1-43d6-87aa-68df83597b57 |
| Volume ID             | 256872e5-b263-44d9-9eb8-f4892336b7b2 |
| Device                | /dev/vdb                             |
| Tag                   | None                                 |
| Delete On Termination | False                                |
+-----------------------+--------------------------------------+

# संलग्न डिस्क की स्थिति इस प्रकार बदलती है [in-use]

ubuntu@dlp ~(keystone)$
openstack volume list

+--------------------------+--------+--------+------+--------------------------+
| ID                       | Name   | Status | Size | Attached to              |
+--------------------------+--------+--------+------+--------------------------+
| 256872e5-b263-44d9-9eb8- | disk01 | in-use |   10 | Attached to Ubuntu-2404  |
| f4892336b7b2             |        |        |      | on /dev/vdb              |
+--------------------------+--------+--------+------+--------------------------+

# डिस्क को अलग करें

ubuntu@dlp ~(keystone)$
openstack server remove volume Ubuntu-2404 disk01

मिलान सामग्री