본문 바로가기

Cloud/Oracle Cloud Infrastructure

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

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

1단계. VCN 생성

먼저 작업은 로드밸런서, 웹서버, , 데이터베이스, Bastion 서버 아키텍쳐 구성 요소들의 통신을 위한 VCN 생성하는 일이다.


다음과 같은 네트웍 자원을 가진 VCN 생성할 것이다. 이번 장에서 설명할 데이터베이스 어플리케이션 아키텍쳐 구성은 하나의 샘플일 뿐이다. 게이트웨이, 서브넷, 라우트 테이블, 시큐리티 리스트 등의 네트웍 구성을 어떻게 가져갈 지는 사용자의 업무 요건에 따라 달라진다.

이번 샘플 아키텍처에서 네트웍 구성의 기본적인 방향은 다음과 같다.

       가상 머신들과 데이터베이스를 각각 서로 다른 서브넷에 위치하도록했다.

       로드밸런서(Active-Failover), 웹서버(2), 데이터베이스(Primary-Standby), Bastion서버는 서로 인터넷 통신 여부, 포트 개방 등의 보안 요건이 서로 다르다. 따라서 라우트 테이블과, 시큐리티 리스트를 서버 유형에 맞춰 분리하여 만든다.

       인터넷을 통해 들어온 트래픽은 로드밸런서를 통해 웹서버로 분산된다. 로드밸런서는 퍼블릭 IP를 할당받도록 퍼블릭 로드밸런서로 설정한다.

       웹서버는 가상머신 인스턴스(IaaS)로 구성한다. 웹서버에는 아파치 웹서버가 설치되며, 로드밸런서와 웹서버는 80포트로 통신한다. 웹서버는 직접 인터넷에 노출되지 않도록 프라이빗 서브넷에 위치 시킨다. 웹서버의 가용성을 높이기 위해 rsync 구성을 한다. 또한 NFS로 웹서버간 공유 스토리지도 구성한다.

       DB서버는 PaaS로 오라클 데이터베이스를 구성한다. 웹서버와 DB서버는 1521포트로 통신한다. DB 서버는 프라이빗 서브넷에 위치시킨다. 오라클 데이터베이스의 가용성을 높이기 위해 데이터가드를 구성한다. 백업은 오브젝트 스토리지에 받도록 구성하되 인터넷 게이트웨이가 아닌, 서비스 게이트웨이를 경유하게해서 트래픽이 인터넷에 노출되지 않도록 한다.

       웹서버와 데이터베이스는 퍼블릭 IP 노출하지 않으며, 프라이빗 IP 할당한다. 웹서버와 DB 서버로의 SSH 연결은 Bastion 서버를 통해서 한다. 웹서버, DB 서버의 소프트웨어 설치패치 등을 위해 NAT 설정을 한다. 


작성자: 정영균


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 구성)