第10章 Quality-of-Service (QoS) の設定

Red Hat OpenStack Platform 8 ではネットワークの quality-of-service (QoS) ポリシーがサポートされるようになりました。これらのポリシーにより、OpenStack の管理者は、インスタンスの出力トラフィックに速度制限を適用して、さまざまなサービスレベルを提供することができます。QoS ポリシーを実装すると、指定した速度を超過するトラフィックはドロップされるようになります。

10.1. QoS ポリシースコープ

QoS ポリシーは、個々のポートに適用されるか、特定のテナントネットワークに適用され全ポートに継承されます。

10.2. QoS ポリシー管理

QoS ポリシーは、動的に適用、変更、削除することができます。以下の例では、帯域幅を制限するルールを手動で作成して、1 つのポートに適用します。

  1. テナントの一覧を確認して、QoS ポリシーを作成するテナントの ID を決定します。

    # keystone tenant-list
    +----------------------------------+--------------------+---------+
    |                id                |        name        | enabled |
    +----------------------------------+--------------------+---------+
    | 35c6f4eb8bc24455a1df527760c091f5 |       admin        |   True  |
    | d602b03dcc324dd483d37163388b2021 |        demo        |   True  |
    | 74b64ba4eb3e4f08a8819454b667d4f6 |      services      |   True  |
    +----------------------------------+--------------------+---------+
  2. admin テナントに bw-limiter という名前の QoS ポリシーを作成します。

    # neutron qos-policy-create --tenant-id 35c6f4eb8bc24455a1df527760c091f5 'bw-limiter'
  3. bw-limiter の規制ルールを設定します。

    # neutron qos-bandwidth-limit-rule-create bw-limiter -max_kbps 3000 -max_burst_kbps 300
  4. bw-limiter ポリシーを適用する neutron ポートを設定します

    # neutron port-update <port id> -qos-policy bw-limiter
  5. QoS ルールを確認します。以下に例を示します。

    # neutron qos-rule-show 9be535c3-daa2-4d7b-88ea-e8de16
    
    +-------------------+---------------------------------+
    | Field             | Value                           |
    +-------------------+---------------------------------+
    | id                | 9be535c3-daa2-4d7b-88ea-e8de16  |
    | rule_type         | bandwidth_limit                 |
    | description       |                                 |
    | max_kbps          | 3000                            |
    | max_burst_kbps    | 300                             |
    +-------------------+---------------------------------+

以下の値により、規制のアルゴリズムを適宜に設定することができます。

  • max_kbps: インスタンスが送信可能な最大速度 (Kbps 単位)
  • max_burst_kbps: インターフェースが規制速度を超えて送信可能な最大データ量 (Kbps 単位)