5.2. SonataFlow CR을 사용하여 지속성 구성
SonataFlow
CR(사용자 정의 리소스)은 워크플로우별 지속성 구성을 활성화합니다. SonataFlowPlatform
지속성이 현재 네임스페이스에 이미 설정되어 있어도 이 구성을 독립적으로 사용할 수 있습니다.
프로세스
-
다음 예와 같이
SonataFlow
CR 사양에서persistence
필드를 사용하여 지속성을 구성합니다.
apiVersion: sonataflow.org/v1alpha08 kind: SonataFlow metadata: name: example-workflow annotations: sonataflow.org/description: Example Workflow sonataflow.org/version: 0.0.1 spec: persistence: postgresql: serviceRef: name: postgres-example 1 namespace: postgres-example-namespace 2 databaseName: example-database 3 databaseSchema: example-schema 4 port: 1234 5 secretRef: name: postgres-secrets-example 6 userKey: POSTGRESQL_USER 7 passwordKey: POSTGRESQL_PASSWORD 8 flow:
- 1
- PostgreSQL 데이터베이스 서버에 연결하는 Kubernetes 서비스의 이름입니다.
- 2
- 선택사항: PostgreSQL 서비스가 포함된 네임스페이스입니다. 기본값은 workflow 네임스페이스입니다.
- 3
- 워크플로우 데이터가 저장되는 PostgreSQL 데이터베이스의 이름입니다.
- 4
- 선택 사항: 워크플로우 데이터에 대한 데이터베이스 스키마의 이름입니다. 기본값은 워크플로우 이름입니다.
- 5
- 선택 사항: PostgreSQL 서비스에 연결하기 위한 포트입니다. 기본값은
5432
입니다. - 6
- 데이터베이스 인증 정보가 포함된 Kubernetes 시크릿의 이름입니다.
- 7
- 데이터베이스 사용자 이름을 포함하는
Secret
오브젝트의 키입니다. - 8
- 데이터베이스 암호가 포함된
Secret
오브젝트의 키입니다.
이 구성은 OpenShift Serverless Logic Operator에 배포 시 지정된 PostgreSQL 데이터베이스 서버에 워크플로우가 연결되어야 함을 알려줍니다. OpenShift Serverless Logic Operator는 관련 JDBC 연결 매개변수를 워크플로우 컨테이너에 환경 변수로 추가합니다.
참고
PostgreSQL은 현재 지속성을 위해 지원되는 유일한 데이터베이스입니다.
프리뷰
프로필을 사용하는 SonataFlow
CR 배포의 경우 OpenShift Serverless Logic 빌드 시스템에는 지속성을 자동으로 활성화하는 데 필요한 Quarkus 확장 기능이 포함되어 있습니다.