[Network] Legacy(VM) Network와 Container 기반 Network에 대해서

SlothisSlow·2021년 11월 18일
2

Network

목록 보기
6/18

주말 직무면접에서,
나는 기존의 가상화된(Virtual Machine을 통한 가상화) 네트워크를 발전시킬 수 있는 형태로서
Container기반 가상화 기법을 네트워크에 적용하는 방법을 제안했다.

하지만 이는 과제 이전의 사견과 과제 당시의 임기응변으로 제안했던 방법이었을 뿐, 근거가 제대로 마련된 의견이 아니었다.

당시 내가 제안했던 네트워크의 가상화 진화 방법의 Story Board는 이렇다.

  1. 기존의 네트워크는 Virtual Machine을 사용하는 방식으로 구성되어 있다.
  2. 이는 새로운 네트워크 장비/소프트웨어를 최적화할 때 하나씩 진행해줘야하는 단점이 있다.
  3. 이를 극복하기 위한 방법으로 Container 가상화 기법을 제안한다.
  4. Container를 이용하면 새로운 네트워크 장비/소프트웨어 최적화 시 공통적인 환경설정은 OS(Kernel)에 저장해두고, 개별적인 환경설정은 Container Image에 저장하여 필요 시 바로 사용할 수 있는 장점이 있다.
  5. 실제로 이 회사에서는 AWS WaveLength를 이용하여 MEC(Multi Access Edge Clouding)를 구축했기 때문에, Container와 더불어 AWS Cloud의 VPC, ECS, EKS, ECR 을 종합적으로 이용한다면 편리한 네트워크 설계가 가능하다.

    "따라서 Container, AWS Cloud의 이용을 제안한다."

하지만 이 제안에 대해서 역으로 질문을 받았다.

면접관 曰 :

"Container 기술은 10년 전 기술이다. 제안한 방법이 우수한 것은 모두가 아는데도 불구하고, 기존 망(Legacy) 위에 적용하지 않는 이유가 무엇일지 생각해 보았는가?"

나는 이 질문에 머릿 속에서 떠오르는대로 질문에 응했다.

본인 曰 :

투자 대비 효율이 안나오는게 문제라고 생각한다. 실제로 대부분의 고객이 전화망에대해 불만없이 사용하는 것으로 알고있다. 그렇기 때문에 업무효율을 위한 투자는 과잉투자로 분석될 수 있다.
하지만 Container의 도입 시기를 앞당긴다면, 업무효율을 늘릴 수 있을 것이다.

물론 맞는 말이다. 하지만 기술적인 관점에서 이러한 답변은 좋은 평가를 이끌 수 없다. 어떻게든 기술적 개선방법을 언급했어야했다. 뿐만 아니라, 자칫 면접관 입장에서는 공격적/반항적으로 들릴 수 있었던 0점짜리 대답이었다.

그래서..

오늘 나는 Legacy망(Virtual Machine)Container 가상화기법을 사용한 네트워크의 장단점을 내가 가진 여러 (뇌피셜+근거)를 활용하여 분석해보려고한다.

Container와 Virtual Machine에 대한 기초 배경지식을 바탕으로 이해하는 것을 추천한다.

Container > Virtual Machine

우선 Virtual Machine 대신 Container를 이용하였을 때, 네트워크의 장점에 대해 알아보자.

  • 속도가 빠르다.
  • 구축이 편리하다.
  • 네트워크 유지/보수/최적화에서의 업무효율이 증가한다.

간단하게는 빠르고, 편한 것이 장점이다. 이보다 더 명확한 장점은 없다.

Container < Virtual Machine

하지만 이러한 장점의 이면에는 단점도 존재한다.

  • 컨테이너는 Kernel(OS)위에서 자원을 공유하지 않게 막을 순 있지만, 완벽히 격리시킬 수 없다. 한 마디로 프로세스를 할당할 때 서로 영역을 침범할 가능성이 있다.
  • VM은 각각의 가상화된 머신마다 네트워크 구분을 하면서 운용을 다르게 가져갈 수 있는데 반하여 컨테이너는 하나의 네트워크를 논리적으로 나눠야하기 때문에 오히려 관리가 어려울 수 있다.

간단하게는, 불안정하다.

결론

그렇다면 우리는 어떤 네트워크를 이용하는 것이 가장 좋을까?

정답은 없다. 현업에서는 Legacy망 위에 Container를 올려 장점을 극대화 시키기도 한다.
(Legacy망 위에 Container를 올리는 것은 아마도 Network Slicing이나 Private 5g등 논리적 분할 용도로 사용되는 것으로 추정된다.)

Infra의 기본은 단연 '안정성'이다. 그러한 점에서 Cloud Native(Continer)은 아직 부족한 점이 많다. 현재 Infra 관련 엔지니어들은 계속해서 안정성을 지키면서 장점을 극대화시킬 수 있는 가상화 방법을 찾고 있을 것이다.

나도 지속적으로 이 분야에 관심을 기울이면서, 기존 기술의 개선방법에 대해 모색할 것이다.

Container기반 가상화/Cloud Native의 장점을 구체적으로 살펴보려면,

https://www.netmanias.com/ko/post/blog/14631/5g-sdn-nfv/evolution-to-5g-cloud-native-1

를 이용하도록하자.

profile
Infra Engineer

0개의 댓글