当前位置: 首页 > news >正文

网站建设需要哪些网络技术苏州个人网站制作公司

网站建设需要哪些网络技术,苏州个人网站制作公司,金融网站建设运营方案,互动网门户网站建设【squids.cn】 全网zui低价RDS#xff0c;免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 在本系列的第三部分中#xff0c;我们了解了如何在 Minikube 中部署基于 Quarkus/Camel 的微服务#xff0c;这是最常用的 Kubernetes 本地实现之一。虽然这样的本地…【squids.cn】 全网zui低价RDS免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 在本系列的第三部分中我们了解了如何在 Minikube 中部署基于 Quarkus/Camel 的微服务这是最常用的 Kubernetes 本地实现之一。虽然这样的本地 Kubernetes 实现对于测试目的非常实用但其单节点功能并不能满足实际生产环境的要求。因此为了在类似生产的环境中检查我们的微服务行为我们需要多节点 Kubernetes 实现。最常见的一种是 OpenShift。 什么是 OpenShift OpenShift 是一个基于 Kubernetes 的开源企业级容器应用程序开发、部署和管理平台。它由红帽开发作为 Kubernetes 集群之上的组件层既可以作为商业产品也可以作为免费平台或者既可以作为本地基础设施也可以作为云基础设施。下图描绘了这种架构。 与任何 Kubernetes 实施一样OpenShift 也有其复杂性将其安装为独立的本地平台并非易事。将其用作 AWS、Azure 或 GCP 等专用云上的托管平台是一种更实用的方法至少在开始时是这样但它需要一定的企业组织。 例如ROSARed Hat OpenShift Service on AWS是一种商业解决方案有助于快速创建和简单管理完整的 Kubernetes 基础设施但它并不是一个真正适合开发人员的环境允许其快速开发、部署和管理。测试云原生服务。 对于后面的用例红帽提供了 OpenShift Developers Sandbox这是一个开发环境无需任何繁重的安装或订阅过程即可立即访问 OpenShift开发人员甚至可以在开始实际项目之前就开始练习他们的技能和学习周期。这项完全免费的服务不需要任何信用卡只需要一个 Red Hat 帐户在共享的多租户 Kubernetes 集群中提供私有 OpenShift 环境该集群预先配置了一组开发人员工具例如 Java、Node .js、Python、Go、C#包括 Helm 图表目录、s2i 构建工具和 OpenShift Dev Spaces。 在这篇文章中我们将使用 OpenShift Developers Sandbox 来部署 Quarkus/Camel 微服务。 在 OpenShift 上部署 为了在 OpenShift 上部署Quarkus 应用程序需要包含 OpenShift 扩展。当然这可以使用 Qurakus CLI 来完成但考虑到我们的项目是一个多模块 Maven 项目一种更实用的方法是直接在主 POM 中包含以下依赖项 dependency groupIdio.quarkus/groupId artifactIdquarkus-openshift/artifactId/dependencydependency groupIdio.quarkus/groupId artifactIdquarkus-container-image-openshift/artifactId/dependency这样所有子模块都将继承这些依赖项。 OpenShift应该与普通的Kubernetes资源一起工作因此我们先前的方案在我们将微服务部署到Minikube上时也应该在这里适用。毕竟Minikube和OpenShift都是同一个事实上的标准Kubernetes的实现。 如果我们回顾本系列的第三部分我们基于Jib的构建和部署过程生成了普通的Kubernetes清单文件kubernetes.yaml以及Minikube的文件minikube.yaml。然后我们可以选择使用普通生成的Kubernetes资源还是更具体的Minikube资源我们更喜欢后者。尽管专为Minikube定制的清单文件只能在Minikube上部署但普通的Kubernetes文件应该在Minikube上以及任何其他Kubernetes实现如OpenShift上都能以相同的方式工作。 然而实际上情况稍微复杂一些据我所知我未能成功地将由Jib生成的普通Kubernetes清单部署到OpenShift上。我需要做的是重命名大多数其名称满足quarkus.kubernetes.模式的属性为quarkus.openshift.。此外某些普通的Kubernetes属性例如quarkus.kubernetes.ingress.expose对于OpenShift有一个完全不同的名称。在这种情况下是quarkus.openshift.route.expose。 但除了这些几乎是美观的改变外一切都与我们第三部分的前一个方案保持在同一个位置。现在为了在OpenShift Developers Sandbox上部署我们的微服务请按照以下步骤操作。 登录 OpenShift 开发者沙盒 以下是登录 OpenShift Developer Sandbox 所需的步骤 启动您首选的浏览器并访问 OpenShift Developers Sandbox站点 单击Login右上角的链接您需要已经注册了 OpenShift Developer Sandbox 单击Start your sandbox for free屏幕中央标记的红色按钮 在右上角展开您的用户名并单击Copy login command按钮 在标有标签的新对话框中Log in with ...单击DevSandbox链接 将显示一个新页面其中带有标记为 的链接Display Token。单击此链接。 复制并执行显示的oc命令例如 $ oc login --token... --serverhttps://api.sandbox-m3.1530.p1.openshiftapps.com:6443 从 GitHub 克隆项目 以下是克隆项目的 GitHub 存储库所需的步骤​​​​​​​ $ git clone https://github.com/nicolasduminil/aws-camelk.git$ cd aws-camelk$ git checkout openshift 创建 OpenShift Secret 为了连接到 AWS 资源例如 S3 存储桶和 SQS 队列我们需要提供 AWS 凭证。这些凭证是访问密钥 ID 和秘密访问密钥。有多种方法可以提供这些凭据但在这里我们选择使用 Kubernetes 密钥。以下是所需的步骤 首先将您的访问密钥 ID 和秘密访问密钥编码为 Base64如下所示​​​​​​​ $ echo -n your AWS access key ID | base64$ echo -n your AWS secret access key | base64 编辑文件aws-secret.yaml并修改以下行以便替换...为 Base64 编码值​​​​​​​ AWS_ACCESS_KEY_ID: ...AWS_SECRET_ACCESS_KEY: ... 创建包含 AWS 访问密钥 ID 和秘密访问密钥的 OpenShift 密钥 $ kubectl apply -f aws-secret.yaml 启动微服务 为了启动微服务请运行以下脚本 $ ./start-ms.sh 该脚本与我们之前第三部分中的脚本相同​​​​​​​ #!/bin/sh./delete-all-buckets.sh./create-queue.shsleep 10mvn -DskipTests -Dquarkus.kubernetes.deploytrue clean installsleep 3./copy-xml-file.sh 此处用于触发 Camel 文件轮询器的 copy-xml-file.sh 脚本已稍作修改 #!/bin/sh aws_camel_file_pod$(oc get pods | grep aws-camel-file | grep -wv -e build -e deploy | awk {print $1}) cat aws-camelk-model/src/main/resources/xml/money-transfers.xml | oc exec -i $aws_camel_file_pod -- sh -c cat /tmp/input/money-transfers.xml 在这里我们kubectl用命令替换了oc命令。此外鉴于 OpenShift 具有不仅为微服务而且为构建和部署命令创建 pod 的特殊性我们需要在正在运行的 pod 列表中过滤掉出现字符串 和 的buildpod deploy。 运行此脚本可能需要一些时间。完成后确保所有必需的 OpenShift 控制器正在运行 $ oc get is NAME IMAGE REPOSITORY TAGS UPDATED aws-camel-file default-route-openshift-image-registry.apps.sandbox-m3.1530.p1.openshiftapps.com/nicolasduminil-dev/aws-camel-file 1.0.0-SNAPSHOT 17 minutes ago aws-camel-jaxrs default-route-openshift-image-registry.apps.sandbox-m3.1530.p1.openshiftapps.com/nicolasduminil-dev/aws-camel-jaxrs 1.0.0-SNAPSHOT 9 minutes ago aws-camel-s3 default-route-openshift-image-registry.apps.sandbox-m3.1530.p1.openshiftapps.com/nicolasduminil-dev/aws-camel-s3 1.0.0-SNAPSHOT 16 minutes ago aws-camel-sqs default-route-openshift-image-registry.apps.sandbox-m3.1530.p1.openshiftapps.com/nicolasduminil-dev/aws-camel-sqs 1.0.0-SNAPSHOT 13 minutes ago openjdk-11 default-route-openshift-image-registry.apps.sandbox-m3.1530.p1.openshiftapps.com/nicolasduminil-dev/openjdk-11 1.10,1.10-1,1.10-1-source,1.10-1.1634738701 46 more... 18 minutes ago $ oc get pods NAME READY STATUS RESTARTS AGE aws-camel-file-1-build 0/1 Completed 0 19m aws-camel-file-1-d72w5 1/1 Running 0 18m aws-camel-file-1-deploy 0/1 Completed 0 18m aws-camel-jaxrs-1-build 0/1 Completed 0 14m aws-camel-jaxrs-1-deploy 0/1 Completed 0 10m aws-camel-jaxrs-1-pkf6n 1/1 Running 0 10m aws-camel-s3-1-76sqz 1/1 Running 0 17m aws-camel-s3-1-build 0/1 Completed 0 18m aws-camel-s3-1-deploy 0/1 Completed 0 17m aws-camel-sqs-1-build 0/1 Completed 0 17m aws-camel-sqs-1-deploy 0/1 Completed 0 14m aws-camel-sqs-1-jlgkp 1/1 Running 0 14m oc get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE aws-camel-jaxrs ClusterIP 172.30.192.74 none 80/TCP 11m modelmesh-serving ClusterIP None none 8033/TCP,8008/TCP,8443/TCP,2112/TCP 18h 如上面的清单所示所有必需的图像流都已创建并且所有 Pod 都已完成或正在运行。已完成的 Pod 是与构建和部署操作相关的 Pod。正在运行的服务与微服务相关联。 只有一项服务正在运行aws-camel-jaxrs。该服务可以aws-camel-jaxrs通过公开路由来与运行微服务的 Pod 进行通信。这是自动完成的对财产有效quarkus.openshift.route.exposetrue。aws-camel-sqs事实上微服务需要与之通信aws-camel-sqs因此需要知道通往它的路径。要获取该路由您可以按照以下步骤操作 $ oc get routes NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD aws-camel-jaxrs aws-camel-jaxrs-nicolasduminil-dev.apps.sandbox-m3.1530.p1.openshiftapps.com aws-camel-jaxrs http None 现在打开application.properties与aws-camel-sqs微服务关联的文件并修改属性rest-uri如下所示 rest-uriaws-camel-jaxrs-nicolasduminil-dev.apps.sandbox-m3.1530.p1.openshiftapps.com/xfer 在这里您必须将命名空间替换nicolasduminil-dev为对您的情况有意义的值。现在您需要停止微服务并再次启动它们​​​​​​​ $ ./kill-ms.sh...$ ./start-ms.sh... 您的微服务现在应该按预期运行您可以使用以下命令检查日志文件 $ oc logs aws-camel-jaxrs-1-pkf6n 正如您所看到的为了获得服务的路由aws-camel-jaxrs我们需要启动、停止和再次启动我们的微服务。这个解决方案远非优雅但我没有找到任何其他解决方案我依靠建议的读者来帮助我改进它。可能可以使用 OpenShift Java 客户端在 Java 代码中执行与命令oc get routes执行的操作相同的操作但我没有找到具体方法而且文档也不太明确。 我想对无法在这里提供完整的解决方案表示歉意但尽管如此还是享受它吧 作者Nicolas Duminil 更多内容请关注公号【云原生数据库】 squids.cn云数据库RDS迁移工具DBMotion云备份DBTwin等数据库生态工具。
http://www.dnsts.com.cn/news/160536.html

