이 안내에서는 Kf를 사용하여 Cloud Foundry Spring Music 참조 앱을 배포하는 과정을 안내하고 몇 가지 내용을 설명합니다.
소스에서 자바 앱 빌드: Spring Music 소스는 로컬이 아닌 클러스터에 빌드됩니다.
서비스 브로커 통합: PostgreSQL 데이터베이스를 만들어 Spring Music 앱에 바인딩합니다.
Spring Cloud Connectors: Spring Cloud Connectors는 Spring Music 앱에서 바인드된 CF 서비스를 감지하는데 사용됩니다. Kf와 원활하게 작동합니다.
자바 버전 구성: 빌드팩에서 사용할 자바 버전을 지정합니다.
기본 요건
옵션 1: Minibroker
클러스터 관리자는 다음 안내에 따라 Minibroker 서비스 브로커를 클러스터에 설치해야 합니다. Minibroker를 사용하면 PostgreSQL 데이터베이스를 프로비저닝하고 이를 사용하도록 앱을 구성할 수 있습니다.
Minibroker가 설치되고 클러스터에서 사용할 수 있는지 확인하려면 kf
marketplace
를 실행합니다. 그러면 다음과 비슷한 출력이 표시됩니다.
$ kf marketplace
5 services can be used in Space "demo", use the --service flag to list the plans for a service
Broker Name Space Status Description
minibroker mariadb Active Helm Chart for mariadb
minibroker mongodb Active Helm Chart for mongodb
minibroker mysql Active Helm Chart for mysql
minibroker postgresql Active Helm Chart for postgresql
minibroker redis Active Helm Chart for redis
옵션 2: 기타 서비스 브로커
PostgreSQL 서비스 만들기를 지원하는 경우 설치된 다른 서비스 브로커를 사용할 수 있습니다. 예를 들면 gcp-service-broker입니다.
배포
소스 복제
Spring Music 저장소를 클론합니다.
git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music cd spring-music
manifest.yml
을 수정하고 콘텐츠를 다음으로 바꿉니다.--- applications: - name: spring-music memory: 1G random-route: true stack: org.cloudfoundry.stacks.cflinuxfs3 env: BP_AUTO_RECONFIGURATION_ENABLED: false
앱 푸시
배포(이미 공간을
kf target
한 것으로 가정함): 자세한 내용은 이 문서를 참조하세요.kf push spring-music
프록시 기능을 사용하여 배포된 앱에 액세스한 다음 브라우저에서
http://localhost:8080
을 로드합니다.kf proxy spring-music
배포된 앱에는 사용 중인 Spring 프로필(있는 경우)을 보여주는 UI 요소가 포함됩니다. 여기에서는 인메모리 데이터베이스가 사용 중임을 나타내는 프로필이 없습니다.
데이터베이스 만들기 및 바인딩
마켓플레이스에 설치된 브로커를 통해 PostgreSQL 서비스를 만듭니다.
kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
서비스 인스턴스를 Spring Music 앱에 바인딩합니다.
kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
앱을 다시 시작하여
VCAP_SERVICES
환경 변수를 통해 서비스 결합을 사용할 수 있도록 합니다.kf restart spring-music
(선택사항) 바인딩 세부정보 보기:
kf bindings
kf proxy
를 다시 앱에 추가하고 웹브라우저에서 확인합니다. 앞서 만들고 바인딩한 PostgreSQL 서비스가 사용되고 있음을 나타내는 Spring 프로필이 표시됩니다.
폐기
PostgreSQL 서비스를 바인딩 해제하고 삭제합니다.
kf unbind-service spring-music spring-music-db kf delete-service spring-music-db
앱을 삭제합니다.
kf delete spring-music