지난 시간에는 오브젝트를 생성해보고 각 오브젝트의 요소와 더불어 컴포넌트란 것에 대해 살펴보았습니다. 그렇다면 이러한 오브젝트를 조금 더 잘 다룰 수 있도록 하나의 요소가 더 있습니다. 바로 기즈모죠! 물론 앞선 강의에서는 이미 기즈모를 사용하고 있었습니다. 

 

화면에서 요소를 사용하기 편하게 만들어주기 위한 이정표들을 우리는 기즈모라 부릅니다. 

여러 요소가 기즈모로 표현함으로써 유니티 사용을 조금 더 용이하게 만들어줍니다. 

 

1. 기즈모


화면을 움직여주는 도구 
'이동'도구 오브젝트를 이동시켜준다.
'회전'도구 오브젝트를 회전시켜준다.
'스케일'도구 오브젝트의 크기를 늘려주거나 줄여준다.

 

2. 씬 기즈모


Scene 뷰의 오른쪽 위에는 이러한 씬 기즈모가 존재한다. 원뿔의 정육면체에 붙어있는 모양새를 하고 있는데, 씬 기즈모를 활용해서 어떠한 시점을 보고 있는지 확인할 수 있다. 여기서 각각의 요소를 클릭함으로써 원하는 시점으로 이동할 수도 있다.

 

  지난 시간에 실습했던 것을 기준으로 한번 보도록 하겠다. [기존 실습한 파일이 없더라도 상관없다.]

 

실제로 실습을 해보면 이러한 모양새가 됨을 확인할 수 있다. 원하는 시점에 따라 기즈모를 선택함으로써 시점 관리를 편하게 할 수 있다.

 

3. Presp(퍼스펙티브), Iso(아이소메트릭) 모드


씬 기즈모에는 두가지 요소가 있다. 퍼스펙티브 모드와 아이소메트릭 요소이다. 씬 기즈모 아래에 모드를 선택할 수 있는 요소가 준비되어 있다.

Persp으로 되어 있다. 실제로 클릭하면 Iso로 바뀌는 것을 확인할 수 있다.

실제로 눌러보면 변화가 일어난다. 아래의 gif를 확인해보자.

 

누를 때마다 바뀌는 것을 볼 수 있다. 두 개의 차이점은

  • Iso : 사람의 눈은 보는 시점에 따라 사물이 다르게 보인다. 하지만 게임을 만드는 입장에서 이러한 변하는 시점은 도움이 되지 않는다. 그래서 멀리있는 사물이나 가까이 있는 사물이나 실제 크기로 보여주도록 하는 것이다. 
  • Persp : 관점에 따라 사물은 변하는데, 이러한 현실 세계의 시점을 반영해서 실제처럼 표현해준다. 즉 멀리있으면 작아지고 가까이 있으면 커지는 형태를 표현하는 것이다.

이 기능은 실제로 유용하게 사용된다. 멀리 있는 오브젝트를 작게 지정한줄 알았는데, 가까이서 보니 생각보다 커지는 경우가 있기 때문이다. 예를 들어, 사람에게 다가오는 공을 지정했는데, 가까이서 보니 사람보다 더 큰 공으로 보이는 경우도 있는 것이다. (물론 실제 오브젝트 생성시에 조심하겠지만, 비율에 대한 이야기는 중요하므로 이러한 기능도 유용하게 사용된다.)

 

 

  씬 기즈모의 관점을 바꾸는 기능은 기즈모를 오른쪽 클릭해서 바꾸기도 한다. 기즈모를 직접 만들어서 사용할 수도 있습니다. (이러한 커스텀 기즈모는 나중에 알아보도록 하겠습니다.)

 

 

4. 기즈모 핸들 포지션 토글


 

기즈모 핸들포지션에는 트랜스폼 도구 기즈모의 위치와 기즈모 자체를 조작하는데 사용하는 중심점을 어떻게 움직이는지에 대해 정의하는데 사용합니다.

 

  • 피벗(Pivot) / 센터(Center)
  • 로컬(Local) / 글로벌(Global)