相关文章:

  • 深圳企业网站制作中心腾讯云如何建设网站首页
  • 找别人做的网站怎样修改济南网站建设团队
  • 没有网站如何做adsense企业网站那几点重要
  • 洛阳房产网seo网站优化工具大全
  • 海淀做网站的公司代码素材网站
  • 建立网站需要什么技术网页设计课程速成班
  • 口碑好门户网站开发关联词有哪些类型
  • 网站建设寻找可以途径做行业导航网站
  • 北京市城乡建设学校网站专业设计自学网站
  • 华夏名网修改网站信息什么网站可以做字体效果图
  • 昆山市建设局网站6ftp wordpress
  • 湖北省两学一做网站发布友情链接
  • 南通医院网站建设高端网站建设过程
  • 网站建设ftp软件怎么建立公司网站?
  • 惠州品牌网站建设公司哪里有怎么给网站添加音乐
  • 泉州网站建设报价深圳集团网站建设专业公司
  • 贵州省城乡建设局网签网站营销型网站建设与网页设计
  • 环保网站模板WordPress的手机菜单键
  • 济南专业网站建设咨询北京网站开发服务商
  • 与知名网站互连网站seo其应用
  • 技术支持 重庆网站包装设计案例分析
  • 孝感高新区建设局网站湖南竞网科技有限公司
  • 网站开发及流行框架郑州网站建设公司怎么选
  • 网站建设首选智投未来1网页版扫一扫二维码
  • 企业名录网站 优帮云网站怎么添加假备案号
  • 买网站服务器太仓家政保洁公司
  • 固安做网站凡科快图一键抠图
  • 女装网站建设文献综述歌曲伴奏在线制作网站
  • 订阅号做微网站需要认证吗注册公司网上申请
  • 地方门户网站搭建系统做网站有啥软件