Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

7.2. 네트워크 환경 파일 생성

네트워크 환경 파일은 Overcloud의 네트워크 환경을 설명하고 이전 섹션의 네트워크 인터페이스 구성 템플릿을 가리키는 Heat 환경 파일입니다. IP 주소 범위와 함께 네트워크의 서브넷 및 VLAN을 정의할 수 있습니다. 그런 다음 로컬 환경에 대한 이러한 값을 사용자 지정할 수 있습니다.

director에는 시작할 환경 파일 세트가 포함되어 있습니다. 각 환경 파일은 /usr/share/openstack-tripleo-heat-templates/network/config/ 의 예제 네트워크 인터페이스 파일에 해당합니다.

  • /usr/share/openstack-tripleo-heat-templates/environments/net-single-nic-with-vlans.yaml - single-nic-vlans) 네트워크 인터페이스 디렉터리에서 VLAN 설정이 포함된 단일 NIC의 예제 환경 파일 외부 네트워크 (net-single-nic-with-vlans-no-external.yaml) 또는 IPv6 활성화를 위한 환경 파일 (net-single-nic-with-vlans-v6.yaml)도 사용할 수 있습니다.
  • /usr/share/openstack-tripleo-heat-templates/environments/net-bond-with-vlans.yaml - bond-with-vlans 네트워크 인터페이스 디렉터리의 본딩된 NIC 구성에 대한 예제 환경 파일입니다. 외부 네트워크 비활성화를 위한 환경 파일(net-bond-with-vlans-no-external.yaml) 또는 IPv6 활성화(net-bond-with-vlans-v6.yaml)도 사용할 수 있습니다.
  • /usr/share/openstack-tripleo-heat-templates/environments/net- multiple-nics.yaml - 다중 NIC 설정의 예제 환경 파일 IPv6 (net-multiple-nics-v6.yaml)를 활성화하기 위한 환경 파일도 사용할 수 있습니다.
  • /usr/share/openstack-tripleo-heat-templates/environments/net-single-nic-linux-bridge-with-vlans.yaml - Open vSwitch 브리지 대신 Linux 브리지를 사용한 단일 NIC 구성의 예제 환경 파일, 즉 single-nic-linux-bridge-vlans 네트워크 인터페이스 디렉터리를 사용합니다.

이 시나리오에서는 /usr/share/openstack-tripleo-heat-templates/environments/net-bond-with-vlans.yaml 파일의 수정된 버전을 사용합니다. 이 파일을 stack 사용자의 templates 디렉터리에 복사합니다.

$ cp /usr/share/openstack-tripleo-heat-templates/environments/net-bond-with-vlans.yaml /home/stack/templates/network-environment.yaml

환경 파일에는 다음과 같은 수정된 섹션이 포함되어 있습니다.

resource_registry:
  OS::TripleO::BlockStorage::Net::SoftwareConfig: /home/stack/templates/nic-configs/cinder-storage.yaml
  OS::TripleO::Compute::Net::SoftwareConfig: /home/stack/templates/nic-configs/compute.yaml
  OS::TripleO::Controller::Net::SoftwareConfig: /home/stack/templates/nic-configs/controller.yaml
  OS::TripleO::ObjectStorage::Net::SoftwareConfig: /home/stack/templates/nic-configs/swift-storage.yaml
  OS::TripleO::CephStorage::Net::SoftwareConfig: /home/stack/templates/nic-configs/ceph-storage.yaml

