본문 바로가기

Cloud/Oracle Cloud Infrastructure

24. OCI를 이용해서 데이터베이스 어플리케이션 아키텍쳐 구성하기 - 데이터베이스 (DB 시스템)

2019/01/16 - [Cloud/Oracle Cloud Infrastructure] - 23. OCI를 이용해서 데이터베이스 어플리케이션 아키텍쳐 구성하기 - 데이터베이스

5단계. 데이터베이스 구성

DB 시스템 생성

가상 머신 DB 시스템은 메뉴에서 [Database] > [Bare Metal, VM, and Exadata] 화면에서 만들 있다.


DB 시스템은 노드와 데이터베이스가 담고 있는 배포 단위라고 있다. DB 시스템 레벨에서 가상 머신, 베어 메탈, 또는 엑사데이터로 생성할 지를 결정한다. 노드는 DB 시스템에서 데이터베이스를 설치할 호스트로서 호스트 이름, IP 주소를 할당 받는다. 데이터베이스는 노드 위에 설치된 오라클 데이터베이스이다. DB 시스템의 시작, 종료, 재시작은 노드 레벨에서 이루어진다.

DB 시스템을 만들기 전에 먼저 Compartment 지금까지 다른 인스턴스들을 생성했던 “dbapp_comp”인지 좌측 메뉴의 [Compartment]에서 확인한다. 데이터베이스 생성 화면에서 “Launch DB System” 클릭하면 DB 시스템 생성 창이 나타난다.


먼저 DB 시스템 이름, Shape, 소프트웨어 에디션 등의 DB 시스템 정보를 입력한다.


       Display Name: DB 시스템 이름을 입력한다. “dbsystemp” 입력했다.

       Availability Domain: Availability Domain “AD-1” 선택한다.

       Shape Type: DB 시스템의 Shape Virtual Machine, Bare Metal, Exadata 여기서는 “Virtual Machine” 선택.

       Shape: 생성할 DB 시스템의 Shape 선택한다. “VM.Standard2.1” 선택한다. DB 시스템의 Shape 목록은 하단의 [참조. OCI 데이터베이스] 참고한다.

       Total Node Count: Shape “VM.Standard2.2” (2 OCPU) 이상의 크기를 선택했을 RAC(Real Application Cluster) 위한 노드 (2) 선택할 있다. Trial 계정에서는 자원 부족으로 생성이 불가한 RAC 대신 Single 데이터베이스로 생성할 것이다. Shape “VM.Standard2.1” 선택했기 때문에 노드 선택은 비활성화 되어 있다.

       Oracle Database Software Edition: 오라클 데이터베이스 소프트웨어 에디션을 선택한다. 네개 에디션 Standard Edition, Enterprise Edition, Enterprise Edition High Performance, Enterprise Edition Extreme Performance “Enterprise Edition Extreme Performance” 선택한다. 이후 Data Guard 데이터베이스 장애 대응을 위한 아키텍쳐를 구성할텐데, Data Guard “Enterprise Edition” 이상에서 구성이 가능하기 때문이다. 소프트웨어 에디션에 포함된 데이터옵션의 차이는 다음 글 [참조. OCI 데이터베이스] 참고한다.


       Available Storage Size(GB): 실제 가용한 블록 스토리지 크기. 최소 256 GB에서 부터 최대 40960 GB까지 선택할 있다. 여기서는 256 GB 선택했다.

       Total Storage Size(GB): 데이터베이스 복구를 위한 로그가 포함된, 오라클 내부적으로 할당된 크기. 사용자가 선택하는 값은 아니다. 참조용으로 보여주고 있다.

       License Type: DB 시스템의 라이센스 타입을 선택한다. “License Included” 선택한다.

-         License Included: 오라클 데이터베이스에 대한 라이센스가 포함된 클라우드 서비스 비용

-         Bring Your Own License(BYOL): 기존 오라클 데이터베이스 라이센스를 가지고 있는 사용자가 이를 OCI 데이터베이스에서 사용하려고 하는 경우 선택하는 옵션.

       SSH Public Key: DB 시스템에 SSH 연결을 하려는 경우, Key Pair 퍼블릭 키를 가져온다. 하단의 “Browse” 클릭해서 앞서 사용했던 퍼블릭 키를 로컬 PC에서 가져온다.

 

