네트워킹 옵션 1: 프로바이더 네트워크 > OpenStack 자료실

본문 바로가기

사이트 내 전체검색

뒤로가기 OpenStack 자료실

네트워킹 옵션 1: 프로바이더 네트워크

페이지 정보

작성자 jkchoi 작성일 21-07-09 09:24 조회 4,068 댓글 0

본문

1. 구성 요소 설치

# yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-linuxbridge ebtables


2. 서버 구성요소 구성

네트워킹 서버 구성요소 구성에는 데이터베이스, 인증 메커니즘, 메시지 큐, 토폴로지 변경 알림, 플러그인을 포함합니다.


  /etc/neutron/neutron.conf 파일을 수정하고 다음 작업을 완료합니다:

  1)  [database] 섹션에서, 데이터베이스 액세스를 구성합니다:

      [database]
      # ...
      connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron

      - NEUTRON_DBPASS 를 데이터베이스에 대해 선택한 암호로 변경합니다.

      [database] 섹션 내 다른 connection 옵션들을 주석 처리 또는 제거합니다.

  2) [DEFAULT] 섹션에서 Modular Layer 2 (ML2) 플러그인을 활성화하고 부가적인 플러그인을 비활성화 합니다:

      [DEFAULT]
      # ...
      core_plugin = ml2
      service_plugins =

  3) [DEFAULT] 섹션에서, RabbitMQ 메시지 큐 액세스를 구성합니다:

      [DEFAULT]
      # ...
      transport_url = rabbit://openstack:RABBIT_PASS@controller

      - RabbitMQ의 openstack 계정의 암호로 RABBIT_PASS 를 변경합니다.

  4) [DEFAULT] 및 [keystone_authtoken] 섹션에서는, Identity 서비스 액세스를 구성합니다:

      [DEFAULT]
      # ...
      auth_strategy = keystone

      [keystone_authtoken]
      # ...
      auth_uri = http://controller:5000
      auth_url = http://controller:35357
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = neutron
      password = NEUTRON_PASS

      - Identity 서비스에서 neutron 사용자의 암호로 NEUTRON_PASS 를 변경합니다.

      [keystone_authtoken] 섹션 내 다른 옵션들을 주석 처리 또는 제거합니다.

  5) [DEFAULT] 와 [nova] 섹션에서 네트워크 토폴로지 변경이 발생했을 때 Compute에 알려주도록 네트워킹을 구성합니다

      [DEFAULT]
      # ...
      notify_nova_on_port_status_changes = true
      notify_nova_on_port_data_changes = true

      [nova]
      # ...
      auth_url = http://controller:35357
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      region_name = RegionOne
      project_name = service
      username = nova
      password = NOVA_PASS
     
      - Identity 서비스에서 nova 사용자의 암호로 NOVA_PASS 를 변경합니다.

  6) [oslo_concurrency] 섹션에서, lock 경로를 구성합니다

      [oslo_concurrency]
      # ...
      lock_path = /var/lib/neutron/tmp


3. Modular Layer 2 (ML2) 플러그인 구성

  ML2 플러그인은 인스턴스에 대한 layer-2 (브리징과 스위칭) 가상 네트워킹 인프라를 구축하여 리눅스 브릿지 메커니즘을 사용합니다.

  /etc/neutron/plugins/ml2/ml2_conf.ini 파일을 수정하고 다음 작업을 진행합니다:

  1) [ml2] 섹션에서 flat, VLAN 네트워크를 활성화합니다

      [ml2]
      # ...
      type_drivers = flat,vlan

  2) [ml2] 섹션에서 셀프 서비스 네트워크를 비활성화합니다

      [ml2]
      # ...
      tenant_network_types =

  3) [ml2] 섹션에서 리눅스 브릿지 체계를 활성화합니다

      [ml2]
      # ...
      mechanism_drivers = linuxbridge
 
      - ML2 플러그인을 구성한 후, type_drivers 옵션의 값을 제거하게 되면 테이터베이스 불일치가 발생할 수 있습니다.

  4) [ml2] 섹션에서 포트 보안 확장 드라이버를 활성화 합니다

      [ml2]
      # ...
      extension_drivers = port_security

  5) [ml2_type_flat] 섹션에서 프로바이더 가상 네트워크를 플랫 네트워크로 구성합니다

      [ml2_type_flat]
      # ...
      flat_networks = provider

  6) [securitygroup] 섹션에서 시큐리티 그룹 규칙의 효율을 높이기 위해 ipset 을 활성화합니다:

      [securitygroup]
      # ...
      enable_ipset = true


4. 리눅스 브릿지 에이전트 구성

  리눅스 브릿지 에이전트는 인스턴스에 대한 layer-2(브릿징과 스위칭) 가상 네트워킹 인프라를 구축하고 시큐리티 그룹을 처리합니다.

  Edit the /etc/neutron/plugins/ml2/linuxbridge_agent.ini file and complete the following actions:

  1) [linux_bridge] 섹션에서, 프로바이더 물리 네트워크 인터페이스에 프로바이더 가상 네트워크를 매핑합니다

      [linux_bridge]
      physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME

    - 물리적인 공용 네트워크 인터페이스를 기본으로 하여 PROVIDER_INTERFACE_NAME 을 변경합니다.

  2) [vxlan] 섹션에서, VXLAN 오버레이 네트워크를 비활성합니다

      [vxlan]
      enable_vxlan = false

  3) [securitygroup] 섹션에서 시큐리티 그룹을 활성화시키고 리눅스 브릿지 iptables 방화벽 드라이버를 구성합니다

      [securitygroup]
      # ...
      enable_security_group = true
      firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver


5. DHCP 에이전트 구성

  DHCP agent 가상 네트워크에대한 DHCP 서비스를 제공합니다.

  /etc/neutron/dhcp_agent.ini 파일을 수정하고 다음 작업을 완료합니다:

  1) [DEFAULT] 섹션에서 Linux 브릿지 인터페이스 드라이버, Dnsmasq DHCP 드라이버를 구성하고 격리된 메타데이터를 활성화하여
      프로바이더 네트워크 상의 인스턴스가 네트워크에서 메타데이터를 액세스하도록 합니다:

      [DEFAULT]
      # ...
      interface_driver = linuxbridge
      dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
      enable_isolated_metadata = true

Networking controller node configuration 로 돌아갑니다.

댓글목록 0

등록된 댓글이 없습니다.

Copyright © 소유하신 도메인. All rights reserved.

사이트 정보

회사명 : (주)리눅스데이타시스템 / 대표 : 정정모
서울본사 : 서울특별시 강남구 봉은사로 114길 40 홍선빌딩 2층 / tel : 02-6207-1160
대전지사 : 대전광역시 유성구 노은로174 도원프라자 5층 / tel : 042-331-1161

PC 버전으로 보기