Red Hat Training

A Red Hat training course is available for RHEL 8

8.3. 配置 Samba 集群资源

在双节点高可用性集群的两个节点上配置 Samba 服务后,请为集群配置 Samba 集群资源。

先决条件

流程

  1. 在集群的一个节点上配置 Samba 集群资源:

    1. 在组 samba-group 中创建 CTDB 资源。CTDB 资源代理使用 pcs 命令指定的ctdb_* 选项来创建 CTDB 配置文件。将资源创建为禁用,以便其在配置必要的顺序约束前不自动启动。

      [root@z1 ~]# pcs resource create --disabled ctdb --group samba-group ocf:heartbeat:CTDB ctdb_recovery_lock=/mnt/ctdb/ctdb.lock ctdb_dbdir=/var/lib/ctdb ctdb_logfile=/var/log/ctdb.log op monitor interval=10 timeout=30 op start timeout=90 op stop timeout=100
    2. 克隆 samba-group 资源组。

      [root@z1 ~]# pcs resource clone samba-group
    3. 创建排序约束,以确保所有 Filesystem 资源都在 samba-group 中的资源之前运行。

      [root@z1 ~]# pcs constraint order start ctdb_fs-clone then samba-group-clone
      [root@z1 ~]# pcs constraint order start csmb_fs1-clone then samba-group-clone
    4. 在资源组 samba-group 中创建 samba 资源。这会根据添加的顺序在 CTDB 和 Samba 之间创建一个隐式排序约束。

      [root@z1 ~]# pcs resource create samba --group samba-group systemd:smb
    5. 启用 ctdbsamba 资源。

      [root@z1 ~]# pcs resource enable ctdb samba
    6. 检查所有服务是否已成功启动。

      注意

      CTDB 可能需要几分钟才能启动 Samba、导出共享并稳定下来。如果在此过程完成前检查集群状态,您可能会看到 samba 服务还没有运行。

      [root@z1 ~]# pcs status
      
      ...
      
      Full List of Resources:
        * fence-z1   (stonith:fence_xvm): Started z1.example.com
        * fence-z2   (stonith:fence_xvm): Started z2.example.com
        * Clone Set: locking-clone [locking]:
      	* Started: [ z1.example.com z2.example.com ]
        * Clone Set: shared_vg-clone [shared_vg]:
      	* Started: [ z1.example.com z2.example.com ]
        * Clone Set: ctdb_fs-clone [ctdb_fs]:
      	* Started: [ z1.example.com z2.example.com ]
        * Clone Set: csmb_fs1-clone [csmb_fs1]:
      	* Started: [ z1.example.com z2.example.com ]
         * Clone Set: samba-group-clone [samba-group]:
      	* Started: [ z1.example.com z2.example.com ]
  2. 在集群的两个节点上,为 test 共享目录添加一个本地用户。

    1. 添加用户。

      # useradd -M -s /sbin/nologin example_user
    2. 设置用户的密码。

      # passwd example_user
    3. 为用户设置 SMB 密码。

      # smbpasswd -a example_user
      New SMB password:
      Retype new SMB password:
      Added user example_user
    4. 在 Samba 数据库中激活用户。

      # smbpasswd -e example_user
    5. 为 Samba 用户更新 GFS2 共享的文件所有权和权限。

      # chown example_user:users /srv/samba/share1/
      # chmod 755 /srv/samba/share1/