第2章 前提条件

本章は、すべてのノードでファイアウォール機能を提供する iptables を使用するように設定する方法を説明します。また、Red Hat OpenStack Platform 環境の全コンポーネントで使用するデータベースサービスとメッセージブローカーのインストール方法も説明します。MariaDB データベースサービスは、各コンポーネントに必要なデータベースを作成してアクセスするためのツールを提供します。RabbitMQ メッセージブローカーにより、コンポーネント間の内部通信が可能になります。メッセージは、メッセージブローカーを使用するように設定されたコンポーネントであればどこからでもメッセージの送受信ができます。

2.1. ファイアウォールの設定

各コンポーネントをホストするサーバーが iptables を使用するように設定します。この際、Network Manager サービスを無効にして、サーバーが firewalld で提供されるファイアウォール機能ではなく、iptables のファイアウォール機能を使用するように設定する必要があります。本書で記載するその他のファイル設定はすべて、iptables を使用します。

2.1.1. Network Manager の無効化

OpenStack Networking は、Networking Manager サービスが有効化されているシステムでは機能しません。以下の手順に記載するステップはすべて、ネットワークトラフィックを処理する環境の各サーバーに root ユーザーとしてログインして実行する必要があります。これには、OpenStack Networking、ネットワークノードすべて、コンピュートノードすべてをホストするサーバーが含まれます。

手順2.1 Network Manager サービスの無効化

  1. Network Manager が現在有効化されているかどうかを確認します。
    # systemctl status NetworkManager.service | grep Active:
    • Network Manager サービスが現在インストールされていない場合には、エラーが表示されます。このエラーが表示された場合には、この先の操作を実行して Network Manager サービスを無効にする必要はありません。
    • Network Manager が稼働している場合には、システムは Active: active (running) と表示し、稼働していない場合は Active: inactive (dead) と表示します。Networking Manager がアクティブでない場合には、この先の操作は必要ありません。
  2. Network Manager が稼働している場合には、Networking Manager を停止してから無効化する必要があります。
    # systemctl stop NetworkManager.service
    # systemctl disable NetworkManager.service
  3. システムの各インターフェースの設定ファイルをテキストエディターで開きます。インターフェースの設定ファイルは、/etc/sysconfig/network-scripts/ ディレクトリーにあり、ファイル名は ifcfg-X の形式です (X は、インターフェース名に置き換えます)。有効なインターフェース名には、eth0p1p5em1 などがあります。
    標準のネットワークサービスがインターフェースを制御して、ブート時に自動的にアクティブ化されるように、以下のキーが各インターフェースの設定ファイルで設定されているか確認して、設定されていない場合には手動で以下を追加します。
    NM_CONTROLLED=no
    ONBOOT=yes
  4. 標準のネットワークサービスを起動します。
    # systemctl start network.service
  5. ネットワークサービスがブート時に起動するように設定します。
    # systemctl enable network.service

2.1.2. firewalld サービスの無効化

コンピュートノードおよび OpenStack Networking ノードの firewalld サービスを無効にして、iptablesサービスを有効にします。

手順2.2 firewalld サービスの無効化

  1. iptables サービスをインストールします。
    # yum install iptables-services
  2. /etc/sysconfig/iptables に定義されている iptables ルールを確認します。

    注記

    以下のコマンドで、現在の firewalld 設定を確認できます。
    # firewall-cmd --list-all
  3. iptables ルールに問題がなければ、firewalld を無効化します。
    # systemctl disable firewalld.service
  4. firewalld サービスを停止して、iptables サービスを起動します。
    # systemctl stop firewalld.service; systemctl start iptables.service; systemctl start ip6tables.service
  5. iptables サービスがブート時に起動するようにを設定します。
    # systemctl enable iptables.service
    # systemctl enable ip6tables.service