OCI Compartment 만들기

이번 Hands-on Lab에서는 OCI Console과 OCI CLI로 OCI Compartment를 만드는 절차를 소개합니다. 이 Hands-on LabOCI Admin User(OCI 관리자) ID로 OCI IAM 로그인하고 진행합니다.

HOL: OCI Compartment

이번 Hands-on Lab에서는 개발, 테스트, 및 운영 환경 자원을 관리하는 OCI Compartment를 4개 만들어 보겠습니다. 다음과 같은 OCI Compartment를 만들겠습니다.

OCI 컴파트먼트 역할 상위 컴파트먼트
sandbox 데모: 최상위 Compartment root
hol-dev 데모: 개발 환경 Compartment root/sandbox
hol-prod 데모: 운영 환경 Compartment root/sandbox
hol-test 데모: 테스트 환경 Compartment root/sandbox

핸즈온 랩 다음과 같은 순서로 진행합니다.

OCI Compartment 생성: OCI Console

OCI Console에서 다음과 같은 Compartment를 만들겠습니다.

OCI Compartement 역할 상위 컴파트먼트
sandbox 데모: 최상위 Compartment root
hol-dev 데모: 개발 환경 Compartment root/sandbox

sandbox Compartment 생성

OCI Console에서 OCI Compartment 관리 페이지는 다음 메뉴 패스로 이동합니다.

(콘솔 왼쪽 위 햄버그 버튼) Identity Compartments


OCI Compartment 관리 페이지에서 Create Compartment 버튼을 클릭합니다.


Compartment 생성 폼에 다음 설정값을 입력하고 Create Compartment 버튼을 클릭합니다.

입력 항목 설정 값
Name sandbox
Description 데모: 최상위 Compartment
Parent Compartment root


sandbox Compartment가 만들어지면 다음과 같은 Compartment 목록이 출력됩니다. sandbox 링크를 클릭하고 sandbox 상세 페이지로 이동합니다.

hol-dev Compartment 생성

이번에는 sandbox Compartment 아래에 hol-dev Compartment를 만들 차례입니다. sandbox Compartment 상세 페이지에서 Child Compartment 아래에 위치하는 Create Compartment 버튼을 클릭합니다.


Compartment 생성 폼에 다음 설정값을 입력하고 Create Compartment 버튼을 클릭합니다.

입력 항목 설정 값
Name hol-dev
Description 데모: 개발 환경 Compartment
Parent Compartment root/sandbox


hol-dev Compartment가 생성되면 다음과 같은 화면이 출력됩니다.

OCI Compartment 생성: OCI CLI

Oracle Cloud는 OCI 자원을 관리하는 툴로 웹 기반의 OCI Console과 CLI 기반 도구인 OCI CLI를 제공합니다. Cloud Shell은 OCI Console이 제공하는 브라우저 기반 리눅스 터미널입니다. Cloud Shell에서 완전한 환경 구성이 적용된 OCI CLI를 바로 사용할 수 있습니다. Cloud Shell의 OCI CLI를 사용하여 OCI Compartment를 생성해 보겠습니다.

Cloud Shell 열기

OCI Console의 터미널 아이콘을 클릭하면 Cloud Shell이 열립니다. Cloud Shell에 다음 명령을 입력합니다.

oci os ns get

다음 이미지와 유사한 json이 출력된다면 __OCI CLI_가 정상적으로 작동하는 상태임을 확인할 수 있습니다.

OCI Compartment 만들기: hol-prod

cloud shell의 oci cli로 다음 Compartment를 생성할 것 입니다.

OCI 컴파트먼트 역할 부모 컴파트먼트
hol-prod 데모: 운영 환경 Compartment root/sandbox

sandbox Compartment의 OCID

__OCI CLI_로 Compartment를 생성하기 위해서는 생성할 컴파트먼트를 포함할 부모 컴파트먼트의 OCID가 필요합니다. 새로 만들 컴파트먼트의 부모 컴파트먼트는 root/sandbox입니다. 다음 메뉴 패스로 OCI Compartment 관리 페이지로 이동합니다.

(콘솔 왼쪽 위 햄버그 버튼) Identity Compartments


OCI Compartment 관리 페이지에서 sandbox 링크를 클릭하고, sandbox Compartment 상세 페이지로 이동합니다.


sandbox Compartment 상세 페이지에서 OCID의 copy링크를 클락합니다. 이 링크를 클릭하면 sandbox Compartment의 OCID가 클립보드에 복사됩니다.


위에서 복사한 sandbox Compartment의 OCID는 다음과 같습니다.

ocid1.compartment.oc1..aaaaaaaa23dm4ozaskh6oqi5rmkjm6rfni26gkn5fjvd2fb7c63zocusmq6a

hol-prod Compartment 만들기

다음 명령을 복사하여 Cloud shell에서 실행합니다. 다음 명령에서 sandbox의 OCID는 여러분 환경의 sandbox OCID로 바꿔서 실행하시기 바랍니다.

oci iam compartment create --name hol-prod \
--description "데모: 운영 환경 Compartment" \
--compartment-id \
ocid1.compartment.oc1..aaaaaaaa23dm4ozaskh6oqi5rmkjm6rfni26gkn5fjvd2fb7c63zocusmq6a

Cloud Shell에서 실행한 위 명령의 전체 실행 로그는 다음과 같습니다.

taewanme@cloudshell:~ (ap-seoul-1)$ oci iam compartment create --name hol-prod \
> --description "데모: 운영 환경 Compartment" \
> --compartment-id \
> ocid1.compartment.oc1..aaaaaaaa23dm4ozaskh6oqi5rmkjm6rfni26gkn5fjvd2fb7c63zocusmq6a
{
  "data": {
    "compartment-id": "ocid1.compartment.oc1..aaaaaaaa23dm4ozaskh6oqi5rmkjm6rfni26gkn5fjvd2fb7c63zocusmq6a",
    "defined-tags": {},
    "description": "\ub370\ubaa8: \uc6b4\uc601 \ud658\uacbd Compartment",
    "freeform-tags": {},
    "id": "ocid1.compartment.oc1..aaaaaaaacxassmk57phb2wwqygerdssdt4jflvuud7vxanl5iwnr7457tnea",
    "inactive-status": null,
    "is-accessible": true,
    "lifecycle-state": "ACTIVE",
    "name": "hol-prod",
    "time-created": "2020-03-31T12:20:46.555000+00:00"
  },
  "etag": "b800166b433feac765f20972919de7b30d142acd"
}
taewanme@cloudshell:~ (ap-seoul-1)$ 

OCI Compartment 만들기: hol-test

위 작업을 반복하여 OCI CLI로 다음 OCI Compartment를 만드시기 바랍니다.

OCI 컴파트먼트 역할 상위 컴파트먼트
hol-test 데모: 테스트 환경 Compartment root/sandbox

이 작업을 완료한 다음에 sandbox Compartment 상세 페이지로 이동하면, 다음과 같은 결과를 확인할 수 있습니다.

  • 문서 생성: 2020-03-31 12:11 / 최종 문서 수정: 2020-03-31 12:11
  • 김태완 avatar
  • 작성자: 김태완
  • 사랑하는 민수와 데이터 관리, 데이터 분석 & 클라우드에 집중하고 있습니다.
  • E-mail: taewan.me@gmail.com
  • Disclaimer
    이 저작물은 Oracle과 관계없이 개인으로서 개인의 시간을 할애하여 작성된 글 입니다. 본 글의 내용, 입장, 예측은 Oracle을 공식적으로 절대 대변하지 않습니다.