20.2. ML2/OVS의 네트워크 서비스 가용성 영역 구성

사용자가 네트워크 및 라우터를 생성할 때 RHOSP(Red Hat OpenStack Platform) 네트워킹 서비스(neutron)에서 자동으로 할당하는 하나 이상의 기본 가용성 영역(AZ)을 설정할 수 있습니다. 또한 네트워킹 서비스에서 해당 AZ에 대해 이러한 리소스를 예약하는 데 사용하는 네트워크 및 라우터 드라이버를 설정할 수도 있습니다.

이 항목에 포함된 정보는 Open vSwitch 메커니즘 드라이버(ML2/OVS)와 함께 모듈 계층 2 플러그인을 사용하는 RHOSP 네트워킹 서비스를 실행하는 배포를 위한 것입니다.

사전 요구 사항

  • RHOSP 16.2 이상을 배포합니다.
  • ML2/OVS 메커니즘 드라이버를 사용하는 RHOSP 네트워킹 서비스 실행.
  • DCN(Distributed Compute Node) 환경에서 네트워킹 서비스 AZ를 사용하는 경우 Networking 서비스 AZ 이름과 Compute 서비스(nova) AZ 이름과 일치해야 합니다.

    자세한 내용은 분산 컴퓨팅 노드 및 스토리지 배포 가이드를 참조하십시오.

절차

  1. stack 사용자로 언더클라우드에 로그인하고 stackrc 파일을 소싱하여 director 명령행 툴을 활성화합니다.

    예제

    $ source ~/stackrc

  2. 사용자 지정 YAML 환경 파일을 생성합니다.

    예제

    $ vi /home/stack/templates/my-neutron-environment.yaml

    작은 정보

    Red Hat OpenStack Platform Orchestration 서비스(heat)는 템플릿 이라는 일련의 계획을 사용하여 환경을 설치하고 구성합니다. 사용자 지정 환경 파일을 사용하여 오버클라우드의 특정 부분을 사용자 지정할 수 있습니다. 이 파일은 heat 템플릿에 대한 사용자 지정 사용자 지정을 제공하는 특수한 유형의 템플릿입니다.

  3. YAML 환경 파일의 parameter_defaults 에서 NeutronDefaultAvailabilityZones 매개변수와 하나 이상의 AZ를 입력합니다. 네트워크 또는 라우터를 생성할 때 사용자가 --availability-zone-hint 옵션을 사용하여 AZ를 지정하지 못하는 경우 네트워킹 서비스는 이러한 AZ를 할당합니다.

    중요

    DCN 환경에서는 Networking 서비스 AZ 이름과 Compute 서비스 AZ 이름과 일치해야 합니다.

    예제

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'

  4. NeutronDhcpAgentAvailabilityZoneNeutronL3AgentAvailabilityZone 에 대한 값을 각각 입력하여 DHCP 및 L3 에이전트의 AZ를 결정합니다.

    예제

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'
      NeutronL3AgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronDhcpAgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'

    중요

    DCN 환경에서는 NeutronDhcpAgentAvailabilityZone 에 대한 단일 AZ를 정의하여 특정 엣지 사이트와 관련된 AZ에서 포트가 예약되도록 합니다.

  5. 기본적으로 네트워크 및 라우터 스케줄러는 AZAwareWeightSchedulerAZLeastRoutersScheduler 입니다. 이 중 하나 또는 둘 다를 변경하려면 각각 NeutronNetworkSchedulerDriverNeutronRouterSchedulerDriver 매개변수를 사용하여 새 스케줄러를 입력합니다.

    예제

    parameter_defaults:
      NeutronDefaultAvailabilityZones: 'az-central,az-datacenter2,az-datacenter1'
      NeutronL3AgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronDhcpAgentAvailabilityZone: 'az-central,az-datacenter2,az-datacenter1'
      NeutronNetworkSchedulerDriver: 'neutron.scheduler.dhcp_agent_scheduler.AZAwareWeightScheduler'
      NeutronRouterSchedulerDriver: 'neutron.scheduler.l3_agent_scheduler.AZLeastRoutersScheduler'

  6. openstack overcloud deploy 명령을 실행하고 코어 heat 템플릿, 환경 파일 및 이 새 사용자 지정 환경 파일을 포함합니다.

    중요

    후속 환경 파일에 정의된 매개 변수와 리소스가 우선하므로 환경 파일의 순서가 중요합니다.

    예제

    $ openstack overcloud deploy --templates \
    -e <your-environment-files> \
    -e /usr/share/openstack-tripleo-heat-templates/environments/services/\
    my-neutron-environment.yaml

검증

  • 가용성 영역 목록 명령을 실행하여 가용성 영역이 올바르게 정의되었는지 확인합니다.

    예제

    $ openstack availability zone list

    샘플 출력

    +----------------+-------------+
    | Zone Name      | Zone Status |
    +----------------+-------------+
    | az-central     | available   |
    | az-datacenter1 | available   |
    | az-datacenter2 | available   |
    +----------------+-------------+