parameter_defaults:
  InternalApiNetCidr: 172.16.0.0/24
  TenantNetCidr: 172.17.0.0/24
  StorageNetCidr: 172.18.0.0/24
  StorageMgmtNetCidr: 172.19.0.0/24
  ManagementNetCidr: 172.20.0.0/24
  ExternalNetCidr: 10.1.1.0/24
  InternalApiAllocationPools: [{'start': '172.16.0.10', 'end': '172.16.0.200'}]
  TenantAllocationPools: [{'start': '172.17.0.10', 'end': '172.17.0.200'}]
  StorageAllocationPools: [{'start': '172.18.0.10', 'end': '172.18.0.200'}]
  StorageMgmtAllocationPools: [{'start': '172.19.0.10', 'end': '172.19.0.200'}]
  ManagementAllocationPools: [{'start': '172.20.0.10', 'end': '172.20.0.200'}]
  # Leave room for floating IPs in the External allocation pool
  ExternalAllocationPools: [{'start': '10.1.1.10', 'end': '10.1.1.50'}]
  # Set to the router gateway on the external network
  ExternalInterfaceDefaultRoute: 10.1.1.1
  # Gateway router for the provisioning network (or Undercloud IP)
  ControlPlaneDefaultRoute: 192.0.2.254
  # The IP address of the EC2 metadata server. Generally the IP of the Undercloud
  EC2MetadataIp: 192.0.2.1
  # Define the DNS servers (maximum 2) for the overcloud nodes
  DnsServers: ["8.8.8.8","8.8.4.4"]
  InternalApiNetworkVlanID: 201
  StorageNetworkVlanID: 202
  StorageMgmtNetworkVlanID: 203
  TenantNetworkVlanID: 204
  ManagementNetworkVlanID: 205
  ExternalNetworkVlanID: 100
  NeutronExternalNetworkBridge: "''"
  # Customize bonding options if required
  BondInterfaceOvsOptions:
    "bond_mode=balance-slb"

resource_registry 섹션에는 각 노드 역할의 사용자 지정 네트워크 인터페이스 템플릿에 대한 수정된 링크가 포함되어 있습니다. 다음 형식을 사용하여 이 섹션에서 사용자 지정 역할에 대한 네트워크 인터페이스 템플릿에 대한 링크도 포함합니다.

  • OS::TripleO::[ROLE]::Net::SoftwareConfig: [FILE]

[ROLE] 을 역할 이름으로 바꾸고 [FILE] 을 네트워크 인터페이스 템플릿 위치로 바꿉니다.

parameter_defaults 섹션에는 각 네트워크 유형에 대한 네트워크 옵션을 정의하는 매개변수 목록이 포함되어 있습니다. 이러한 옵션에 대한 자세한 내용은 부록 A. 네트워크 환경 옵션 을 참조하십시오.

이 시나리오에서는 각 네트워크에 대한 옵션을 정의합니다. 모든 네트워크 유형에서는 호스트 및 가상 IP에 IP 주소를 할당하는 데 사용되는 개별 VLAN 및 서브넷을 사용합니다. 위의 예에서 Internal API 네트워크의 할당 풀은 172.16.0.10에서 시작하며 VLAN 201을 사용하여 172.16.0.200으로 이동합니다. 이로 인해 사용자 환경에서 VLAN 201을 사용하는 동안 172.16.0.10 및 172.16.0.200에서 시작하는 정적 및 가상 IP가 할당됩니다.

외부 네트워크는 Horizon 대시보드 및 공용 API를 호스팅합니다. 클라우드 관리 및 유동 IP 모두에 External 네트워크를 사용하는 경우 VM 인스턴스의 유동 IP로 사용할 IP 풀이 있는지 확인합니다. 이 예에서는 외부 네트워크에 할당된 10.1.1.10에서 10.1.1.50의 IP만 있으므로 IP 주소는 10.1.1.51 이상에서 유동 IP 주소에 사용할 수 없습니다. 또는 유동 IP 네트워크를 별도의 VLAN에 배치하고 생성한 후 Overcloud를 사용하도록 구성합니다.

BondInterfaceOvsOptions 옵션은 nic2nic3 을 사용하여 결합된 인터페이스에 대한 옵션을 제공합니다. 본딩 옵션에 대한 자세한 내용은 부록 D. 본딩 옵션 을 참조하십시오.

중요

Overcloud 생성 후 네트워크 구성을 변경하면 리소스가 사용 가능으로 인해 구성 문제가 발생할 수 있습니다. 예를 들어, 사용자가 네트워크 격리 템플릿에서 네트워크의 서브넷 범위를 변경하면 이미 사용 중인 서브넷으로 인해 재구성이 실패할 수 있습니다.