티스토리 뷰
현재 각 기업의 인프라는 가상화로 좀 더 효율적으로 변화하고 있다.
플랫폼으로는 오픈스택, kubernetes가 대표적이며, 이러한 플랫폼들이 사용하는 컴포넌트들은 docker, lxc, neutron, nova, cinder 등 여러 컴포넌트 들을 사용한다.
플랫폼이란 개념이 네트워크 엔지니어로서는 생소하거나 어려울 수 있는데, 좀 더 쉽게 비유하여 풀어보자면..
[오픈스택]
- neutron : 네트워크 컴포넌트
- nova : 인스턴스 프로비저닝 컴포넌트
- cinder : 스토리지 컴포넌트
- 기타 수십개의 컴포넌트...
이렇게 여러 컴포넌트라는 구성품(?)들이 합쳐진 플랫폼이 오픈스택이다.
간단히 표현하자면, PC를 구성하는 부품이 컴포넌트고, 부품들이 모인 PC가 플랫폼이라고 생각하면 편하다.
이러한 가상화된 플랫폼들을 수용하기 위해서 네트워크 또한 기존 legacy 방식에서 변화하게 되었다.
그 기술로 현재 가장 대표적인 것이 VxLAN(Virtual Extensible Local Area Network)이다.
그렇다면 어떤면때문에 네트워크에서 VxLAN이 사용되는지 조사해 보았다.
VxLAN 도입 배경/장점
1. 가상화된 플랫폼에 따른 mac주소 수용 가능
- 기존 VLAN은 2^12인 약 4094개의 VLAN을 사용할 수 있다. 하지만, 인프라 플랫폼들이 가상화 됨에 따라 1개의 베어메탈 머신에 수십, 수백개의 가상머신 or 컨테이너가 사용되고 있다.
인프라 규모가 크지 않다면, 문제가 되지 않겠지만, 규모가 큰 인프라에서는 문제가 될 수 있다.
예를 들면, 기존 스위치의 mac주소 spec보다 많은 가상머신이 존재할 수 있다.
datasheet 상에 mac-table이 수십~수백만개 수용이 된다고 하더라도, 벤더사에서 측정하는 수치는 딱 그 성능에 대하여만 측정하기에 높게 나온 수치다.
에를 들어 mac-table 같은 경우, 장비의 메모리와 연관되어 있는데, 실제 환경에서처럼 다른 메모리(ex 라우팅)를 함께 사용하는 상태에서 측정이 아닌, 오로지 mac-table만 메모리를 사용하는 상태(기본 백그라운드 프로세스 제외)에서 측정하는 수치인 것이다. 때문에 실제 인프라에선 더 낮은 성능을 보일 수 밖에 없다.
그런데 현재 인프라가 1개의 베어메탈에서 수백개 이상의 mac주소가 있다면? 혹은 확장된다면?
기존 legacy한 네트워크 기술로는 한계에 부딪힐 수 밖에 없게 된다. 때문에 VxLAN은 이러한 요소를 해결할 수 있는 기술이다.
간략하게는
스위치가 VTEP으로 지정되어 있다면, VTEP 스위치에서 해당 도메인의 mac을 관리하고, VTEP들은 각 VTEP스위치의 mac만 알면 된다.
(자세한 동작 과정들은 나중에 포스팅)
거창하게 작성하긴 했지만, 대규모 인프라가 아닌 대부분의 기업은 사실 필요가 없다. 오히려 적합하지 않고, 성능상의 저하만 일으킬 수 있다.(MTU 증가 등)
2. 유연성
-VxLAN의 가장 큰 장점이라고 생각한다. 1번의 경우에는 대규모 인프라에서만 해당되는 장점이었다면, 유연성은 모든 인프라에 장점이 된다.
예를 들어, legacy 네트워크는 A라는 서버가 B라는 네트워크로 이전되어야 할 때, IP와 GW 변경이 필수적이다.
이건 굉장히 많은 사이드카 작업들이 생겨난다.
왜냐하면 이 서버의 IP로 요청하는 내부서비스나 대외서비스가 있을지도 모르기 때문이다.
그런데 IP가 바뀐다면?.....
하드코딩된 개발이 들어갔다면 하드코딩된 IP를 바꾸어주어야 하고, 이에 대한 개발자와 협업도 필요하고, 이게 단순 peer통신이 아닐경우에는 peer이외에 부서와 협업도 필요하고, 이외에도 여러가지로 많은 것들을 고려하고 작업해야 한다.
하지만, VxLAN을 사용한다면? VTEP 스위치가 GW가 되기 때문에 IP/Gateway를 변경할 필요가 없어진다.
IP/Gateway를 변경할 필요가 없어지기에 굉장히 많았던 dependency한 작업들이 없어지게 된다.
이러한 작업들에 BGP, Multicast, IGMP 등의 기술들이 사용되며, 자세한 과정들은 나중에 포스팅하기로..
느낀점
VxLAN도 공부하고, 여러 네트워크 기술들을 공부하다보니 최근 네트워크 트렌드에 대한 공통점을 발견했다.
VxLAN도 end node에서 보는 Network를 같게 한다는 점
BGP Anycast도 사용자가 Cache DNS를 같게 볼 수 있게 만드는 기술이라는 점
모두 어떻게보면 Proxy의 형태라고 볼 수도 있는데, 이런 형태로 트렌드가 바뀌어가고 있는 것 같다.
- Total
- Today
- Yesterday
- link aggregation
- date 시간 지정
- Switch
- vni
- dns 동작 방식
- tag
- vtep
- 윈도우
- docker logs
- Windows
- multiple ping
- iso8601
- data plane
- ssh
- ping
- ping multi
- date 미래
- 802.1ax
- http/0.9
- date 시간 변경
- vlan
- 802.3ad
- bash
- HTTP/1.1
- HTTP
- http/1.0
- head end replication
- dns 동작
- VXLAN
- date 과거
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |