인프런 커뮤니티 질문&답변

뽀또공장1님의 프로필 이미지

작성한 질문수

그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}

2.1.쿠버네티스 실습 환경 업그레이드

강사님, ARM계열의 CPU 사용에 대해 질문이 있습니다.

작성

·

447

0

질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다.
다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다!

[질문 전 답변]
1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요] 모르겠습니다.
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요] 모르겠습니다.
3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요]
(https://www.inflearn.com/blogs/1719) 예
4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

[질문 하기]

 

안녕하세요 조훈님, 강의 [쉽게 시작하는 쿠버네티스]를 너무 잘 듣고 CKA를 목표로 해당 강의도 수강하려는 학생입니다.

먼저 질 좋은 강의 제공해주셔서 감사하다는 말씀을 전합니다!! 감사합니다.

다름이 아니라, 궁금한 점이 있어서 질문을 드립니다.

강의 소개에서 M1,M2 와 같은 ARM 계열의 CPU는 실습이 불가능하다고 하셨는데, 혹시 그 이유에 대해서 여쭤봐도 괜찮을까요?
실습을 진행하면서 에러가 많이 발생해서 그에 대한 대처를 일일이 하기 힘들다 같은 이유일까요..? 아니면 쿠버네티스가 arm 계열의 cpu에선 잘 작동하지 않는것이 이유일까요..?

제가 노트북을 맥북으로 구매를 하려고해서요.. 앞으로 계속해서 개발쪽에서 일하면서 쿠버네티스를 계속 접할 것 같은데, 혹시 후자의 이유라면 고민을 더 해야할 것 같아서요ㅠㅠ 답변 부탁드려도 괜찮을까요?

답변 1

0

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

안녕하세요

아마 시작 쿠버 에 있는 다음의 내용(8.011)을 미처 못 들으신거 같은데..

image

해당 부분에서 설명하는 내용은 대략 이렇습니다.

ARM으로 안되는건 아니고, x86-64과 ARM은 CPU 구조가 틀립니다.

CPU구조가 틀리다는 것은 커널이 달라지는 얘기입니다.

커널이 달라진다는 것은 커널에서 프로세스로 동작하는 컨테이너가 달라진다는 얘기가 됩니다.

컨테이너가 ARM에 맞게 제공된다면 동작하는 것에는 문제가 없습니다.

도커 허브 등에 가시면 그래서 플랫폼(CPU/커널)이 명시되어 있습니다.

imagehttps://github.com/docker-library/official-images#architectures-other-than-amd64

 

그런데, M1,M2가 안되는 이유는

1차적으로는 VirtualBox가 x86-64를 위한 목적으로 제작되어 있기 때문입니다. 최근에 M1,M2의 요구사항이 매우 많아져서 지원된다고 나와 있기는 하나..호스트 시스템에 따라 안되는 경우가 많고, 현재 x86-64의 경우에도 다양한 호스트 환경(실제 사용하시는 랩탑들이 모두 다른 애플리케이션들이나 다 목적으로 사용되다 보니 다양한 설정들이 적용되어 있습니다.) 이 존재하여 정말 관련 질문들이 많이 들어오는데 이것조차도 힘듭니다.

그런데 M1,M2는 기본적으로 Virtualbox에서 지원하기로 한지도 얼마 안되었고..

온라인에서 여기서 나오는 다양한 질문을 처리하거나 도와드리는것에는 자신이 없습니다.

또한 레퍼런스가 그만큼 없다는 것도 문제입니다.

2차적으로는 x86-64가 아닌 ARM으로 지원되는 애플리케이션(컨테이너)가 모두 준비가 되어 있어야 하고 테스트 되어야 한다는 것입니다.

수업이 모두 진행이 되려면 테스트되고 문제가 없음이 확인되어야 하는데 플랫폼을 2중으로 가지고 가게 되면 이를 모두 테스트하고 검증하기가 어렵습니다. (즉 2배가 아니라 3-4배 시간...을 예상)

실제 하드웨어를 가지고 테스트를 해야 하기도 하니 M1,M2를 제가 가지고 있기도 해야 한다는거죠...

M1,M2가 ARM이긴 하나...확실하게 테스트한건 아닌데 M1과 M2의 차이에 기인해서 (호스트 시스템이니까요) 발생하는 문제가 있을수도 있습니다.

 

아마 수업을 들으셔서 아시겠지만 쿠버네티스는 컨테이너가 모여서 동작하는 일종의 MSA 구성입니다.

그래서 질문에 대한 답을 드리자면....

ARM에서 쿠버네티스가 잘 안된다는건 아니지만...

(현업 관점도 비슷) 레퍼런스가 많이 없는 것은 하지 않는다

라고 보시면 될 것 같습니다.

 

실무적으로도 정량적인 단위를 얘기하기는 어렵지만, x86-64 위에서 돌아가는 컨테이너가 한국의 경우 압도적으로 많습니다.

 

또 노트북 구매쪽으로 약간 의견을 드리면,

M1,M2가 매우 좋은 것은 맞으나..인프라 관점에서는 애매하기도 합니다.

쿠버네티스+인프라를 잘 이해하고 이미 충분히 잘 사용하실 수 있다면 M1,M2가 문제되지는 않으실꺼 같고요 (minikube vs. 네이티브/바닐라 kubernetes) 이 둘 간의 차이를 충분히 이해하신다면 minikube에서 M1,M2가 동작하니 사용 가능하십니다.

그래서 인프라 구조 공부를 목적으로 하실때는 중고 x86-64 랩탑이라도 구해서 쓰시고, M1,M2는 개발용으로 따로 쓰시는게 가장 좋지 않을까 의견 드립니다.

도움이 되셨으면 좋겠습니다.

뽀또공장1님의 프로필 이미지
뽀또공장1
질문자

올려주신 영상의 2번째는 보지 못했네요 ㅠㅠ 가서 한번 보도록하겠습니다.

그리고 주말 아침부터 정성을 다해서 답변해주셔서 감사드립니다.
강사님의 의견을 참고하여 앞 길을 생각해보도록 하겠습니다 ㅎㅎ

다시 한번 좋은 의견을 내주셔서 감사드립니다!!