Создание политик качества обслуживания

Создание политик качества обслуживания#

Предварительные требования

  • Четкое понимание правил политик качества обслуживания, которые описаны в разделе QoS policy rules.

  • Перед тем как создавать политику качества обслуживания как системный администратор, убедитесь, что для пользователя создан файл переменных среды, как описано в разделе Connecting to OpenStack command-line interface.

  • Перед тем как создавать политику качества обслуживания как администратор домена, убедитесь, что для пользователя создан файл переменных среды, как описано в разделе Creating and assigning the quota manager role.

Создание политики качества обслуживания с правилами

  1. Создайте политику качества обслуживания:

    • Если вы создаете политику как системный администратор.

      1. Используйте файл переменных среды для системного администратора:

        # source /etc/kolla/admin-openrc.sh
        
      2. Создайте политику качества обслуживания в проекте, в котором она будет применяться. Например:

        # openstack --insecure network qos policy create --project 3823a2d908ea4dd6909a8f93a6f66018 policy1
        
    • Если вы создаете политику как администратор домена.

      1. Используйте файл переменных среды для администратора домена. Например:

        # source domain-admin.sh
        
      2. Используйте переменную имени проекта для проекта, где вы хотите создать политику качества обслуживания. Например:

        # export OS_PROJECT_NAME=testproject
        
      3. Создайте политику качества обслуживания. Например:

        # openstack --insecure network qos policy create policy1
        
  2. Создайте правило для этой политики качества обслуживания:

    • Чтобы задать предел пропускной способности, укажите значениеbandwidth-limit для параметра --type и параметры правила. Например, чтобы ограничить исходящий трафик до 3 Мбит/с, выполните следующую команду:

      # openstack --insecure network qos rule create --type bandwidth-limit \
      --max-kbps 3000 --max-burst-kbits 2400 --egress policy1
      +----------------+--------------------------------------------------+
      | Field          | Value                                            |
      +----------------+--------------------------------------------------+
      | direction      | egress                                           |
      | id             | 6f036f09-d952-420d-986b-27c7eb14b2da             |
      | location       | Munch({'project': Munch({'domain_name': Default, |
      |                | 'domain_id': None, 'name': admin,                |
      |                | 'id': u'e215189c0472482f93e71d10e1245253'}),     |
      |                | 'cloud': '', 'region_name': '', 'zone': None})   |
      | max_burst_kbps | 2400                                             |
      | max_kbps       | 3000                                             |
      | name           | None                                             |
      | project_id     |                                                  |
      +----------------+--------------------------------------------------+
      
    • Чтобы установить минимальную пропускную способность, укажите значение minimum-bandwidth для параметра --type и задайте параметры правила. Например, чтобы обеспечить минимальную пропускную способность для входящего трафика не ниже 1000 кбит/с, выполните следующую команду:

      # openstack --insecure network qos rule create --type minimum-bandwidth \
      --min-kbps 1000 --ingress policy1
      +------------+--------------------------------------------------+
      | Field      | Value                                            |
      +------------+--------------------------------------------------+
      | direction  | ingress                                          |
      | id         | 4eb79c67-e2b7-4ee7-845c-4cbe39f095cd             |
      | location   | Munch({'project': Munch({'domain_name': Default, |
      |            | 'domain_id': None, 'name': admin,                |
      |            | 'id': u'e215189c0472482f93e71d10e1245253'}),     |
      |            | 'cloud': '', 'region_name': '', 'zone': None})   |
      | min_kbps   | 1000                                             |
      | name       | None                                             |
      | project_id |                                                  |
      +------------+--------------------------------------------------+