으로 이루어져 있습니다

 

  • (피벗)Pivot : 피벗은 기즈모의 위치가 오브젝트의 위치를 기준으로 이러한 기즈모를 표사해줍니다.
  • 센터(Center) : 센터는 기즈모의 표시점의 위치가 오브젝트의 중앙점을 기준으로 표시해줍니다. 오브젝트의 생김새의 중앙점을 표시하게 되는 것이죠. [오브젝트의 형태를 기준으로 중앙점이라 생각하면 됩니다]

 

  • 로컬(Local) : 선택한 오브젝트를 기준으로 한 좌표계
  • 글로벌(Global) : 실제 선택한 오브젝트에 대한 좌표계는 무시한체로 글로벌 좌표계를 기준으로 봅니다. 글로벌 좌표계는 게임 세상의 절대 좌표로 사용합니다.

 

이러한 요소는 기본 오브젝트에서 나오지 않지만, 디자이너가 오브젝트의 중심점을 어디로 보냐에 따라 값이 다르게 나옵니다. 예를 들어, 사람을 모델링해서 유니티에 임포트 시켰을 경우, 일반적으로 디자이너는 발 쪽에다가 피벗을 두는 경우가 많습니다. 그래야 땅 속으로 들어가지 않으니까요. 이렇게 디자인하는 요소에 따라 기즈모 핸들 포지션은 중요합니다. 

 

일반적으로 기즈모 핸들 포지션은 기본적으로 피벗/글로벌 의 형태로 두고 게임 제작을 많이 합니다. 이는 취향 차이이지만 피벗을 기준으로 만들어진 경우가 많아서 피벗 / 상대좌표계는 좌표의 혼동이 있을 가능성이 있으므로 글로벌 좌표계를 많이 사용합니다. 

 


여기에 추가로 우리의 시점 관리가 힘든 경우가 많습니다. 그래서 시점 관리를 편하게 하는 몇 가지 단축키를 살펴보도록 하겠습니다. 

 

  • Alt를 누른체로 마우스를 클릭해서 이리저리 돌려보면 특정 축을 기점으로 시야가 회전함을 알 수 있습니다. 

Alt를 누른체로 화면 시야 이동


  • Move 도구나 Transform을 움직이는 동안 Ctrl키를 누르고 있으면 특정 단위 만큼씩 움직일 수 있습니다. 뒷자리가 소수가 나오는 것이 아닌 딱딱 떨어지는 값이 나옵니다. 

 


  • Move를 사용할 때, Shift와 Control키를 누르고 있으면, 두 오브젝트가 충돌하지 않게 이동시켜 줍니다. 만약 겹쳐지려고 하면 오브젝트를 조금 더 먼 곳으로 이동 시켜줍니다. (겹침 방지 해주는 것이죠.)


  • Rotate 회전 툴을 사용할 때, Shift와 Control 키를 누르고 방향을 이동시키면 특정 방향을 바라보게 만들 수 있습니다. 특히, 특정 오브젝트 방향으로 바라볼 수 있도록 해줍니다. 

오브젝트에서Collider 표면의 한 점을 향해 회전하는 것을 볼 수 있습니다.


  • 버텍스 스냅 : Move나 Transform도구를 사용하고 있을때, V를 누르면 버텍스 스냅 모드가 활성화 됩니다. 버텍스 스냅 모드는 오브젝트를 정렬할 때 유용하게 쓰이는데, 다른 오브젝트에 딱 붙이도록 도와줍니다. 

버텍스 스냅을 통해 오브젝트를 정리하면 빠르게 오브젝트 정리가 한결 쉬워짐니다. 

위에서 V를 누르는 순간 찰싹 달라붙는 것을 확인할 수 있습니다. 


이번 시간에는 기즈모를 사용하는 방법과 시점 그리고 유용한 단축키를 알아보았습니다. 

단순히 눈으로만 보시지 마시고 항상 실습을 하면서 진행하시기 바랍니다!

 

* 공감과 댓글은 글을 이어가는데 힘이 됩니다. 감사합니다.

 

 

 

