腾讯云tsf平台-部署微服务项目

2024-01-22 17:04

本文主要是介绍腾讯云tsf平台-部署微服务项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

腾讯云tsf平台-部署微服务项目

  • 一、腾讯云tsf平台简介
  • 二、部署准备0(数据库、中间件等部署)
  • 三、部署准备1(创建集群和命名空间)
    • 1、准备部署资源--集群
    • 2、使用容器部署微服务
      • 步骤 1:创建容器集群
      • 步骤 2:创建命名空间
  • 四、部署准备2(导入云主机,初始化集群)
  • 五、创建容器应用
  • 六、创建部署组
  • 七、创建镜像和推送镜像到仓库
  • 八、部署应用及访问测试


💖The Begin💖点点关注,收藏不迷路💖

在这里插入图片描述

一、腾讯云tsf平台简介

腾讯云tsf平台(Tencent Service Framework)是一款用于部署和管理微服务架构的云原生应用平台,可使用以下两种方式部署。本文档使用容器部署微服务。

1、使用容器部署微服务
2、使用虚拟机部署微服务

二、部署准备0(数据库、中间件等部署)

1、应用所需数据库正常。
2、中间件等,如nginx、redis等正常。

三、部署准备1(创建集群和命名空间)

1、准备部署资源–集群

集群是指云资源管理的集合,包含了运行应用的云主机等资源。集群包括虚拟机集群和容器集群两种类型。

集群操作支持新建集群、删除集群、导入云主机、移出云主机等。

2、使用容器部署微服务

步骤 1:创建容器集群

TSF 容器功能依赖于底层容器平台。

1.登录 TSF 控制台。 
2.在左侧导航栏中,单击 【集群】。
3.在集群列表页的左上方,单击【新建集群】。
4.设置集群的基本信息。 
• 集群名称:集群名称,不超过 60 个字符。 
• 集群类型:选择集群类型 – 虚拟机集群:虚拟机集群中的主机用于部署虚拟机应用。
– 容器集群:容器集群中的主机用于部署容器应用。
– 集群描述:集群的描述,不超过 200 个字符。

注:独立版暂不支持导入容器集群功能

在这里插入图片描述

5、集群创建完后如下:

在这里插入图片描述

步骤 2:创建命名空间

1、命名空间概述

命名空间 ( Namespace ) 是对一组资源和对象的抽象集合。例如可以将开发环境、联调环境和测试环境的服务分别放到不同的命名空间中。在网络连通性的前提下,同一命名空间内的服务可以相互发现和相互调用。

2、命名空间使用场景

使用命名空间划分开发环境和测试环境

场景:用户希望部署一套开发环境和一套测试环境,两套环境支持部署同一个应用不同版本的程序包。两套环境可以共享一个集群作为底层部署资源。

解决方案:

1.创建两个命名空间分别为 dev-env 和 test-env 作为开发环境和测试环境。
2.创建一个虚拟机集群,并绑定 dev-env 和 test-env 命名空间。
3.创建应用(如 promotion),并创建 2 个部署组(dev-promotion 和testpromotion),分别选择 dev-env 和 test-env 命名空间。
4.部署组 dev-promotion 部署程序包版本 v1.1,部署组test-promotion部署程序包版本 v1.0。 

如果用户希望开发和测试环境的部署资源是隔离的,可以使用两个集群来划分开发和测试环境。

3、实现服务跨集群访问

在网络连通性的前提下,同一命名空间内的服务可以相互发现和相互调用。如果要实现跨集群的服务访问,有两个前提:
1.集群内实例网络互通
2.集群关联相同的命名空间。多个集群通过命名空间名称(而不是命名空间ID)作为关联的 key。用户可以在命名空间一级页面中看到关联的集群信息。

例如:有 2 个集群分别是 cluster-1 和 cluster-2,两个集群内实例网络互通,并且都关联了命名空间 test-namespace。要实现跨集群访问,需要确保在创建部署组 provider-group 和 consumer-group 时,使用相同的命名空间testnamespace。

在这里插入图片描述

4、创建命名空间并关联集群

创建命名空间

1.登录 TSF 控制台,在左侧导航栏中,单击【命名空间】。
2.在命名空间列表页的左上方,单击【新建命名空间】。
3.在命名空间对话框内填写名称。 
4.单击【提交】,完成创建。

在这里插入图片描述

集群关联命名空间

1.选择目标集群,进入集群详情页,单击【命名空间】标签页。
2.在命名空间列表左上方,单击【关联命名空间】。 
3.选择要关联的命名空间,并单击【提交】。 

集群仅支持关联自定义命名空间。

删除命名空间

前提条件:删除命名空间前,需要先解除命名空间与集群的绑定关系(解除命名空间绑定时,需要先删除具有该命名空间属性的全部部署组)。

解除关联集群