DB 시스템이 속할 네트웍에 대한 정보를 설정한다.


       Virtual Cloud Network: DB 시스템을 생성할 VCN 선택한다. “dbapp_vcn” 선택

       Client Subnet: DB 시스템에 속할 서브넷을 선택한다. “subnetDBP” 선택

       Hostname Prefix: DB 시스템의 호스트 이름을 입력한다. 영문 알파벳으로 시작해야하며 숫자와 하이픈(-) 포함할 있다. 최대 30자리까지 허용한다. 여기서는 “vmdbp”라고 입력했다.

       Host Domain Name: DB 시스템의 도메인 이름을 입력한다. 소속된 서브넷이 오라클이 제공하는 인터넷과 VCN Resolver 사용한다면 수정할 없다. 여기서는 비활성화 되어 있을 것이다.

       Host and Domain URL: 호스트 이름과 도메인 이름이 합쳐진 형태로 데이터베이스에 대한 FQDN(Fully Qualified Domain Name) 출력한다. 수정 불가.

 

참조. Client Subnet 선택 주의할

DB 시스템을 RAC 구성하는 경우, 서브넷이 192.168.16.16/28 겹쳐지지 않도록 한다. IP 오라클 클러스터웨어의 인터커넥터(Interconnector) 사용하기 때문에 사용할 경우 인터커넥터가 정상 작동하지 않는다.

 

 

데이터베이스 자체에 대한 정보를 입력/선택한다. Automatic Backup 설정은 오브젝트 스토리지 설정이 먼저 필요하다. 또한 현재 테스트와 같이 데이터베이스가 프라이빗 서브넷에 위치한 경우는 서비스 게이트웨이(Service Gateway) 설정이 필요하다. 이 부분은 데이터베이스 생성 후에 진행하도록 한다.


       Database Name: 데이터베이스 이름을 입력한다. 영문 알파벳으로 시작해야하며 최대 8자리까지 허용한다. 여기서는 “oradbp”으로 입력했다.

       Database Version: 생성할 오라클 데이터베이스 버전을 선택한다. 아래 4가지 하나를 선택할 있다. 여기서는 “18.0.0.0” 선택했다. “Display All Available Versions” 선택하면, “12.2.0.1.180417” 같은 아래 4가지 버전들의 이전 데이터베이스 버전들을 선택할 있다. 여기서는 “Display All Available Versions” 체크하지 않았다.

-         11.2.0.4 (latest)

-         12.1.0.2 (latest)

-         12.2.0.1 (latest)

-         18.0.0.0 (latest)

       PDB Name: 데이터베이스 버전이 11.2.0.4 아닌 경우, 멀티테넌트(Multienant) DB 플러거블 데이터베이스(Pluggable Database, PDB) 형태로 오라클 데이터베이스가 만들어진다. PDB 이름을 지정한다. “pdb1”으로 입력했다.

       Database Admin Password: 데이터베이스 관리지 암호를 지정하고, “Confirm Database Admin Password”에서 한번더 확인 입력한다. 여기서 만들어진 암호는 오라클 데이터베이스의 SYS, SYSTEM, PDB 관리자, TDE Wallet(데이터 암호화를 위한 암호키 저장용도) 사용되므로 암호 생성 규칙이 보안을 위해 복잡한 편이다. 최소 9 자리 길이로 30 길이까지 만들 있다. 영문 대문자, 소문자, 숫자, 특수문자가 각각 2 이상씩 들어가야 한다.

       Automatic Backup: 자동 증분(Incremental) 백업을 경우 체크한다. , 자동 증분 백업이 오브젝트 스토리지에 받기 때문에 사전에 오브젝트 스토리지가 설정되어 있어야 한다. 부분은 [6단계. 오브젝트 스토리지 구성]에서 설정할 것이다. 지금 단계에서는 체크하지 않는다.

       Database Workload: 어플리케이션의 워크로드 유형에 따라 데이터베이스 상세 설정이 다르다. 여기서는 “Online Transactional Processing (OLTP)” 선택했다.