1. 오브젝트


  지난 시간까지 기본적인 Unity UI 요소들에에 대해 알아보았습니다. 그렇다면 이번에는 유니티의 기본적인 요소 중 하나인 오브젝트를 한번 다뤄보도록 하겠습니다. 

 

  일반적으로 화면에 나타나 있는 모든 물체는 Object(오브젝트)라 불리는 물체에 의해 표현됩니다. 이러한 오브젝트는 사람의 눈에 보일수도 있고 눈에 보이진 않지만 어떠한 그룹을 이룰수도 있는 것이죠. 예를 들어, 마법을 사용하는 것이 가능한 게임에서 Sleep(잠재우기) 마법을 썻다고 가정 해봅시다. 이러한 마법은 화면 상에 나오지 않을 수도 있습니다. [이펙트 자체가 표시 안 될 수도 있는 것이죠] 이러한 마법이 날라가는 상황에서 Sleep이라는 오브젝트가 형성됩니다. 다만 사람의 눈에는 안보이게 형성될 뿐이죠. 

 

이러한 오브젝트는 객체지향이라 하는 프로그래밍 기법에서 출발하게 되었습니다. 객체 지향(Object - Oriented)는 컴퓨터 프로그래밍을 도와주기위한 하나의 패러다임 중 하나입니다. 컴퓨터 프로그램 자체르르 명령어의 집합으로만 생각해서 프로그래밍을 하려면 머리가 아프죠. 그래서 생각해낸 것이 실제 생활하는 현실 세계를 기반으로 시뮬레이션을 돌릴 수 있도록 만든 것이 바로 객체 지향 프로그래밍입니다. 프로그래머가 조금 더 쉽게 코딩할 수 있도록 생각을 단수화할 수 있는 특정 시각을 만들어준 것이죠.

 

  물론 객체 지향이라는 표현을 너무 단순화한 경향이 있지만 대략적인 객체 지향의 의미는 이러한 의미를 갖는다고 보면 됩니다. 

 

  유니티의 세계에서도 이러한 객체 지향 프로그래밍의 영향을 받아 오브젝트란 단어를 사용합니다. 실제로 게임은 현실 세계를 시뮬레이션하기 위한 도구였으니 충분히 그 맥락이 이해가 될 것입니다. (추가로, C#은 객체지향적 프로그래밍 언어이기 때문에 이러한 C#을 기본 언어로 채택하고 있는 유니티는 당연히 객체 지향적 관점으로 바라볼 수 있습니다.)

 

 

2. 프로젝트 생성


  오브젝트란 무엇인지 간략하게 알아보았으며, 우리는 새 프로젝트를 만들고 이제 오브젝트를 다루어보도록 하겠습니다. 가장 먼저, 프로젝트를 생성해보도록 하겠습니다. 

 

1.  가장 먼저 Unity Hub를 실행합니다. 

2. 유니티 허브에서 프로젝트 -> 새로 생성 을 눌러줍니다. 

 

3. 먼저, 3D를 선택하도록 하겠습니다. 3D를 이용해서 여러 카메라의 관점을 배워보도록 할 것입니다. 

2D와 3D에서 당연히 2D가 생각할 요소가 더 적기 때문에 2D가 쉽지만 요새의 게임은 3D로 만들고서 2D로 카메라로 촬영하는 방식을 사용하고 있습니다. 그래서 처음부터 조금 힘들 수도 있지만, 3D 요소로 시작해보도록 하겠습니다. 

 

두번째로, 프로젝트 이름을 생성하도록 하겠습니다. 여기서는 첫 프로젝트라 생각하고 주어진 이름 그대로 사용하도록 하겠습니다. 'New Unity Projcect'

 

세번째로, 저장위치입니다. 일반적으로 저장 위치는 C:\Users\[사용자이름] 의 형태로 주어지게 됩니다. 이는 변경하셔서 사용해도 되고 아니면 그냥 이대로 사용하셔도 상관없습니다. 일반적으로 프로젝트 이름과 비슷하게 짓거나 폴더 구조를 체계적으로 잡기 위한 이름을 사용합니다.

이대로 생성하도록 하겠습니다.


간혹 프로젝트를 시작했는데, 

이러한 메시지를 보내기도 합니다. 업데이트가 있어서 그런거니 업데이트를 해주셔도 되고 안해주셔도 됩니다. 하지만 치명적인 업데이트가 아닌 이상 일단은 업데이트를 하지 않도록 하겠습니다. 

Skip new version 을 눌러주도록 하겠습니다.

 


기본적인 구조는 지난 포스트에서 살펴보았으므로 이번에는 오브젝트 생성에 집중하도록 하겠습니다. 만약에 진행함에 있어서 힘드신 분은 지난 포스트를 보고서 같이 따라해주시면 되겠습니다. 

[유니티 입문]2강. 프로젝트 생성과 유니티 툴의 기본 구조 

 

[유니티 입문]2강. 프로젝트 생성과 유니티 툴의 기본 구조

이전 시간까지 유니티 한글 적용과 더불어, 실행하는 방법까지 알아보았습니다. 이번 시간에는 기본적인 유니티의 기본 구조에 대해 살펴보도록 하겠습니다. 유니티를 실행하면, 이러한 구조로

studium-anywhere.tistory.com

 

 

4. 실행하고 나면 기본화면이 보이게 됩니다. 

 

 

3. 오브젝트 만들기기


  오브젝트를 만드는 방법은 여러가지가 있습니다. 그 중에서 우리는 2가지 정도를 소개하도록 하겠습니다. 가장 많이 쓰이는 사용됩니다. 

 

게임 오브젝트 -> 3D 오브젝트 -> 큐브

를 선택해주도록 하겠습니다. 만약에 영어버전으로 진행하시는 분은 GameObject -> 3D Object -> Cube로 하시면 됩니다. 

 


위의 방법을 사용하셔도 되며, 혹은 계층 구조에서 오른쪽 클릭하신 뒤에 게임

오브젝트 -> 3D 오브젝트 -> 큐브

의 순으로 진행하셔도 됩니다.

 

 

오브젝트 생성완료!

 

 

실제로 게임 화면 가운데에는 3D 오브젝트인 큐브가 만들어진 것을 확인할 수 있습니다. 

이외에도 '게임 오브젝트(GameObject)' 메뉴에 있는 내용은 다양하게 있습니다.

 

  • 빈 오브젝트 : 여러 오브젝트를 한번에 관리하기 위한 목적으로 사용되는 오브젝트입니다. 예를 들어, 사람을 오브젝트로 구성한다고 한다면 머리, 몸통, 팔, 다리 로 구성되어 있습니다. 캐릭터가 이동한다면 모두 한번에 이동해야 하는데, 따로 구성되어 있다면 이러한 몸 따로 몸통 따로 다리 따로 움직이겠죠? 이러한 사태를 막기 위해 빈 오브젝트를 사용합니다. 눈에는 보이지 않지만, 결속이 되어 있는 무언가를 사용할 때 주로 빈 오브젝트(Empty Object)를 사용합니다.
  • 3D 오브젝트 : 3D 오브젝트는 3D환경에서 쓰이는 여러 형태를 만들 때 사용합니다. 큐브(Cube), 구체(Sphere), 캡슐(Capsule), 원기둥(Cylinder), 평면(Plane), 쿼드(Quad) 등으로 이루어져 있습니다. 이러한 오브젝트를 활용해서 여러 형태를 만들어냅니다. 물론 우리가 생각하는 캐릭터를 만들 경우에는 다른 소프트웨어에서 만든 3D 모델링 된 캐릭터를 삽입해서 사용합니다. 다양한 형태를 만들기에는 유니티로 만들기가 힘들기 때문에 다른 소프트웨어를 사용합니다. 

* 각각의 오브젝트는 꼭 생성해보고 이리저리 움직여보고 크기도 키워보면서 실습해보시기 바랍니다. 백 마디의 말보다 한번의 실습이 훨씬 더 체득하기 좋습니다. 그래서 이리 만저보고 저리도 만저보시면서 실제로 어떻게 작동하고 움직이는지 꼭! 살펴보시기 바랍니다.

 

※ 모델링에 사용되는 소프트웨어는 다양합니다. 3D Max, MaYa, 포토샵 등 여러 도구가 있습니다. 디자이너가 디자인한 여러 모델링된 것을 임포트함으로써 사용합니다. 

 

 

이러한 형태로 아마존 아이콘을 만들어서 사용하기도 합니다. (AWS에서 사용되는 여러 아이콘 요소들입니다.) * 디자인 요소는 유니티 강의에서 다루지 않을 예정입니다. 하지만 너무 실망하지 않으셔도 됩니다. 우리는 Asset이라 하는 디자이너가 미리 디자인한 요소를 가지고 여러 유니티의 요소를 다루어볼 예정이기 때문에 디자인은 걱정하지 않아도 됩니다.

 

  • 효과 : 게임에는 다양한 효과(Effect)가 있습니다. 폭발도 있을 수 있으며, 달려갈 때는 바람이 휙휙 날라가는 이펙트가 만드시 필요하죠. 그러한 효과를 만들기 위한 오브젝트입니다. 
  • 광원(Light) : 빛에 관련한 오브젝트입니다. 우리가 무언가를 보기 위해서 빛이 필요하듯이 그러한 광원 요소입니다. 

광원을 추가함으로써 현실과 더욱 비슷한 게임을 만들 수 있게 됩니다. 

  • 오디오 : 소리 요소를 표현하기 위해 사용하는 오브젝트입니다.
  • 비디오 : 비디오를 재생할 때 사용합니다. 간략한 쿠키영상을 보여주는 형태를 비디오로 통해 표현합니다.
  • UI : User Interface의 약자로 사용자가 실제로 조작하는 부분을 보여주기 위해 화면에 만들어야 하는데, 이러한 화면 요소를 UI오브젝트를 통해 관리합니다. 
  • 카메라 : 영화에서 보여주고자 하는 부분을 카메라로 찍어서 보여주듯이 게임도 마찬가지입니다. 그렇다면 이러한 화면을 찍기 위한 카메라가 필요하겠죠? 그래서 카메라 오브젝트로 이러한 요소를 조절합니다. 카메라는 1개 외에도 더 많은 카메라를 만들기도 합니다. 또한 2인용 게임을 위해 화면을 분할해서 사용하는 기법을 사용하거나 심지어 미니맵도 이러한 카메라를 하늘에다가 드론처럼 찍으면서 만드는 것입니다.

 

4. 오브젝트를 다루기


오브젝트를 다루기 위해서는 오른쪽 옆에 있는 인스펙터(Inspector)를 활용해서 다양한 오브젝트 요소를 다루게 됩니다. 아래 그림에서 보이는 곳이 바로 인스펙터입니다. ↓

이러한 인스펙터는 컴포넌트(Component)라는 요소로 이루어져 있습니다. 컴포넌트마다 특성이 존재하며 이러한 컴포넌트를 활용해서 오브젝트는 자신만의 역할을 부여받게 됩니다.

 

실제로 오브젝트 - 컴포넌트에다 스크립트를 추가함으로써 오브젝트가 실제로 동작할 수 있도록 진행하는 것입니다. 

초록색으로 표시한 곳이 각각의 컴포넌트입니다. 조금더 아래로 스크룰해서 내리게 되면 '컴포넌트 추가(Add Component)' 가 있습니다. 거기서 다양한 추가할 수 있는 컴포넌트를 구경할 수 있습니다. 

 

 

혹은 상단 메뉴바에 컴포넌트 메뉴를 통해서 확인할 수 있습니다.

 

 

컴포넌트 요소에서 가장 많이 사용하는 요소는 Transform요소입니다. [그리고 자동으로 부여되는 요소이기도 하죠]

  • 포지션 : 오브젝트의 위치를 조정한다. x, y, z축으로 움직인다.
  • 회전 : 오브젝트를 회전시키는 요소
  • 스케일 : 오브젝트의 크기를 조정한다. 

각각의 요소는 이리저리 만져보면서 익혀보는 것이 가장 좋습니다. 이것저것 만진다고 문제 생기는 것이 아니기 때문에 마음껏 만져두세요!

 

실제 오브젝트를 클릭함으로써 여러 요소를 사용할 수 있습니다. 팁을 드리자면 단축키론느 q,w,e,r,t를 사용할 수 있습니다. 리그오브레전드 게임을 한다고 생각하세요! 각각의 요소를 화면을 통해 만져볼 수도 있으며, 

컴포넌트에서 각각의 요소 위에 올린 뒤에  화살표가 ↔ 모양새로 바뀌면 이를 통해 움직이면서 바꿔볼 수도 있습니다. 혹은 수치를 입력함으로써 각 요소를 움직일 수도 있습니다. 다양하게 움직이는 방법이 있으니 여러 요소를 직접 확인해보시면서 연습해보시면 됩니다.

 

또 다른 중요한 컴포넌트 요소는 RigidBody(리지드 바디)입니다. 

리지드 바디는 우리가 흔히 이야기하는 물리 요소라 생각하면 됩니다. 각 오브젝트를 실제로 실행시켜보면 하늘에 떠있는 형상이 됩니다. 

시작 버튼을 눌렀음에도 하늘에 떠있습니다. 이는 물리엔진이 적용되지 않은 상태이므로 실제 상황과 비슷하려면 물리엔진을 넣어보도록 하겠습니다. 

 

 

# Rigid Body(리지드 바디) 간단 구현


자 우리가 배운대로 하나씩 만들어보도록 하겠습니다. 위에서 배운 내용을 제대로 이해하고 있는가 체크하는 단계이기도 합니다. 하나씩 말로 설명된 부분을 따라하면서 진행하도록 하겠습니다. 

 

1. 게임 오브젝트 -> 3D -> 큐브(Cube)

을 만들어주도록 하겠습니다. 큐브 요소는 캐릭터나, 오브젝트들의 바닥이 되어줄 존재입니다. 무한정으로 떨어지면 안되겠죠? 

2. 큐브에서 포지션 X : 0, Y : 0, Z : 0으로 만들고, 회전은 Z : 10, 스케일을 X : 100, Y : 2, Z: 10 

으로 만들어줍니다.  

 

이렇게 만들어 줍니다. (살짝 기울여서 만든 이유는 오브젝트가 굴러갈 수 있는 요소를 만들어두기 위함입니다. 실제로 눈으로 보고 확인해야 하니 기울여둠으로써 어떻게 작동하는 여부에 대해 살펴볼 수 있습니다. )

 

3. 또 다른 Cube를 만들어줍니다. 

이 큐브는 위에서 떨어뜨릴 요소입니다. 만들어 준 뒤에 

포진션을 변경해줍니다. [X : 0, Y : 5, Z: 0]  참고로 Y는 10도 상관없습니다. 높이를 더 높이셔도 됩니다. 

여기에 컴포넌트 추가해서 Rigid Body를 추가해주도록 합니다.

 

 

4. 실제 실행보도록 합니다. 상단에 있는 플레이 버튼을 누르면 실행됩니다. 

* Y의 값을 조정하면서 각각의 요소마다 어떻게 달라지는지 확인도 한번 해보세요!

자 이렇게 우리는 물리요소도 다룰지 알게 되었습니다. 

 

 

그래서 이번 시간의 숙제는 각 요소를 만들어놓고 직접 다루어보기가 숙제입니다!

  IT가 점점 부상함에 따라 같이 떠오르고 있는 분야가 있다. 바로 클라우드 분야이다. 

클라우드 - Cloud 즉 구름이라는 의미이다. 이러한 클라우드는 네트워크 속이 어떤 경로인지 모르기에 구름처럼 표시한 것에 유래되어 클라우드란 이름이 붙기 시작한 것이다. 

 

  정보 시스템에서는 기본적으로 '정보를 공개' 한다는 의미의 정보 투명성을 기반으로 운영한다. 하지만 클라우드는 오히려 그 반대다. 정보를 공개하는 것이 아닌 오히려 불투명하게 만들어 안보이게 만드는 것이다. 다른 말로 어떤 작동을 하는지 몰라도 나는 그것을 쓸 수 있도록 만들어주는 것이다. 알약 속에 정확하게 어떤 성분이 들어있는지 모르더라도 그 약의 효능은 우리가 아는 것처럼 클라우드 또한 마찬가지이다. 

 

  그래서 클라우드 컴퓨팅은 사용자가 원하면 바로 (On-demand Self Service), 어디에 있든 네트워크를 통해서 (broad network access), 필요한 컴퓨팅 자원들을 제공 (Resource Pooling), 필요한 만큼만 쓰고(rapid elasticity), 사용한 만큼만 지불하는 (Measured Service)

 

클라우드는 총 세 가지 종류가 있다.

  • IaaS(InfraStructure as a Service)
  • PaaS(Platform as a Service) 
  • SaaS(Software as a Service)

 

Iaas의 경우, 하드웨어 계열을 빌려주는 형태

Paas의 경우, 하드웨어와 함께 기본적인 OS, 미들웨어, 런타임을 같이 빌려주는 형태이다.

SaasS의 경우, 하드웨어부터 소프트웨어까지 모든 걸 다 빌려준다. 우리는 서비스만 하면 되게 미리 셋팅해놓은 것을 이야기한다.

 

각각의 장단점이 있지만, 여기서는 장단점에 대해 살펴보는 것이 아니니 대략적으로 알아보았다. 더 설명이 필요하다면, 이곳을 통해 간략하게 보도록 하자. 혹은 이곳 에서 나름 정리가 잘 되어 있다.

 


  자 이렇게 서비스가 모두 되어 있지만, 적어도 우리의 도전 정신은 여기서 끝나지 않는다. 어차피 클라우드를 통해서 사용하는건 사용하는거지만, 직접 모든 걸 다 구축해보고나서 관리의 용이함을 위해 클라우드에 들어가도 되지 않는가 라는 생각이 든다.

 

  추가로 클라우드는 생각보다 비싸다는 것이 필자의 생각이다. 아 물론 실제 대규모 운영에서는 클라우드는 오히려 싸게 먹힐 수 있다. 관리 인원을 두지 않아도 될 뿐더러, 하드웨어 비용과 관련한 모든걸 부담하지 않아도 되며, 심지어 소규모에서도 간략하게 시작하기 너무 좋다. 그러나 사람이라면! 역시! 하드웨어를 포기할 순 없다! (feat. 좋은 컴은 언제나 옳다) 컴퓨터를 이쁘게 꾸며 보고 싶은 생각이 든다면 당연히 해야 하지 않겠는가?

 

  더불어 클라우드에서 제공하는 엄청나게 좋은 하드웨어를 임대하려면 가격이 좀 많이 비싸다... 사실 그 정도 비용이면 집에서 운영하는게 나을 수도 있다. (전기세는 나중에 생각하도록 하자) 사실 필자는 9kw급 태양열을 달아놔서 괜찮다.  클라우드에서 제공하는 월 비용은 트래픽 비용과 더불어 서버 임대 비용까지 합하면 생각보다 많은 비용이 소모가 된다. 그래서 남는 컴퓨터가 있다면 한번쯤은 서버 구축도 나쁘지 않다고 생각한다. 백업만 잘해두면 언제든 새롭게 구축을 할 수 있으며, 기본적인 서버 구축 소양을 갖추니 일석 이조이지 않겠는가?

 

Ex) AWS(Amazon Web Service)와 마이크로소프트 Azure(애저)가 대표적이다.


라는 상상을 가지고 출발하였다.

 

일단 필자의 시작은 미니컴퓨터로부터 시작했다. 

대략 이렇게 생긴 친구이며, 굉장히 작다. 대략적인 크기가 115mm * 112mm * 32mm 이 정도의 크기를 가지고 있는 매우 아담한 PC이다. 

사양은

CPU : i5 - 5200U , 2.20GHz

RAM : 8GB

SSD : 120GB

정도로 시작했다. 

하지만 하드웨어가 없더라도 실망하지 말길 바란다. 우리는 가상머신이 존재하기에 VMware를 사용하면 된다. 

 

www.vmware.com/kr.html

도 같이 존재한다. 

 


우리는 항상 Free!를 추구하므로 무료와 관련해서만 찾아보도록 하겠다. 그래서 운영체제도 무료 라이센스인 리눅스를 사용하고자 한다.

 

리눅스에도 다양한 종류가 있는데, 우분투(Ubuntu), 센토스(CentOS)가 대표적이다. 다양한 리눅스 OS가 있지만, 이 두 가지가 가장 많이 쓰이므로 하나씩 보도록 하자. 앞으로의 서버 셋팅은 이러한 우분투와 센토스를 바탕으로 설치를 해볼 예정이다. 

+ Recent posts