前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用ACS和Kubernetes部署Red Hat JBoss Fuse

使用ACS和Kubernetes部署Red Hat JBoss Fuse

作者头像
青橙.
发布2018-01-15 13:21:17
3.1K0
发布2018-01-15 13:21:17

红帽JBoss Fuse 十多年来一直是构建Java Web / RESTful服务的实际标准。但是,如何在当今以云为中心的世界中该怎样高效运行?如您所见,基础架构即代码(infrastructure-as-a-code)和可扩展/容错(scalable/fault-tolerant)方法对于成功部署至关重要。

在本教程中,我们将向您展示如何:

  1. 在Azure中的Kubernetes(K8s)群集中构建环境。
  2. 将您的红帽JBoss服务打包到Docker容器中。
  3. 在可扩展的高可用性群集中运行您的服务。

在Azure的Kubernetes群集上构建环境

首先,您需要一个可操作的Kubernetes集群。

安装后,运行Kubernetes Dashboard(kubectl代理)并确保Kubernetes Dashboard UI(http://127.0.0.1:8001/ui)正在工作:

image.png
image.png

将你的红帽JBoss服务打包到Docker容器中

典型的红帽JBoss部署过程要求您安装红帽JBoss,配置Red Hat / Karaf功能,并部署服务(即开发的* .jar文件)。您可以使用Docker文件自动进行安装,并获取可用于测试和部署到生产交付的模块。

Docker文件:

image.png
image.png
image.png
image.png
image.png
image.png

设置你的Docker Image Registry(或使用DockerHub),并配置你的Docker注册表。

我们在Docker文件中使用命令“ bin/client log:display ”来帮助确保红帽重新配置和部署成功。

在此之后,典型的开发人员的流程将是构建一个Docker容器镜像,用一个版本标记该镜像,并将该镜像写入到Docker注册表:

image.png
image.png

在可扩展的高可用性群集中运行您的服务

您现在已经在Azure容器服务上成功配置了Kubernetes,并且在Docker Registry中有一个Docker 镜像。接下来,你可以通过Kubernetes继续!

基本上,您需要在Kubernetes中创建一个调度(用于Red Hat节点)和一个服务(用于负载平衡器和可公开访问的IP)。

要创建部署,请转到仪表板,然后在左侧菜单中选择“Deployment”。

点击右上角的“+Create”,然后选择“Upload a YAML or JSON file”选项。

image.png
image.png

这里是Kubernetes的部署设:

image.png
image.png
image.png
image.png

选择Rh-deployment.yaml,然后单击“Upload”。接下来,在左侧菜单中选择“pods”。等到“rhesb- ...”准备就绪。这里2GB的镜像需要大约5分钟时间。

image.png
image.png

然后转到“Services”,单击“+Create”,然后选择Kubernetes服务(rh-service.yaml)。确保服务配置中的“selector”属性与部署设置的“metadata”名称匹配。

这里是Kubernetes服务设定:

image.png
image.png

转到“Services”,等到新服务显示一个IP地址,这需要几分钟的时间来创建负载均衡。

您现在可以使用SoapUI或类似的工具来测试您的服务了:

image.png
image.png

虽然您可以使用此Docker镜像和一些Kubernetes YAML文件进行创建,但您还应该:

  • 选择一种管理环境特定属性的方法(例如,服务的URL和端口)。
  • 使用Stash或Azure监控代理设置日志传送。
  • 将readinessProbe和livenessProbe(针对每个服务)添加到Kubernetes服务配置中,以确保您不是无效节点的集群的所有者。

评论部分分享您的想法和问题。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在Azure的Kubernetes群集上构建环境
  • 将你的红帽JBoss服务打包到Docker容器中
  • 在可扩展的高可用性群集中运行您的服务
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档