9.4. 在 OpenShift 上运行 Camel Spring Boot XA quickstart
此流程演示了如何在运行的单一节点 OpenShift 集群上运行 Quickstart。
流程
下载 Camel Spring Boot XA 项目。
git clone --branch spring-boot-camel-xa-7.13.0.fuse-7_13_0-00011-redhat-00001 https://github.com/jboss-fuse/spring-boot-camel-xa
git clone --branch spring-boot-camel-xa-7.13.0.fuse-7_13_0-00011-redhat-00001 https://github.com/jboss-fuse/spring-boot-camel-xa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 导航到
spring-boot-camel-xa
目录,再运行以下命令:mvn clean install
mvn clean install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 登录 OpenShift 服务器。
oc login -u developer -p developer
oc login -u developer -p developer
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建名为
test
的新项目命名空间(假设它尚不存在)。oc new-project test
oc new-project test
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果
test
项目命名空间已存在,请切换到它。oc project test
oc project test
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装依赖项。
使用用户名 username 和密码
Thepassword1!
安装postgresql
。oc new-app --param=POSTGRESQL_USER=theuser --param=POSTGRESQL_PASSWORD='Thepassword1!' --env=POSTGRESQL_MAX_PREPARED_TRANSACTIONS=100 --template=postgresql-persistent
oc new-app --param=POSTGRESQL_USER=theuser --param=POSTGRESQL_PASSWORD='Thepassword1!' --env=POSTGRESQL_MAX_PREPARED_TRANSACTIONS=100 --template=postgresql-persistent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用用户名用户名 和密码
Thepassword1!
安装A-MQ
代理。oc new-app --param=MQ_USERNAME=theuser --param=MQ_PASSWORD='Thepassword1!' --template=amq63-persistent
oc new-app --param=MQ_USERNAME=theuser --param=MQ_PASSWORD='Thepassword1!' --template=amq63-persistent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
为事务日志创建持久性卷声明。
oc create -f persistent-volume-claim.yml
oc create -f persistent-volume-claim.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 构建和部署快速入门。
mvn oc:deploy -Popenshift
mvn oc:deploy -Popenshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 扩展至所需副本数。
oc scale statefulset spring-boot-camel-xa --replicas 3
oc scale statefulset spring-boot-camel-xa --replicas 3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注: pod 名称用作事务管理器 ID (spring.jta.transaction-manager-id 属性)。当前实施还限制事务管理器 ID 的长度。请注意:
- StatefulSet 的名称是事务系统的标识符,因此不得更改它。
- 您应该为 StatefulSet 命名,以便所有 pod 名称的长度都小于或等于 23 个字符。OpenShift 使用惯例创建 Pod 名称: <statefulset-name>-0, <statefulset-name>-1 等。Narayana 最好避免有多个具有相同 id 的恢复管理器,因此当 pod 名称超过限制时,最后 23 字节被用作事务管理器 id (在剥离一些字符(如 - )后。
快速启动运行后,使用以下命令获取基础服务 URL。
NARAYANA_HOST=$(oc get route spring-boot-camel-xa -o jsonpath={.spec.host})
NARAYANA_HOST=$(oc get route spring-boot-camel-xa -o jsonpath={.spec.host})
Copy to Clipboard Copied! Toggle word wrap Toggle overflow