2.4. IPv6 네트워킹 구성
기본적으로 오버클라우드는 인터넷 프로토콜 버전 4(IPv4)를 사용하여 서비스 끝점을 구성합니다. 그러나 오버클라우드는 IPv6 인프라를 지원하는 조직에 유용한 인터넷 프로토콜 버전 6(IPv6) 엔드포인트도 지원합니다. director에는 IPv6 기반 Overcloud를 생성하는 데 사용할 수 있는 환경 파일 세트가 포함되어 있습니다.
오버클라우드에서 IPv6를 구성하는 방법에 대한 자세한 내용은 전체 지침은 전용 IPv6 Networking for the Overcloud 가이드를 참조하십시오.
2.4.1. 구성 가능 IPv6 네트워킹 구성
사전 요구 사항
- 성공적인 언더클라우드 설치 자세한 내용은 director 설치 를 참조하십시오.
- 네트워크는 IPv6 네이티브 VLAN 및 IPv4 네이티브 VLAN을 지원합니다.
절차
기본
network_data
파일을 복사합니다.$ cp /usr/share/openstack-tripleo-heat-templates/network_data.yaml /home/stack/.
network_data.yaml
파일의 로컬 사본을 편집하고 IPv6 네트워킹 요구 사항에 맞게 매개변수를 수정합니다. 예를 들어 외부 네트워크에는 다음과 같은 기본 네트워크 세부 정보가 포함되어 있습니다.- name: External vip: true name_lower: external vlan: 10 ipv6: true ipv6_subnet: '2001:db8:fd00:1000::/64' ipv6_allocation_pools: [{'start': '2001:db8:fd00:1000::10', 'end': '2001:db8:fd00:1000:ffff:ffff:ffff:fffe'}] gateway_ipv6: '2001:db8:fd00:1000::1'
-
name
은 유일한 필수 값이지만name_lower
를 사용하여 가독성을 위해 이름을 정규화할 수도 있습니다. 예를 들어InternalApi
를internal_api
로 변경합니다. -
VIP: true
는 새 네트워크의 기본값을 설정하는 나머지 매개변수를 사용하여 새 네트워크에 VIP(가상 IP 주소)를 생성합니다. -
ipv6
은 IPv6 활성화 여부를 정의합니다. -
ipv6_subnet
및ipv6_allocation_pools
,gateway_ip6
은 네트워크의 기본 IPv6 서브넷 및 IP 범위를 설정합니다.
-
-
-n
옵션을 사용하여 배포와 함께 사용자 지정network_data
파일을 포함합니다.-n
옵션이 없으면 배포 명령에서 기본 네트워크 세부 정보를 사용합니다.
2.4.2. 오버클라우드에서 IPv6 네트워크 격리
오버클라우드는 기본적으로 프로비저닝 네트워크에 서비스를 할당합니다. 그러나 director는 오버클라우드 네트워크 트래픽을 격리된 네트워크로 나눌 수 있습니다. 이러한 네트워크는 배포 명령줄에 포함하는 파일에 기본적으로 network_data.yaml
이라는 이름으로 정의됩니다.
IPv6 주소를 사용하여 네트워크에서 서비스가 수신 대기하는 경우 IPv6 네트워크에서 서비스가 실행 중임을 나타내는 매개 변수 기본값을 제공해야 합니다. 각 서비스가 실행되는 네트워크는 파일 network/service_net_map.yaml
에 의해 정의되며 개별 ServiceNetMap
항목에 대한 매개 변수 기본값을 선언하여 재정의할 수 있습니다. 이러한 서비스에서는 환경 파일에서 매개변수 기본값을 설정해야 합니다.
parameter_defaults: # Enable IPv6 for Ceph. CephIPv6: True # Enable IPv6 for Corosync. This is required when Corosync is using an IPv6 IP in the cluster. CorosyncIPv6: True # Enable IPv6 for MongoDB. This is required when MongoDB is using an IPv6 IP. MongoDbIPv6: True # Enable various IPv6 features in Nova. NovaIPv6: True # Enable IPv6 environment for RabbitMQ. RabbitIPv6: True # Enable IPv6 environment for Memcached. MemcachedIPv6: True # Enable IPv6 environment for MySQL. MysqlIPv6: True # Enable IPv6 environment for Manila ManilaIPv6: True # Enable IPv6 environment for Redis. RedisIPv6: True
코어 heat 템플릿의 environments/network-isolation.j2.yaml
파일은 구성 가능 네트워크 파일에 있는 각 IPv6 네트워크에 대한 모든 포트 및 VIP를 정의하는 Jinja2 파일입니다. 렌더링되면 전체 리소스 레지스트리와 동일한 위치에 network-isolation.yaml
파일이 생성됩니다.
2.4.3. IPv6 격리된 네트워크 구성
기본 heat 템플릿 컬렉션에는 기본 네트워킹 구성을 위한 Jinja2 기반 환경 파일이 포함되어 있습니다. 이 파일은 environments/network-environment.j2.yaml
입니다. network_data
파일을 사용하여 렌더링하면 network-environment.yaml
이라는 표준 YAML 파일이 생성됩니다. 이 파일의 일부 부분에서는 재정의가 필요할 수 있습니다.
사전 요구 사항
- 성공적인 언더클라우드 설치 자세한 내용은 director 설치 를 참조하십시오.
- 네트워크는 IPv6 네이티브 VLAN 및 IPv4 네이티브 VLAN을 지원합니다.
절차
다음 세부 사항을 사용하여 사용자 지정 환경 파일(
/home/stack/network-environment.yaml
)을 생성합니다.parameter_defaults: ControlPlaneDefaultRoute: 192.0.2.1 ControlPlaneSubnetCidr: "24"
parameter_defaults
섹션에는 IPv4에 남아 있는 특정 서비스의 사용자 지정이 포함되어 있습니다.
2.4.4. IPv6 네트워크 인터페이스 템플릿
오버클라우드에는 네트워크 인터페이스 템플릿 세트가 필요합니다. director에는 network_data
파일을 기반으로 렌더링되는 Jinja2 기반 Heat 템플릿 세트가 포함되어 있습니다.
NIC 디렉터리 | 설명 | 환경 파일 |
---|---|---|
|
컨트롤 플레인 및 VLAN이 기본 Open vSwitch 브리지에 연결된 단일 NIC( |
|
|
컨트롤 플레인 및 VLAN이 기본 Linux 브리지에 연결된 단일 NIC( |
|
|
NIC |
|
|
NIC |
|