핵심 내용
이틀간의 고군 분투 끝에 오라클 클라우드 프리티어 계정을 생성했다👇👇👇. 오늘은 VM을 만들어볼 예정.
https://gibles-deepmind.tistory.com/140
본 글에서 다루는 내용
1. Tenancy와 Compartment
2. VCN
3. VM 생성
3-1. ssh-key 생성 (feat. git bash)
3-2. vm 생성
3-3. 원격 접속
1. Tenancy와 Compartment
오라클 클라우드에는 Tenancy와 Compartment라는 개념이 있다. 편의상 Tenancy는 그냥 세입자라고 하겠다. 현재, 나는 클라우드 공간내 어느 부분의 자원을 점유하고 있는것이니, 내 계정(=root)을 세입자라고 할 수 있다.
그리고, 내 집의 각 구역을 Compartment라고 할 수 있다. 방/거실/화장실 등등. 중요한 것은 오라클 클라우드에서는 자원을 할당 받을 때마다, 항상 Compartment를 생성해주어야 한다는 것. 우리도 VM을 만들거니까 Compartment를 생성해주자.
1-1. Navigation → Identity & Security → Compartments
1-2. Create Compartment 클릭 → Name/Description입력
※Parent Compartment는 tenancy로 자동 지정 되어 있다.
1-3. 잠시 기다리면 생성 완료 → Compartment를 추가하면서 Tenancy의 Subcompartments가 1로 변경
2. VCN(VIRTUAL CLOUD NETWORK)
Oracle data center안에서 설정하는 가상의 사설 네트워크를 의미한다. VM 인스턴스 실행 시 사용할 네트워크 자원을 미리 할당 받아 두는 것이라고 생각하면 된다. 자세한 내용은 아래 공홈 참고 👇👇👇https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/managingVCNs.htm#VCNs_and_Subnets
2-1. HOME → Pinned → Virtual Cloud Networks 클릭
2-2. Compartment 클릭 → Start VCN Wizard 클릭
만약, VCN Wizard 없이 생성하고 싶은 경우. 아래 공홈 링크 참조 👇👇👇
https://docs.oracle.com/en/learn/create-vcn/index.html#introduction
2-3. 설정 그대로 Start VCN Wizard 클릭
2-4. VCN NAME 입력 → Compartment에서 방금 생성한 구획 선택후 → Next 클릭(나머지 설정은 그대로) → Create 클릭
여기까지. 진행하면 아래와 같이 생성된 VCN 정보를 확인할 수 있다.
3. VM 생성
3-1. SSH Key생성
3-1-1. SSH(Secure Shell) Key란?
VM은 로컬에 존재하지 않으므로, 원격 통신을 해야 한다. 원격 통신 할 때, 상호 간의 신뢰성을 담보하는 수단을 SSH Protocol이라고 한다. Private Key와 Public Key 두 쌍을 생성하고, 서버에 공개키를 전달한다. 그리고, 그 공개키가 내가 가진 사설키와 일치하는지 확인한다. 일치하면 서버가 날 반겨준다.
VM을 생성하는데, SSH를 먼저 얘기하는 이유는 VM 생성 전 미리 SSH Key 생성을 권장하는 글들이 많았기 때문이다.
3-1-2. SSH(Secure Shell) Key 생성 방법
첫 번째, 윈도우에서는 putty라는 프로그램을 이용하여 만들 수 있다.
두 번째, CLI(리눅스, 맥)에서 ssh-keygen -t rsa 명령어를 실행하여 생성할 수 있다.
ssh-keygen -t rsa
나는 git-bash를 이용해 윈도우에서 위 명령어를 이용해 SSH-key를 생성했다. 접속도 git-bash에서 할 예정. 완료되면 아래와 같은 화면이 나온다.
.ssh 폴더 내에서 PUB 파일을 열어보면
아래와 같이 ssh-rsa로 시작하는 파일이 있는데 이게 공개키다. VM 생성 시 이 공개키를 그대로 복사해서 전달해 줄 예정
3-2. VM 생성
3-2-1. Computer → Instance 클릭 → Create instance
3-2-2. 이름 및 구획 설정 - 적당한 이름 입력 및 최초에 생성한 Compartment(구획) 선택
3-2-3. Image and Shape 수정
Oracle 리눅스 → 우분투로 변경
AMD VM → ARM VM 으로 변경
※단, ARM으로 인스턴스를 생성할 경우, Free trial기간 종료 후 30일 이내 인스턴스가 삭제될 수도 있음. 그게 귀찮으신 분들은 AMD로 생성
https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier.htm
3-2-4. Add SSH Keys ★★★★★★★★★★★★★★★★★★★★
아까 만든 공개키를 여기에 복붙해준다!!!! 제일 중요!!! Paste public keys!
3-2-5. Boot volume 설정
최대 볼륨은 200! 혹시, 다른 인스턴스를 생성할지도 모르니 우선 100으로 설정해두었다. VPU는 기본 설정이 10이나, 나는 20으로 변경해주었다. Reddit에서 검색해보니, 20이상으로 올려도 별 소용은 없다는 듯
여기까지 하고 Create 버튼을 클릭한다. 그럼 생성 완료! + 이후 고정 IP발급까지 같이 진행했는데, 해당 블로그에 설명 엄청! 자세하게 되어있다. 참고해서 진행하시길
3-3. VM접속
수신 규칙에 기본적으로 22번(=SSH) 포트가 열려 있다.
ssh -i id_rsa ubuntu@공용IP주소
위와 같이 입력하면 아래와 같이 나오는데 Yes를 입력해준다. 그리고, 비밀번호를 입력해주면
접속 성공이다.
맥에서도 들어가봅시다. 저는 드랍박스에 key file을 넣어놔서 맥 내에서도 동일한 key 값을 참조했다. 아래 명령어를 맥에서 그대로 실행하면 에러가 발생한다
ssh -i id_rsa ubuntu@공용IP주소
왜냐하면, id_rsa키 값의 권한 때문인데, 아래와 같이 group과 other에 읽기 권한이 있기 때문
그래서 사용자 외에는 모든 권한을 다 막아주면, 정상적으로 실행된다.
chmod 600 id_rsa
'딥상어동의 딥한 프로그래밍 > 엔지니어링' 카테고리의 다른 글
[ubuntu] ssh connection timed out (0) | 2022.08.16 |
---|---|
[fast api] - uvicorn으로 api서버 실행하기 (0) | 2022.08.15 |
오라클 클라우드(1) - 계정 생성, 공짜를 누리려는 자 그 무게를 견뎌라 (0) | 2022.08.07 |
Ganglia Web Interface 관련 링크 모음 (0) | 2022.07.29 |
[Airflow] 데이터 적재 파이프라인 튜토리얼 - 서울시 지하철호선별 역별 승하차 인원 정보 적재하기 (2) | 2022.06.12 |
제 블로그에 와주셔서 감사합니다! 다들 오늘 하루도 좋은 일 있으시길~~
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!