클라우드 컴퓨팅은 가상 머신을 만드는 것만으로 완성되지 않는다. 모든 가상 머신은 사용자, 애플리케이션, 데이터베이스, 인터넷과 통신할 네트워크가 필요하다. OpenStack에서 이 역할을 담당하는 서비스가 Neutron이다.
Neutron은 Network as a Service, 즉 NaaS를 제공한다. 관리자는 물리 스위치와 라우터를 직접 만지는 대신 API를 통해 가상 네트워크, 서브넷, 라우터, Floating IP, 보안 그룹을 만들 수 있고, 테넌트는 독립적인 네트워크 환경을 셀프서비스로 구성할 수 있다. Neutron이 없다면 VM은 존재하더라도 실질적으로 서로 통신하기 어렵다.
OpenStack Neutron이란?
Neutron은 OpenStack에서 가상 머신, 컨테이너, 베어메탈 서버에 네트워킹 기능을 제공하는 서비스다. 가상 네트워크 생성, 서브넷 관리, IP 주소 할당, 가상 라우터, DHCP, Floating IP, Security Group, NAT, 선택적 VPN·로드밸런서 연동, SDN 통합을 담당한다.
전통적인 데이터센터에서는 VLAN 생성, 스위치 설정, IP 할당, 라우터 구성, 방화벽 정책 관리가 수작업으로 진행되는 경우가 많았다. Neutron은 이 과정을 API 기반 자동화로 바꾸며, 수 시간 또는 수일이 걸릴 수 있는 네트워크 프로비저닝을 몇 초 단위로 처리할 수 있게 한다.
Neutron이 중요한 이유
Neutron의 핵심 가치는 멀티테넌트 격리와 네트워크 자동화다. 서로 다른 프로젝트가 같은 사설 IP 대역을 사용하더라도 VXLAN 같은 오버레이 기술로 완전히 분리된 네트워크를 사용할 수 있다. 또한 개발팀이나 운영팀은 필요한 네트워크를 API로 즉시 생성하고 폐기할 수 있다.
셀프서비스 네트워킹 제공 프로젝트별 네트워크 격리 가상 라우터, DHCP, NAT 자동화 Floating IP를 통한 외부 접근 제어 Security Group 기반 인스턴스 방화벽 VLAN, VXLAN, Geneve 등 다양한 L2 기술 지원
Neutron 아키텍처 한눈에 보기
Neutron은 단일 프로세스가 모든 일을 처리하는 구조가 아니다. Neutron Server가 API와 정책을 처리하고, ML2 Plugin이 Layer 2 기술을 추상화하며, DHCP Agent, L3 Agent, Metadata Agent가 실제 네트워크 기능을 분산 수행한다. Open vSwitch 또는 Linux Bridge는 컴퓨트 노드에서 가상 NIC와 물리 NIC 사이의 트래픽을 전달한다.
핵심 Neutron 구성요소
구성요소역할핵심 기능Neutron Server네트워킹 서비스의 중앙 컨트롤러API 처리, 네트워크 DB 관리, 플러그인 조정, 인증 검증, 정책 적용ML2 PluginModular Layer 2 프레임워크VLAN, VXLAN, GRE, Flat, Geneve 같은 L2 네트워크 타입을 공통 API로 제공DHCP Agent인스턴스에 IP 주소 자동 할당VM 부팅 시 DHCP 요청을 받아 사설 IP와 게이트웨이 정보를 제공L3 AgentLayer 3 라우팅 서비스 관리가상 라우터, SNAT, DNAT, Floating IP, 외부 네트워크 연결 처리Metadata Agent인스턴스 부팅 메타데이터 제공SSH 키, user data, cloud-init 설정, 인스턴스 ID, 호스트명 전달Open vSwitch / Linux Bridge컴퓨트 노드의 가상 스위칭 계층Tap 인터페이스, VLAN 태깅, VXLAN 캡슐화, 트래픽 포워딩 수행
기본 네트워크 객체: Network, Subnet, Port, Router
Neutron은 네트워크를 몇 가지 논리 객체로 나눠 관리한다. Network는 Layer 2 브로드캐스트 도메인이고, Subnet은 IP 주소 체계와 게이트웨이를 정의한다. Port는 VM의 가상 NIC에 해당하며 MAC 주소, IP 주소, Security Group, 장치 소유 정보를 가진다. Router는 서로 다른 Layer 3 네트워크를 연결하고 외부 네트워크와의 통신을 제공한다.
객체의미예시Network가상 Layer 2 브로드캐스트 도메인Production Network, Development NetworkSubnetNetwork에 연결된 IP 주소 범위와 게이트웨이192.168.100.0/24, Gateway 192.168.100.1PortVM NIC에 대응되는 가상 네트워크 인터페이스MAC 주소, IP 주소, Security Group, device owner 저장Router여러 서브넷과 외부 네트워크를 연결하는 가상 라우터Web Tier 192.168.10.0/24와 DB Tier 192.168.20.0/24 연결
Tenant Network와 Provider Network
Tenant Network는 각 프로젝트가 직접 만드는 격리된 가상 네트워크다. 예를 들어 Tenant A와 Tenant B가 모두 10.10.10.0/24 대역을 사용하더라도 네트워크 가상화 계층이 분리하므로 서로 충돌하지 않는다. 이 격리 능력은 Neutron의 가장 중요한 기능 중 하나다.
Provider Network는 VM을 물리 네트워크에 직접 연결하는 방식이다. 가상 머신이 Provider Network를 통해 물리 스위치와 기업 LAN에 연결될 수 있으므로 구조가 단순하고 성능이 좋을 수 있다. 다만 테넌트별 완전한 셀프서비스 격리가 필요한 환경에서는 Overlay Network와 함께 설계하는 경우가 많다.
Overlay Network: VXLAN, VLAN, GRE, Geneve
오버레이 네트워크는 물리 네트워크 위에 논리 네트워크를 얹는 방식이다. OpenStack에서는 VXLAN이 대규모 멀티테넌트 환경에서 널리 쓰인다. VXLAN은 약 1,600만 개의 네트워크 세그먼트를 제공할 수 있어 VLAN보다 확장성이 뛰어나다.
기술특징운영 관점VXLAN터널 기반 오버레이 네트워크. OpenStack 대규모 배포에서 가장 널리 사용VLAN보다 확장성이 높고 멀티테넌트 격리에 적합하지만 MTU 최적화가 중요VLAN전통적인 Layer 2 세그먼트 분리 방식단순하고 장비 호환성이 좋지만 VLAN ID가 4094개로 제한됨GRELayer 2 트래픽을 터널로 캡슐화하는 방식과거에 많이 쓰였으나 현대 배포에서는 VXLAN이나 Geneve가 더 자주 선택됨Geneve현대 SDN 환경을 고려한 터널링 프로토콜확장 메타데이터를 담기 좋아 OVN 기반 배포에서 활용 가능Flat NetworkVLAN 태그 없이 물리 네트워크에 직접 연결단순한 Provider Network나 관리 네트워크에 사용 가능
Open vSwitch와 Linux Bridge
많은 OpenStack 환경은 Open vSwitch, 즉 OVS를 사용한다. OVS는 가상 스위칭, VLAN 태깅, VXLAN 캡슐화, 플로우 관리, 트래픽 포워딩을 수행한다. VM의 Tap Interface에서 나온 트래픽은 OVS를 거쳐 물리 NIC 또는 터널 인터페이스로 전달된다.
Linux Bridge는 OVS보다 단순한 대안이다. 배포가 쉽고 복잡도가 낮다는 장점이 있지만, 고급 SDN 기능과 세밀한 플로우 제어가 필요한 환경에서는 OVS 또는 OVN 기반 구성이 더 적합한 경우가 많다.
Floating IP와 NAT
테넌트 네트워크의 VM은 일반적으로 사설 IP를 가진다. 예를 들어 192.168.100.10 주소는 인터넷에서 직접 접근할 수 없다. Floating IP는 공인 또는 외부 접근 가능한 IP를 사설 VM에 매핑해 이 문제를 해결한다.
NAT 유형방향Neutron에서의 용도SNAT사설 VM → 외부 네트워크인스턴스가 인터넷이나 외부망으로 나갈 때 출발지 주소를 변환DNAT외부 네트워크 → 사설 VMFloating IP로 들어온 요청을 특정 VM의 사설 IP로 전달Floating IP공인 IP ↔ 사설 IP 매핑운영자가 공개 접근이 필요한 VM에만 외부 IP를 부여해 노출 범위를 제어
Security Group: 인스턴스 단위 가상 방화벽
Security Group은 VM 인터페이스에 적용되는 가상 방화벽이다. 예를 들어 SSH 22번, HTTP 80번, HTTPS 443번만 허용하고 나머지 인바운드 트래픽은 차단할 수 있다. 규칙은 Neutron Port에 연결되어 인스턴스 NIC 수준에서 적용된다.
운영 환경에서는 기본 차단 정책을 유지하고 필요한 포트만 명시적으로 열어야 한다. 관리 네트워크, 애플리케이션 네트워크, 데이터베이스 네트워크를 분리하고 각 계층에 필요한 통신만 허용하는 방식이 안전하다.
VM 네트워킹 워크플로우
사용자가 VM을 실행하면 Nova와 Neutron은 긴밀하게 협력한다. Nova는 컴퓨트 리소스를 준비하면서 Neutron에 네트워크 포트를 요청하고, Neutron은 IP 주소와 보안 정책, 라우팅 정보를 준비한다.
이 과정을 통해 VM은 단순히 실행되는 것에 그치지 않고, 프로젝트 네트워크 안에서 통신 가능하고 필요하면 외부에서도 접근 가능한 상태가 된다.
고가용성 구성
엔터프라이즈 OpenStack 배포에서는 네트워크 서비스의 단일 장애 지점을 줄이는 것이 중요하다. 일반적으로 여러 Neutron Server, 중복 RabbitMQ, 고가용성 L3 Agent, 분산 DHCP Agent, VRRP 기반 가상 라우터를 사용한다. 컨트롤러 노드와 네트워크 노드를 분리하고 장애 조치 절차를 정기적으로 검증하는 것도 필요하다.
자주 발생하는 네트워킹 문제
문제원인해결 방향IP 주소 고갈작은 서브넷, 미회수 포트, 과도한 테스트 네트워크서브넷 확장, IPv6 검토, 미사용 포트 정리, IPAM 정책 수립Overlay 성능 저하VXLAN 캡슐화 오버헤드, MTU 불일치MTU 최적화, NIC 오프로딩 활성화, 고성능 네트워크 카드 사용라우터 병목중앙 집중식 L3 Agent에 트래픽 집중Distributed Virtual Routing, L3 Agent 확장, 라우팅 부하 분산DHCP 실패DHCP Agent 장애 또는 네임스페이스 문제Agent 상태 모니터링, 로그 점검, 네트워크 네임스페이스 확인Security Group 오동작규칙 누락, 방향 설정 오류, 기본 차단 정책 미이해최소 허용 원칙으로 규칙 검토, 인바운드·아웃바운드 방향 분리 확인
운영 모범 사례
대규모 멀티테넌트 환경에서는 VXLAN 또는 Geneve 같은 오버레이 네트워크를 검토하는 것이 좋다. Provider Network와 Tenant Network를 분리하면 보안과 운영 유연성이 높아진다. 또한 컨트롤러와 네트워크 에이전트를 중복 배치하고, RabbitMQ와 데이터베이스의 가용성을 확보해야 한다.
대규모 멀티테넌트 환경에는 VXLAN 또는 Geneve 기반 오버레이를 사용한다. Provider Network와 Tenant Network를 분리해 보안 경계를 명확히 한다. Neutron Server, RabbitMQ, L3 Agent, DHCP Agent의 고가용성을 설계한다. Latency, packet loss, MTU, DHCP 실패, 라우터 상태를 지속적으로 모니터링한다. Ansible, Terraform, OpenStack Heat 같은 도구로 네트워크 구성을 자동화한다.
현대 클라우드 인프라에서 Neutron의 역할
Neutron은 OpenStack의 네트워킹 백본이다. 가상화된 인프라에 소프트웨어 정의 네트워킹 기능을 제공하고, 격리된 테넌트 환경을 만들며, 복잡한 네트워크 프로비저닝을 자동화한다. 프라이빗 클라우드, 통신 플랫폼, 연구 클러스터, 엔터프라이즈 데이터센터 어디에서든 Neutron은 가상 리소스와 물리 인프라를 연결하는 핵심 계층이다.
결론
OpenStack Neutron은 단순한 가상 스위치가 아니라 네트워크를 프로그래밍 가능한 인프라로 전환하는 종합 네트워킹 플랫폼이다. 가상 네트워크, 라우터, DHCP, Security Group, Floating IP, Overlay Network를 관리함으로써 안전하고 확장 가능하며 자동화된 클라우드 환경을 만든다.
OpenStack을 설계하거나 운영하려면 Neutron의 구조와 흐름을 이해하는 것이 필수다. 컴퓨트와 스토리지가 아무리 잘 준비되어 있어도 네트워크가 안정적이지 않으면 클라우드 서비스 품질은 유지되기 어렵기 때문이다.
핵심 요약
Neutron은 OpenStack의 Networking Service이며 Network as a Service를 제공한다. Neutron Server, ML2 Plugin, DHCP Agent, L3 Agent, Metadata Agent가 핵심 구성요소다. Network, Subnet, Port, Router는 Neutron을 이해하기 위한 기본 객체다. VXLAN은 대규모 멀티테넌트 환경에서 확장성과 격리에 강점이 있다. Floating IP는 사설 VM을 외부 네트워크에 안전하게 노출하는 방식이다. Security Group은 인스턴스 단위 가상 방화벽 역할을 한다. 운영 환경에서는 MTU, DHCP, 라우터 병목, 고가용성, 자동화 전략을 함께 고려해야 한다.
