7.4. OpenShift에서 Camel Spring Boot XA 빠른 시작 실행
다음 절차에서는 실행 중인 단일 노드 OpenShift 클러스터에서 퀵스타트를 실행하는 방법을 보여줍니다.
프로세스
Camel Spring Boot XA 프로젝트를 다운로드합니다.
git clone https://github.com/jboss-fuse/spring-boot-camel-xa
spring-boot-camel-xa
디렉토리로 이동하여 다음 명령을 실행합니다.mvn clean install
OpenShift 서버에 로그인합니다.
oc login -u developer -p developer
test
라는 새 프로젝트 네임스페이스를 생성합니다(아직 존재하지 않는다고 가정).oc new-project test
test
프로젝트 네임스페이스가 이미 있는 경우 해당 네임스페이스로 전환합니다.oc project test
종속 항목을 설치합니다.
-
OpenShift 카탈로그에서 사용자 이름으로
사용자
이름 및 암호Thepassword1!
를 사용하여postgresql
를 설치합니다. -
OpenShift 카탈로그에서 사용자 이름으로
사용자 이름 및 암호를
Thepassword1!
로 사용하여A-MQ
브로커를 설치합니다.
-
OpenShift 카탈로그에서 사용자 이름으로
prepare 문을 수락하도록
Postgresql
데이터베이스를 변경합니다.oc env dc/postgresql POSTGRESQL_MAX_PREPARED_TRANSACTIONS=100
트랜잭션 로그에 대한 영구 볼륨 클레임을 생성합니다.
oc create -f persistent-volume-claim.yml
빠른 시작을 빌드하고 배포합니다.
mvn fabric8:deploy -P openshift
원하는 복제본 수까지 확장합니다.
oc scale statefulset spring-boot-camel-xa --replicas 3
참고: Pod 이름은 트랜잭션 관리자 ID(spring.jta. Cryostat-manager-id 속성)로 사용됩니다. 현재 구현은 트랜잭션 관리자 ID의 길이도 제한합니다. 다음 사항에 유의하십시오.
- StatefulSet의 이름은 트랜잭션 시스템의 식별자이므로 변경할 수 없습니다.
- 모든 Pod 이름의 길이가 23자보다 작거나 같도록 StatefulSet의 이름을 지정해야 합니다. Pod 이름은 <statefulset-name>-0, <statefulset-name>-1 등을 사용하여 OpenShift에 의해 생성됩니다. Narayana는 동일한 ID를 가진 여러 복구 관리자가 없도록하기 위해 최선을 다하므로 Pod 이름이 제한보다 길면 마지막 23 바이트가 트랜잭션 관리자 ID로 사용됩니다 (와 같은 일부 문자를 제거 한 후).
빠른 시작이 실행되면 다음 명령을 사용하여 기본 서비스 URL을 가져옵니다.
NARAYANA_HOST=$(oc get route spring-boot-camel-xa -o jsonpath={.spec.host})