Fedora 40
Sponsored Link

GlusterFS 11 : GlusterFS + SMB2024/04/25

 
SMB प्रोटोकॉल को सक्षम करने के लिए GlusterFS वॉल्यूम कॉन्फ़िगर करें।
[1] GlusterFS क्लस्टर में एक नोड पर SMB सेटिंग सक्षम करने के लिए GlusterFS कॉन्फ़िगर करें।
[root@node01 ~]#
dnf -y install samba ctdb samba-vfs-glusterfs
# लक्ष्य Gluster वॉल्यूम रोकें और सेटिंग्स बदलें

[root@node01 ~]#
gluster volume stop vol_distributed

Stopping volume will make its data inaccessible. Do you want to continue? (y/n)
y

volume stop: vol_distributed: success
[root@node01 ~]#
gluster volume set vol_distributed user.smb enable

volume set: success
[root@node01 ~]#
gluster volume set vol_distributed performance.write-behind off

volume set: success
[root@node01 ~]#
gluster volume set vol_distributed group samba

volume set: success
[root@node01 ~]#
vi /var/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh
# पंक्ति 25 : लक्ष्य Gluster वॉल्यूम नाम में बदलें

META="
vol_distributed
"
[root@node01 ~]#
vi /var/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh
# पंक्ति 13 : लक्ष्य Gluster वॉल्यूम नाम में बदलें

META="
vol_distributed
"
# ग्लस्टर वॉल्यूम प्रारंभ करें

[root@node01 ~]#
gluster volume start vol_distributed

volume start: vol_distributed: success
# उपरोक्त सेटिंग्स के साथ, निम्नलिखित माउंटिंग स्वचालित रूप से की जाती है

[root@node01 ~]#
df -h /gluster/lock

Filesystem                             Size  Used Avail Use% Mounted on
node01.srv.world:/vol_distributed.tcp   30G  4.1G   26G  14% /gluster/lock

[root@node01 ~]#
tail -1 /etc/fstab

node01.srv.world:/vol_distributed /gluster/lock glusterfs _netdev,transport=tcp,xlator-option=*client*.ping-timeout=10 0 0

[root@node01 ~]#
vi /etc/ctdb/nodes
# नया निर्माण
# लक्ष्य Gluster वॉल्यूम को कॉन्फ़िगर करने वाले सभी नोड्स लिखें

10.0.0.51
10.0.0.52
[root@node01 ~]#
vi /etc/ctdb/public_addresses
# नया निर्माण
# SMB एक्सेस के लिए वर्चुअल आईपी एड्रेस सेट करें
# [enp1s0] का अर्थ है नेटवर्क इंटरफ़ेस नाम ⇒ अपने परिवेश में बदलें

10.0.0.59/24 enp1s0
[root@node01 ~]#
systemctl enable --now ctdb
# स्थिति की पुष्टि करें

[root@node01 ~]#
ctdb status

Number of nodes:2
pnn:0 10.0.0.51        OK (THIS NODE)
pnn:1 10.0.0.52        DISCONNECTED|UNHEALTHY|INACTIVE
Generation:1656904014
Size:1
hash:0 lmaster:0
Recovery mode:NORMAL (0)
Leader:0

[root@node01 ~]#
ctdb ip

Public IPs on node 0
10.0.0.59 0
[2] सांबा कॉन्फ़िगर करें।
उदाहरण के लिए, एक साझा फ़ोल्डर बनाएं जिसे [smbgroup] समूह के उपयोगकर्ता केवल साझा फ़ोल्डर [smbshare] तक पहुंच सकें और उन्हें उपयोगकर्ता प्रमाणीकरण की भी आवश्यकता हो।
# GlusterFS नेटिव के साथ Gluster वॉल्यूम माउंट करें और SMB एक्सेस के लिए एक साझा फ़ोल्डर बनाएं

[root@node01 ~]#
mount -t glusterfs node01.srv.world:/vol_distributed /mnt

[root@node01 ~]#
mkdir /mnt/smbshare

[root@node01 ~]#
groupadd smbgroup

[root@node01 ~]#
chgrp smbgroup /mnt/smbshare

[root@node01 ~]#
chmod 770 /mnt/smbshare

[root@node01 ~]#
umount /mnt

[root@node01 ~]#
vi /etc/samba/smb.conf
[global]
        workgroup = SAMBA
        security = user

        passdb backend = tdbsam

        printing = cups
        printcap name = cups
        load printers = yes
        cups options = raw
        # अनुसरण जोड़ें
        clustering = yes
        kernel share modes = no
        kernel oplocks = no
        map archive = no
        map hidden = no
        map read only = no
        map system = no
        store dos attributes = yes

# निम्नलिखित 9 पंक्तियाँ स्वचालित रूप से कॉन्फ़िगर की गई हैं
[gluster-vol_distributed]
comment = For samba share of volume vol_distributed
vfs objects = glusterfs
glusterfs:volume = vol_distributed
glusterfs:logfile = /var/log/samba/glusterfs-vol_distributed.%M.log
glusterfs:loglevel = 7
path = /
read only = no
kernel share modes = no
# अनुसरण जोड़ें
writable = yes
valid users = @smbgroup
force group = smbgroup
force create mode = 770
force directory mode = 770
inherit permissions = yes

[root@node01 ~]#
systemctl enable --now smb
# सांबा उपयोगकर्ता जोड़ें

[root@node01 ~]#
useradd fedora

[root@node01 ~]#
smbpasswd -a fedora

New SMB password:    
# कोई भी SMB पासवर्ड सेट करें

Retype new SMB password:
Added user fedora.
[root@node01 ~]#
usermod -aG smbgroup fedora

[3] यदि SELinux सक्षम है, तो नीति बदलें।
[root@node01 ~]#
setsebool -P use_fusefs_home_dirs on

[root@node01 ~]#
setsebool -P samba_load_libgfapi on

[root@node01 ~]#
setsebool -P domain_kernel_load_modules on

[4] यदि Firewalld चल रहा है, तो सेवाओं की अनुमति दें।
[root@node01 ~]#
firewall-cmd --add-service={samba,ctdb}

success
[root@node01 ~]#
firewall-cmd --runtime-to-permanent

success
[5] सत्यापित करें कि यह किसी भी लिनक्स क्लाइंट कंप्यूटर से SMB के साथ लक्ष्य शेयर तक पहुंच सकता है।
नीचे दिए गए उदाहरण लिनक्स क्लाइंट पर हैं लेकिन सामान्य तरीके से Windows क्लाइंट से एक्सेस करना संभव है।
# [smbclient] से सत्यापित करें

[root@client ~]#
smbclient //node01.srv.world/gluster-vol_distributed -U fedora

Password for [SAMBA\fedora]:
Try "help" to get a list of possible commands.

# साझा फ़ोल्डर में जाने के लिए व्यवहार्य सत्यापित करें
smb: \> cd smbshare

smb: \smbshare\> mkdir testdir
smb: \smbshare\> ls

  .                                   D        0  Thu Apr 25 16:01:44 2024
  ..                                  D        0  Thu Apr 25 15:59:02 2024
  testdir                             D        0  Thu Apr 25 16:01:44 2024

                31326208 blocks of size 1024. 26952828 blocks available

smb: \smbshare\> exit
मिलान सामग्री