3.7. 데이터베이스에 연결
national-parks-app
애플리케이션에서 위치 정보를 저장하는 MongoDB 데이터베이스를 배포 및 연결합니다. national-parks-app
애플리케이션을 맵 시각화 도구의 백엔드로 표시하면 parksmap
배포에서는 OpenShift Container Platform 검색 메커니즘을 사용하여 지도를 자동으로 표시합니다.
사전 요구 사항
- OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다.
- 개발자 화면에 있습니다.
- 배포된 이미지가 있습니다.
절차
- 개발자 화면의 +추가 보기에서 컨테이너 이미지를 클릭하여 대화 상자를 엽니다.
-
이미지 이름 필드에
quay.io/centos7/mongodb-36-centos7
을 입력합니다. -
런타임 아이콘 필드에서
mongodb
를 검색합니다. - 일반 섹션까지 아래로 스크롤합니다.
다음 사항에 대한 현재 값이 있는지 확인합니다.
-
애플리케이션:
national-parks-app
-
이름:
mongodb-nationalparks
-
애플리케이션:
- 배포를 리소스로 선택합니다.
- 애플리케이션에 대한 경로 만들기 옆에 있는 확인란을 선택 해제합니다.
고급 옵션 섹션에서 배포를 클릭하여 다음 환경 변수를 추가합니다.
표 3.2. 환경 변수 이름 및 값 이름 값 MONGODB_USER
mongodb
MONGODB_PASSWORD
mongodb
MONGODB_DATABASE
mongodb
MONGODB_ADMIN_PASSWORD
mongodb
- 생성을 클릭합니다.
추가 리소스
3.7.1. 시크릿 생성
Secret
오브젝트는 암호, OpenShift Container Platform 클라이언트 구성 파일, 개인 소스 리포지토리 자격 증명 등과 같은 중요한 정보를 보유하는 메커니즘을 제공합니다. 보안은 Pod에서 중요한 콘텐츠를 분리합니다. 볼륨 플러그인을 사용하여 컨테이너에 보안을 마운트하거나 시스템에서 시크릿을 사용하여 Pod 대신 작업을 수행할 수 있습니다. 다음 절차에서는 시크릿 nationalparks-mongodb-parameters
를 추가하고 이를 nationalparks
워크로드에 마운트합니다.
사전 요구 사항
- OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다.
- 개발자 화면에 있습니다.
- 배포된 이미지가 있습니다.
절차
- 개발자 화면에서 왼쪽 탐색의 시크릿으로 이동하여 시크릿 을 클릭합니다.
생성
키/값 시크릿을 클릭합니다. -
시크릿 이름 필드에
nationalparks-mongodb-parameters
를 입력합니다. 키 및 값에 대해 다음 값을 입력합니다.
표 3.3. 시크릿 키 및 값 키 값 MONGODB_USER
mongodb
DATABASE_SERVICE_NAME
mongodb-nationalparks
MONGODB_PASSWORD
mongodb
MONGODB_DATABASE
mongodb
MONGODB_ADMIN_PASSWORD
mongodb
- 생성을 클릭합니다.
-
시크릿 이름 필드에
워크로드에 시크릿 추가를 클릭합니다.
-
드롭다운 메뉴에서 추가할 워크로드로
nationalparks
를 선택합니다. - 저장을 클릭합니다.
-
드롭다운 메뉴에서 추가할 워크로드로
이러한 구성 변경으로 인해 환경 변수가 제대로 삽입된 nationalparks
배포의 새로운 롤아웃을 트리거합니다.
추가 리소스
3.7.2. 데이터 로드 및 국립 공원 지도 표시
parksmap
및 nationalparks
애플리케이션을 배포한 다음 mongodb-nationalparks
데이터베이스를 배포했습니다. 그러나 데이터베이스에 데이터가 로드되지 않았습니다. 데이터를 로드하기 전에 mongodb-nationalparks
및 nationalparks
배포에 적절한 레이블을 추가합니다.
사전 요구 사항
- OpenShift Container Platform 웹 콘솔에 로그인되어 있습니다.
- 개발자 화면에 있습니다.
- 배포된 이미지가 있습니다.
절차
-
토폴로지 보기에서
nationalparks
배포로 이동하여 리소스를 클릭하고 경로 정보를 검색합니다. URL을 복사하여 웹 브라우저에 붙여넣고 URL 끝에 다음을 추가합니다.
/ws/data/load
출력 예
Items inserted in database: 2893
-
토폴로지 보기에서
parksmap
배포로 이동하여 리소스를 클릭하고 경로 정보를 검색합니다. - URL을 복사하여 웹 브라우저에 붙여넣어 세계 지도에서 국립 공원을 볼 수 있습니다.
그림 3.4. 전 세계의 국립공원