12.2. JBoss EAP XP용 Helm 차트의 영구 데이터 저장을 위한 OpenShift 볼륨
OpenShift 볼륨을 사용하면 컨테이너가 클라우드 스토리지, NFS(네트워크 파일 시스템) 또는 호스트 시스템을 비롯한 다양한 소스의 데이터를 저장하고 공유할 수 있습니다. OpenShift 패키지 관리자인 Helm 차트를 사용하여 일관되고 재현 가능한 방식으로 애플리케이션을 배포할 수 있습니다. Helm 차트에 볼륨 마운트를 추가하면 애플리케이션이 배포 간에 데이터를 유지할 수 있습니다.
12.2.1. JBoss EAP XP에 Helm 차트를 사용하여 볼륨 마운트 링크 복사링크가 클립보드에 복사되었습니다!
다음 절차에서는 JBoss EAP XP에서 Helm 차트를 사용하여 시크릿을 볼륨으로 마운트하는 방법을 설명합니다. 또한 이를 사용하여 ConfigMap 을 마운트할 수도 있습니다. 이 작업을 통해 애플리케이션은 데이터에 안전하게 액세스하고 사용할 수 있으므로 무단 액세스 또는 변조로부터 보호할 수 있습니다. 예를 들어 보안을 볼륨으로 마운트하면 시크릿에 저장한 중요한 데이터가 시크릿이 마운트된 배포를 실행하는 POD에 파일로 표시됩니다.
사전 요구 사항
- OpenShift 개발 콘솔에 액세스할 수 있습니다.
-
시크릿을 생성했습니다. 예를 들어keystore.jks와 같은 파일을 참조하는 Cryostat-app-secret이라는 시크릿을 생성했습니다. -
컨테이너의 파일 시스템에서 시크릿을 마운트할 위치를 확인했습니다. 예를 들어
/etc/jgroups-encrypt-secre-secret-volume디렉터리는keystore.jks와 같은 시크릿 파일이 마운트된 위치입니다. - Git 리포지토리에서 호스팅되는 JBoss EAP XP 애플리케이션의 소스 코드입니다.
- 애플리케이션은 Maven 프로젝트입니다.
-
org.jboss.eap.plugins:eap-maven-plugin을 사용하여 JBoss EAP XP 5.0 서버를 프로비저닝하도록 애플리케이션을 구성했습니다.
프로세스
OpenShift 개발 콘솔에 로그인합니다.
- 드롭다운 메뉴에서 Helm 을 클릭합니다.
- 오른쪽 상단에서 생성 을 클릭한 다음 Helm 릴리스 를 클릭합니다.
- JBoss EAP XP 5를 선택합니다.
- 생성을 클릭하고 YAML 보기를 통해 구성을 선택합니다.
deploy.volumes필드에 볼륨을 지정하는 YAML 파일을 편집하고 사용할 시크릿을 구성합니다. 볼륨 이름과 시크릿의 secretName을 제공해야 합니다.volumes: - name: eap-jgroups-keystore-volume secret: secretName: eap-app-secret배포 구성에서
deploy.volumeMounts를 사용하여 파일 시스템에 볼륨을 마운트합니다.volumeMounts: - name: eap-jgroups-keystore-volume mountPath: /etc/jgroups-encrypt-secret-volume readOnly: truePod가 시작되면 컨테이너는
/etc/jgroups-encrypt-secret-volume/keystore.jks위치에 keystore.jks 파일을 마운트합니다.