2.8. 在 OpenShift 3.x 服务器上安装 Fuse 镜像流和模板
在将身份验证配置为 registry.redhat.io
后,导入并使用 OpenShift 镜像流和模板上的 Red Hat Fuse。
流程
- 启动 OpenShift 服务器。
以管理员身份登录 OpenShift 服务器。
oc login -u system:admin
oc login -u system:admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证您是否正在使用创建 docker-registry secret 的项目。
oc project openshift
oc project openshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 OpenShift 镜像流上安装 Fuse。
BASEURL=https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002 oc create -n openshift -f ${BASEURL}/fis-image-streams.json
BASEURL=https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002 oc create -n openshift -f ${BASEURL}/fis-image-streams.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装 Quickstart 模板:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装 Spring Boot 2 Quickstart 模板:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装 Fuse 控制台的模板。
oc create -n openshift -f ${BASEURL}/fis-console-cluster-template.json oc create -n openshift -f ${BASEURL}/fis-console-namespace-template.json
oc create -n openshift -f ${BASEURL}/fis-console-cluster-template.json oc create -n openshift -f ${BASEURL}/fis-console-namespace-template.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意有关部署 Fuse 控制台的详情,请参阅在 OpenShift 中设置 Fuse 控制台。
安装 Apicurito 模板:
oc create -n openshift -f ${BASEURL}/fuse-apicurito.yml
oc create -n openshift -f ${BASEURL}/fuse-apicurito.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow (可选) 查看在 OpenShift 镜像和模板上安装的 Fuse:
oc get template -n openshift
oc get template -n openshift
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8.1. 在 OpenShift 3.11 中设置 Fuse 控制台 复制链接链接已复制到粘贴板!
在 OpenShift 3.11 中,您可以访问 Fuse 控制台:
- 通过将 Fuse 控制台添加到 OpenShift 项目,以便您可以监控项目中的所有正在运行的 Fuse 容器。
- 通过将 Fuse 控制台添加到 OpenShift 集群,以便您可以监控集群中所有项目中的所有运行 Fuse 容器。
- 从特定的 Fuse pod 打开它,以便您可以监控单个正在运行的 Fuse 容器。
您可以使用命令行部署 Fuse 控制台模板。
要在 Minishift 或 CDK based environmentiroments 上安装 Fuse Console,请按照以下 KCS 文章中介绍的步骤操作。
- 要在 Minishift 或 CDK based environmentiroments 上安装 Fuse Console,请参阅 KCS 4998441。
- 如果需要禁用 Jolokia 身份验证,请参阅 KCS 3988671 中描述的临时解决方案。
前提条件
- 如 OpenShift 的 Fuse 指南中所述,在 OpenShift 镜像流和 Fuse 控制台安装 Fuse。
- 对 Fuse 控制台的用户管理由 OpenShift 处理。
- 基于角色的访问控制(在部署后访问 Fuse 控制台的用户)尚不可用于 OpenShift 3.11 上的 Fuse。
第 2.8.1.1 节 “在 OpenShift 3.11 上部署 Fuse 控制台”
第 2.8.1.2 节 “从 OpenShift 3.11 上的 Fuse 控制台监控单个 Fuse pod”
2.8.1.1. 在 OpenShift 3.11 上部署 Fuse 控制台 复制链接链接已复制到粘贴板!
表 2.7 “Fuse 控制台模板” 根据 Fuse 应用程序部署类型,描述可用于从命令行部署 Fuse 控制台的 OpenShift 3.11 模板。
类型 | 描述 |
---|---|
| Fuse 控制台可以发现并连接到部署在多个命名空间或项目中的 Fuse 应用程序。要部署此模板,必须具有 OpenShift cluster-admin 角色。 |
| 此模板限制 Fuse 控制台对当前 OpenShift 项目(命名空间)的访问,这种模板充当单一租户部署。若要部署此模板,必须具有当前 OpenShift 项目的 admin 角色。 |
另外,您可以通过运行以下命令查看所有模板的参数列表:
oc process --parameters -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-namespace-template.json
oc process --parameters -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-namespace-template.json
Fuse 控制台模板默认配置端到端加密,以使您的 Fuse 控制台请求安全,从浏览器到集群服务。
前提条件
对于 OpenShift 3.11 上的集群模式,您需要集群管理员角色和集群模式模板。运行以下命令:
oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:openshift-infra:template-instance-controller
oc adm policy add-cluster-role-to-user cluster-admin system:serviceaccount:openshift-infra:template-instance-controller
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
流程
从命令行部署 Fuse 控制台:
通过运行以下命令之一(其中 myproject 是项目的名称),基于 Fuse Console 模板创建新应用:
对于 Fuse Console 集群 模板,其中
myhost
是用于访问 Fuse 控制台的主机名:oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-cluster-template.json -p ROUTE_HOSTNAME=myhost
oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-cluster-template.json -p ROUTE_HOSTNAME=myhost
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于 Fuse Console 命名空间 模板:
oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-namespace-template.json
oc new-app -n myproject -f https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_11_1-00016-redhat-00002/fis-console-namespace-template.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意您可以省略 命名空间 模板的 route_hostname 参数,因为 OpenShift 会自动生成一个。
运行以下命令,获取 Fuse Console 部署的状态和 URL:
oc status
oc status
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要从浏览器访问 Fuse 控制台,请使用提供的 URL。
Example:
2.8.1.2. 从 OpenShift 3.11 上的 Fuse 控制台监控单个 Fuse pod 复制链接链接已复制到粘贴板!
您可以为 OpenShift 3.11 上运行的 Fuse pod 打开 Fuse 控制台。
前提条件
要将 OpenShift 配置为在 Pod 视图中显示 Fuse Console 的链接,在 OpenShift 镜像上运行的 Fuse 必须声明在 name 属性设置为
jolokia
的 TCP 端口:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
流程
在 OpenShift 项目中的 Applications
Pods 视图中,点击 pod 名称来查看正在运行的 Fuse Pod 的详情。在此页面的右侧,您会看到容器模板的摘要: 从此视图中,单击 Open Java Console 链接以打开 Fuse 控制台。