8.2. 高可用性クラスターでの Samba の設定


Pacemaker クラスターで Samba サービスを設定するには、クラスター内のすべてのノードでサービスを設定します。

前提条件

  • 高可用性クラスターでの Samba サービス用の GFS2 ファイルシステムの設定 で説明したように、GFS2 ファイルシステムで設定された 2 ノードの Red Hat High Availability クラスター。
  • Samba 共有に使用するために GFS2 ファイルシステム上に作成されたパブリックディレクトリー。この例では、ディレクトリーは /srv/samba/share1 です。
  • このクラスターによってエクスポートされた Samba 共有へのアクセスに使用できるパブリック仮想 IP アドレス。

手順

  1. クラスター内の両方のノードで、Samba サービスを設定し、共有定義をセットアップします。

    1. Samba および CTDB パッケージをインストールします。

      # dnf -y install samba ctdb cifs-utils samba-winbind
    2. ctdbsmbnmb、および winbind サービスが実行されておらず、起動時に開始されていないことを確認してください。

      # systemctl disable --now ctdb smb nmb winbind
    3. /etc/samba/smb.conf ファイルで、Samba サービスを設定し、1 つの共有を持つスタンドアロンサーバーの次の例のように、共有定義をセットアップします。

      [global]
          netbios name = linuxserver
          workgroup = WORKGROUP
          security = user
          clustering = yes
      [share1]
          path = /srv/samba/share1
          read only = no
    4. /etc/samba/smb.conf ファイルを検証します。

      # testparm
  2. クラスター内の両方のノードで、CTDB を設定します。

    1. /etc/ctdb/nodes ファイルを作成し、このノードファイルの例のように、クラスターノードの IP アドレスを追加します。

      192.0.2.11
      192.0.2.12
    2. /etc/ctdb/public_addresses ファイルを作成し、クラスターのパブリックインターフェイスの IP アドレスとネットワークデバイス名をファイルに追加します。public_addresses ファイルで IP アドレスを割り当てる場合は、これらのアドレスが使用されていないこと、および目的のクライアントからルーティング可能であることを確認してください。/etc/ctdb/public_addresses ファイルの各エントリーの 2 番目のフィールドは、対応するパブリックアドレスのクラスターマシンで使用するインターフェイスです。この例の public_addresses ファイルでは、インターフェイス enp1s0 がすべてのパブリックアドレスに使用されます。

      192.0.2.201/24 enp1s0
      192.0.2.202/24 enp1s0

      クラスターのパブリックインターフェイスは、クライアントがネットワークから Samba にアクセスするために使用するインターフェイスです。負荷分散のために、クラスターの各パブリック IP アドレスの A レコードを DNS ゾーンに追加します。これらの各レコードは、同じホスト名に解決される必要があります。クライアントはホスト名を使用して Samba にアクセスし、DNS はクライアントをクラスターのさまざまなノードに分散します。

    3. firewalld サービスを実行している場合は、ctdb および samba サービスに必要なポートを有効にします。

      # firewall-cmd --add-service=ctdb --add-service=samba --permanent
      # firewall-cmd --reload
  3. クラスター内の 1 つのノードで、SELinux コンテキストを更新します。

    1. GFS2 共有上の SELinux コンテキストを更新します。

      [root@z1 ~]# semanage fcontext -at ctdbd_var_run_t -s system_u "/mnt/ctdb(/.)?"
      [root@z1 ~]# restorecon -Rv /mnt/ctdb
    2. Samba で共有されているディレクトリーの SELinux コンテキストを更新します。

      [root@z1 ~]# semanage fcontext -at samba_share_t -s system_u "/srv/samba/share1(/.)?"
      [root@z1 ~]# restorecon -Rv /srv/samba/share1

関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.