1.登录[TSF 控制台,在左侧导航栏中,单击【集群】。
2.选择目标集群,进入集群详情页,单击【命名空间】标签页。
3.在命名空间列表的操作列,单击【解除绑定】。 

在这里插入图片描述

删除集群

1.在控制台左侧导航栏中,单击【命名空间】。
2.在命名空间列表的操作列,单击【删除】。 
3.单击【确认】,即可删除命名空间。

在这里插入图片描述

四、部署准备2(导入云主机,初始化集群)

云主机导入

云主机用于部署应用,您需要先将云主机导入到集群中。

1.在集群列表页中,单击目标集群的 ID/集群名 。 
2.在云主机列表标签页中,在云主机列表中,单击左上方的【导入云主机】按钮。 

在这里插入图片描述
在这里插入图片描述

移出云主机

注意:只有当节点上没有运行应用时,才可以将节点从集群中移出。停止应用需要到部署组的实例列表页面中操作。

1.在集群列表页中,单击目标集群的 ID/名称,进入集群的节点列表页面。
2. 在集群节点列表页面,选择需要移出的云主机,单击操作列的【删除】。
3. 在弹出的提示框中,单击【确定】将云主机移出节点。

五、创建容器应用

TSF 应用分为两种类型:

• 虚拟机应用:通过程序包部署在云服务器上的应用。
• 容器应用:通过镜像部署在 Docker 容器中的应用。

在这里插入图片描述

虚拟机应用和容器应用的对比如下:

在这里插入图片描述

创建容器应用步骤:

1.登录 TSF 控制台。 
2.在左侧导航栏中,单击【应用管理】。 
3.在应用列表上方,单击【新建应用】。
4.设置应用信息后,单击【提交】按钮。– 部署方式:选择容器部署 
– 应用类型:选择普通应用

在这里插入图片描述

六、创建部署组

1.登录 TSF 控制台。 
2.在左侧导航栏中,单击【部署组】进入部署组详情页。
3.选择部署组所属集群和所属命名空间。 
4.在部署组列表上方,单击【新建部署组】按钮。
5.设置部署组相关信息。 – 部署组名称:部署组的名称,不超过 60 个字符。
– 关联应用:选择部署组关联的应用。 – 实例资源保留:分配给单个实例使用的 CPU 核数和内存资源Request 值。
– 实例数量:一个实例由相关的一个容器构成,可单击+ 和- 控制实例数量。实例数和实例资源限制的乘积不能超过集群剩余的可用资源。– 网络访问方式: 网络的访问方式决定了部署组内应用的网络属性,不同访问方式的应用可以提供不同网络能力。• NodePort:访问方式不绑定外网负载均衡,在集群内所有主机自动分配 NodePort 端口,可通过集群内任意主机IP+NodePort 访问该服务。 
• 集群内访问:访问方式不绑定外网负载均衡,该服务只能在集群内部访问。 – 端口映射:容器端口与服务端口的映射关系。
• 协议:TCP、UDP。 
• 容器端口:容器内应用程序监听的端口。
• 服务端口:集群外通过负载均衡域名或IP+服务端口访问服务;集群内通过服务名+服务端口访问服务。建议和容器端口保持一致。 – 更新方式:选择部署的更新方式。• 快速更新:直接关闭所有实例,启动相同数量的新实例。• 滚动更新:对实例进行逐个更新,这种方式可以让您不中断业务实现对服务的更新。 
– 日志配置项:选择日志配置项,用于采集应用的业务日志数据。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、创建镜像和推送镜像到仓库

注意:制作镜像操作前,请确保执行命令的机器上已安装docker 。

1、在应用列表中,单击创建的应用 ID/应用名。

2、单击镜像标签页,TSF 会针对每个容器应用创建一个名为tsf_<账号ID>/<应用名> 的镜像仓库。

3、使用 Dockerfile 创建镜像。

Dockerfile 内容:

FROM java:8COPY *.jar /test-service-1.0.0.jarLABEL authors ="zyl"CMD ["--server.port=8020"]EXPOSE 8020ENTRYPOINT ["java", "-jar","/test-service-1.0.0.jar"]

----其中,8020为容器端口,Dockerfile文件和test-service-1.0.0.jar放在同级目录。

 docker build -t  test-service:1.0 .

—制作镜像,之后推送到镜像仓库即可。

4、将镜像推送到registry

sudo docker tag [ImageId] registry-tcnp.zyliv2.gz.csg/tsf_100010005/test-service:[tag]sudo docker push registry-tcnp.zyliv2.gz.csg/tsf_100010005/test-service:[tag]

—其中,[ImageId]请根据您的实际镜像ID信息进行填写,[tag]请根据您的镜像版本信息进行填写

5、推送完成后,在镜像版本列表可查看镜像仓库中的镜像。

在这里插入图片描述

八、部署应用及访问测试

1、在部署组页面中,单击目标部署组右侧操作栏的【部署应用】按钮。
2、设置部署相关信息。
– 选择镜像:选择要部署的镜像。
– 单实例资源保留:分配给单个实例使用的 CPU 核数和内存资源Request 值。
– 实例数量:一个实例由相关的一个容器构成,可单击+ 和- 控制实例数量。实例数和实例资源限制的乘积不能超过集群剩余的可用资源。
– 启动参数(选填):设置 Java 应用的启动参数。
3、单击【提交】按钮。
4、部署完成后,如下:
在这里插入图片描述
5、访问测试:

IP+服务端口+服务名

💖The End💖点点关注,收藏不迷路💖

这篇关于腾讯云tsf平台-部署微服务项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/633638

相关文章

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Ubuntu 22.04 服务器安装部署(nginx+postgresql)

《Ubuntu22.04服务器安装部署(nginx+postgresql)》Ubuntu22.04LTS是迄今为止最好的Ubuntu版本之一,很多linux的应用服务器都是选择的这个版本... 目录是什么让 Ubuntu 22.04 LTS 变得安全?更新了安全包linux 内核改进一、部署环境二、安装系统

JAVA集成本地部署的DeepSeek的图文教程

《JAVA集成本地部署的DeepSeek的图文教程》本文主要介绍了JAVA集成本地部署的DeepSeek的图文教程,包含配置环境变量及下载DeepSeek-R1模型并启动,具有一定的参考价值,感兴趣的... 目录一、下载部署DeepSeek1.下载ollama2.下载DeepSeek-R1模型并启动 二、J