8.2. Networking(neutron)
OpenStack Networking(neutron)은 클라우드 환경 내에서 네트워크 아키텍처를 생성하는 기능을 제공합니다. 이 프로젝트는 소프트웨어 정의 네트워킹(SDN) 벤더에 대한 여러 통합 지점을 제공합니다. 이러한 통합 포인트는 일반적으로 플러그인 또는 에이전트 카테고리에 속합니다.
플러그인은 기존 neutron 기능을 확장 및 사용자 정의할 수 있습니다. 공급업체는 neutron과 인증된 소프트웨어와 하드웨어 간의 상호 운용성을 보장하기 위해 플러그인을 작성할 수 있습니다. 자체 드라이버 통합을 위한 모듈식 백엔드를 제공하는 neutron Modular Layer 2(ml2) 플러그인의 드라이버를 개발합니다.
에이전트는 특정 네트워크 기능을 제공합니다. 기본 neutron 서버와 해당 플러그인은 neutron 에이전트와 통신합니다. 기존 예제에는 DHCP, 계층 3 지원, 브리징 지원에 대한 에이전트가 있습니다.
플러그인과 에이전트 둘 다의 경우 다음 옵션 중 하나를 선택할 수 있습니다.
- RHOSP(Red Hat OpenStack Platform) 솔루션의 일부로 배포를 위해 이를 포함합니다.
- RHOSP 배포 후 오버클라우드 이미지에 추가
기존 플러그인 및 에이전트의 기능을 분석하여 인증된 하드웨어 및 소프트웨어를 통합하는 방법을 결정합니다. 특히, 먼저 ml2 플러그인의 일부로 드라이버를 개발하는 것이 좋습니다.
업스트림 리포지토리:
업스트림 Blueprints:
- Launchpad: http://launchpad.net/neutron
Puppet 모듈:
Bugzilla 구성 요소:
- openstack-neutron
- python-neutronclient
- openstack-puppet-modules
- openstack-tripleo-heat-templates
통합 노트:
업스트림
neutron
프로젝트에는 다음과 같은 몇 가지 통합 지점이 있습니다.-
플러그인은
neutron/plugins/
에 있습니다. -
ml2 플러그인 드라이버는
neutron/plugins/ml2/drivers/
에 있습니다. -
에이전트는
neutron/agents/
에 있습니다.
-
플러그인은
-
OpenStack Liberty 릴리스부터 많은 공급업체별 ml2
플러그인이 네트워킹
에서 시작되는 자체 리포지토리로 이동되었습니다. 예를 들어 Cisco 특정 플러그인은 https://github.com/openstack/networking-cisco에 있습니다. puppet-neutron
리포지토리에는 이러한 통합 지점을 구성하는 별도의 디렉터리도 포함되어 있습니다.-
플러그인 구성은
manifests/plugins/
에 있습니다. -
ml2 플러그인 드라이버 구성은
manifests/plugins/ml2/
에 있습니다. -
에이전트 구성은
manifests/agents/
에 있습니다.
-
플러그인 구성은
-
puppet-neutron
리포지토리에는 구성 기능을 위한 다양한 추가 라이브러리가 포함되어 있습니다. 예를 들어neutron_plugin_ml2
라이브러리는 ml2 플러그인 구성 파일에 속성을 추가하는 함수를 추가합니다.