-         Online Transactional Processing (OLTP): 데이터에 대한 랜덤 엑세스와 같은 트랜잭션 워크로드 특성에 맞도록 데이터베이스를 설정

-         Decision Support System (DSS): 대량의 데이터 스캔 작업과 같은 데이터 웨어하우스 워크로드 특성에 맞도록 데이터베이스를 설정

       Charachter Set: “Show Advanced Options” 클릭하면 캐릭터 셋과 내셔널 캐릭터셋을 선택할 있다. 기본값은 “AL32UTF8” 이다. “Show Advanced Options” 별도 설정하지 않았다.

       National Character Set: 기본값은 “AL16UTF16” 이다. “Show Advanced Options” 별도 설정하지 않았다.

 

끝으로 태그 정보를 설정하고 “Launch DB System” 클릭하면 DB 시스템이 생성된다. 이번 테스트에서는 별도 태그 정보를 설정하지 않았다.

 

 

참조. 멀티테넌트(Multitenant) 데이터베이스

 

Oracle 12c에서 나온 기능으로 다수의 Pluggable 데이터베이스를 하나의 컨테이너에서 관리하는 방식의 멀티테넌트 아키텍쳐 데이터베이스이다. OCI 데이터베이스 서비스에서 데이터베이스를 11.2.0.4 선택하지 않았다면, 멀티테넌트로 데이터베이스가 생성되어 사용자는 Pluggable 데이터베이스를 사용하게된다.

 

 

DB 시스템이 생성되는 동안은 “Provisioning”이라는 메시지와 함께 오렌지색 아이콘으로 나타난다. DB 시스템의 경우, 컴퓨트 인스턴스 생성 때와는 다르게 호스트 할당, VCN 네트웍 연결, 오라클 소프트웨어 설치 등의 많은 과정을 내부적으로 수행하기 때문에 생성 시간이 훨씬 소요된다.


DB 시스템이 생성이 되면 아이콘이 “Available” 이라는 메시지와 함께 녹색으로 바뀐다. DB 시스템이을 만들 때는 IaaS 가상 머신 인스턴스를 만들 보다 많은 시간이 소요된다. DB 시스템이 만들어지고 “View DB System Details” 클릭하면 DB 시스템의 상세 정보를 있다.


DB 시스템 상세 화면에서 하단에 보면 데이터베이스 정보가 나온다. 또한 좌측의 [Nodes] 클릭하면 노드(Node) 대한 상세 화면에서 있다.


DB 시스템의 시작, 종료, 재시작은 노드 상세 화면에서 있다.


작성자: 정영균


OCI를 이용해서 데이터베이스 어플리케이션 아키텍쳐 구성하기 시리즈

1. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Intro

2. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN

3. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN

4. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN (인터넷게이트웨이)

5. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN (라우트테이블)

6. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN (시큐리티리스트)

7. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – VCN (서브넷)

8. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Bastion 서버

9. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Bastion 서버 (시큐리티 리스트)

10. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Bastion 서버 (인스턴스)

11. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Bastion 서버 (웹서버 연결)

12. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – Bastion 서버 (NAT 설정)

13. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 웹서버

14. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 웹서버 (rsync)

15. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 웹서버 (NFS 설정)

16. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 웹서버 (NFS 설정파일시스템)

17. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 웹서버 (NFS 설정파일시스템마운트)

18. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 로드밸런서

19. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 로드밸런서 (아파치웹서버)

20. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 로드밸런서 (로드밸런서생성)

21. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 로드밸런서 (백엔드서버)

22. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 로드밸런서 (리스너)

23. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스

24. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스 (DB 시스템)

25. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스 (데이터베이스구성)

26. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스 (DB 시스템연결)

27. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스 (DB 시스템연결)

28. OCI이용해서데이터베이스어플리케이션아키텍쳐구성하기 – 데이터베이스 (백업)

29. OCI 이용해서 데이터베이스 어플리케이션 아키텍쳐 구성하기 – 데이터베이스 (DR 구성)