Neutron (Networking Service)
- 정의: OpenStack의 네트워크 관리 서비스
VM에 IP를 할당하고, 서브넷/라우터/보안 그룹 등을 관리
- 주요 기능
- L2/L3 네트워크 구성 (스위치/라우터 역할)
- IP 주소 관리 (DHCP)
- Floating IP로 VM 외부 노출
- 보안 그룹(SG)과 방화벽 정책 관리
- 비교
- 전통 네트워크 장비 대신 소프트웨어 정의 네트워크(SDN) 역할
- Nova는 VM 생성, Neutron은 네트워크 연결 담당
아키텍처 구성 요소
| 구성요소 | 역할 |
|---|
| neutron-server(API) | 사용자·서비스 요청 수신 |
| neutron-dhcp-agent | VM에 IP 자동 할당(DHCP) |
| neutron-l3-agent | 라우터·NAT 관리 |
| neutron-metadata-agent | VM이 메타데이터 조회 가능하게 지원 |
| neutron-openvswitch/ovn-agent | 실제 가상 스위치/라우터 동작 담당 |
네트워크 타입
- Flat: 단일 네트워크, VLAN 없음
- VLAN: 물리 네트워크와 연계된 VLAN 기반 격리
- VXLAN/GRE: 오버레이 네트워크 (가상화 환경에서 많이 사용)
- Provider Network: 물리 네트워크 직접 연결
- Self-service Network: 테넌트(프로젝트)별 격리된 가상 네트워크
네트워크 기본 명령어
1. 프로젝트 네트워크 생성
openstack network create private-net
2. 서브넷 생성
openstack subnet create --network private-net \
--subnet-range 192.168.10.0/24 private-subnet
3. 라우터 생성 후 연결
openstack router create router1
openstack router add subnet router1 private-subnet
openstack router set router1 --external-gateway public-net
4. VM 생성 시 네트워크 지정
openstack server create --flavor m1.small \
--image cirros \
--network private-net \
--key-name mykey test-vm
5. 네트워크 확인
openstack network list
openstack subnet list
openstack port list
운영 팁
- VM이 외부 통신 불가 시 점검
- 보안 그룹 규칙 확인 (ICMP, TCP/22 허용 여부)
- 라우터와 외부망 연결 상태 확인
- Floating IP 할당 여부 확인
- 로그 경로
학습
- Floating IP
- 내부(private) → 외부(public) 통신 가능
- 보안 그룹 vs 방화벽
- 보안 그룹: VM NIC 단위 인바운드/아웃바운드 제어
- FWaaS(방화벽 서비스): 프로젝트 전체 네트워크 제어
- 고급 기능
- LBaaS(로드밸런서 서비스)
- VPNaaS(프로젝트 간 VPN)