작성
·
386
2
선생님 가상화와 리눅스가 대해 설명해주셔서 조금은 알게되었습니다. 다만 리눅스를 사용하는 이유와 가상화를 사용하는 이유에 대해서 조금더 설명해주셨으면 좋겠습니다.
리눅스가 윈도우 대신 사용되는 이유는 오픈소스이기 때문에 비용적인 측면의 절감이 있어서 인가요?
그리고 고전적인 HW- OS 방식대신 하이퍼바이져로 여러 OS를 올리는 이점도 잘모르겠습니다 . 그냥 하나의 OS에서 여러 앱이나 프로그램을 굴리면 안되는건가요? 가상 OS를 올리는데도 시스템 리소스가 사용될(어느정도인지는 잘모르겠지만)수밖에 없다고 생각하는데, 하나의 OS에서 사용하는것보다 이점이 뭔지 궁금합니다. 감사합니다
답변 1
10
안녕하세요. langster님.
컴퓨터나 서버와 같은 일반적인 컴퓨터 시스템에는 운영 체제를 설치해야 정상적인 사용이 가능합니다. 개인용 컴퓨터에 리눅스를 설치해 사용하는 사람들도 있지만 윈도우즈에 비하면 굉장히 소수일 것입니다. 하지만 기업에서 서비스를 위해 사용하는 컴퓨터(일명 서버)에는 리눅스가 많이 사용됩니다. 많은 기업에서 리눅스를 선택하는 이유는 다양할 것입니다. 말씀하신 것처럼 비용적인 문제도 있을 수 있습니다. 하지만 리눅스도 유료로 사용하는 상용 리눅스가 있고, 이 또한 많이 사용되고 있습니다. 단순히 돈 문제만은 아니라는 것이죠.
기업에서 고객에게 어떤 서비스를 제공하기 위해서는 여러 가지 구성 요소가 필요할 것입니다. 여기에 필요한 여러 구성 요소를 윈도우즈에도 설치할 수 있고, 리눅스에 설치할 수도 있다면 가격이나 성능, 유지보수와 같은 측면을 고려해 둘 중 하나로 결정하겠죠. 반면 서비스에 필요한 구성 요소가 리눅스에서만 제공 가능하다면 리눅스를 선택할 수밖에 없겠죠.
또 커널 코드의 공개 및 코드 수정과 관계된 부분도 있습니다. 리눅스는 리눅스 커널 코드를 투명하게 공개하고 있습니다. 원한다면 커널 코드를 수정해 사용할 수도 있습니다(물론 라이선스 문제가 있습니다만, 이 문제는 별개로 하고요). 반면에 윈도우즈 커널은 소스가 공개되지 않기 때문에 코드 수정은 원천적으로 불가능합니다.
운영체제의 특성 문제도 있을 수 있습니다. 윈도우즈 계열은 기능이 많은 대신 동작이 무겁고 리소스를 많이 소모하는 것으로 알려져 있습니다. 그에 비해 리눅스는 경량화하기도 쉬워 임베디드 시스템에 많이 사용됩니다.
이와 같이 운영 체제의 특장점이 다르고, 기업마다 니즈가 다르기 때문에 일률적으로 뭐가 더 좋다고 말할 수는 없습니다. 하지만 이와 같은 특징들을 고려해 운영 체제를 결정하게 되죠. 결과적으로 기업용 컴퓨터 시스템에는 리눅스가 상당히 많이 사용되고 있습니다.
가상화에 대한 답변 드리겠습니다.
단적으로 예를 들어 질문하나 드리자면.. 질문주신 langster님께서 리눅스에서는 동작하지 않고 윈도우즈에서만 동작하는 게임을 하면서도 리눅스 실습을 하려면 어떻게 하시겠어요? 가상 머신의 힘을 빌리지 않는다면 컴퓨터나 노트북을 한 대 더 구입하시는 방법 밖에 없습니다. 이런 경우도 가상화 기술이 아주 적절하죠^^
서로 다른 운영 체제가 필요한 경우도 있지만, 같은 운영 체제에 같은 버전이 여러 대 필요한 경우도 있습니다. 1번 서버에는 패키지 A의 v1을 설치하고, 2번 서버에는 패키지 A의 v2를 설치하고 싶을 수도 있죠. 또 고객 트래픽이 몰리는 새벽에는 1대의 서버만 구동하고, 트래픽이 몰리는 시간에는 10대의 서버를 구동할 수도 있습니다.
물론, 말씀하신 대로 가상 머신을 구동하기 위한 리소스도 필요합니다. 공짜는 아닌 거죠. 대신 확장성과 유연성이라는 큰 장점을 가질 수 있게 됩니다.
가상화라는 것이 작게는 내 PC에 설치하는 가상 머신부터 클라우드 환경의 컨테이너 가상화까지.. 그 개념과 범위가 무척 넓습니다. 간단한 답변으로 설명드리기에는 좀 쉽지 않네요 ^^;
가상화 기술을 다루는 회사의 블로그에는 가상화에 대한 설명이 잘 정리되어 있습니다. 구글링을 통해 직접 찾아보셔도 좋고, 아래의 링크를 가 보시는 것도 좋습니다.
https://www.alibabacloud.com/ko/knowledge/what-is-virtualization
https://www.vmware.com/kr/solutions/virtualization.html
https://www.redhat.com/ko/topics/virtualization/what-is-virtualization
답변이 길어졌네요. ;) 더 궁금한 내용 있으시면 추가 질문 남겨주세요.
감사합니다!
정말 상세한 설명 감사합니다