检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
规划开发环境的目的是要保证开发人员更好的并行工作,减少依赖,减少搭建环境的工作量,降低生产环境上线的风险。 管理开发环境的目的是为了更好的进行开发测试,部署上线。 图1 开发环境 结合项目经验,一般会按照图1规划开发环境: 搭建内网本地开发环境。本地开发环境的好处是各个业务/开发者可以搭建符合自己需要的最小功能集合环
sql文件,并执行该文件,具体操作请参考执行SQL,执行完成后,会生成三张表。 cluster # 存储集群信息 task #存储同步任务信息 system_config # 系统配置信息 部署Nacos Sync至ECS服务器。 请参考登录Linux ECS登录弹性云服务器。
准备环境 环境准备包括本地开发调试环境和云上环境准备。 准备本地开发调试环境 本地开发调试环境用于搭建一个简易的测试环境,可以有以下两种选择: 下载本地轻量化微服务引擎。 使用ServiceComb引擎专享版,并开放公网访问的IP,保证本地环境能够访问。 准备云上环境 微服务应用
合理的规划系统架构 Spring Cloud提供了丰富的组件,帮助搭建具备足够韧性的云原生系统。spring cloud gateway具备通用网关的大部分能力,并且集成了Spring Cloud的服务治理能力,可以实现Spring Cloud多协议转发。一个典型的Spring Cloud云原生架构如下:
合理的规划系统架构 Java Chassis提供了丰富的组件,帮助搭建具备足够韧性的云原生系统。Edge Service具备通用网关的大部分能力,并且集成了Java Chassis的服务治理能力,可以实现Java Chassis多协议转发。一个典型的Java Chassis云原生架构如下:
计费、X86架构的4vCPUs|8GB规格、公共镜像为EulerOS-EulerOS 2.9 64bit的弹性云服务器,且网络配置需绑定弹性公网IP,具体操作请参考绑定弹性公网IP,使用与MySQL同样的安全组,还需在ECS中安装JRE 8。 同步任务需要双边网络互通,所以您自建的Nacos、CSE
务外部端点地址,显示服务调用成功: 资源释放 迁移完成后,即可释放Mysq实例与Nacos Sync部署所在的ECS实例。 1. 参考删除弹性云服务器将ECS实例释放。 2. 参考删除按需实例将Mysql实例释放。 父主题: 用户自建Nacos迁移到CSE Nacos
配置文件加密方案 配置文件中经常会涉及一些敏感信息,例如账号密码等参数。这时需对这些敏感信息进行加密,提供信息安全性。 本章节介绍使用jasypt-spring-boot-starter组件进行加密的实践,以RBAC认证中涉及的账号名和密码作为示例。 在pom文件中引入加密组件对应的依赖。
般建议采用业界标准协议,比如REST。对于性能要求非常高的场景,也可以考虑私有协议。 分布式微服务实例和服务发现。微服务架构特别强调架构的弹性,业务架构需要支持微服务多实例部署来满足业务流量的动态变化。微服务设计一般会遵循无状态设计原则,符合该原则的微服务扩充实例,能够带来处理性
合理配置日志文件 查看错误日志是定位问题的重要手段,需要合理规划日志输出,并且尽可能降低对系统性能的影响。规划日志文件有如下建议: 使用log4j2或者logback输出日志。 将日志输出到文件,不要依赖于容器的stdout。 打开metrics日志,将metrics日志输出到独立的文件,比如“metrics
产可能会被窃取。 请不要在生产环境和安全要求较高的网络环境中使用该功能。 前提条件 在绑定公网IP前,需已创建可用的弹性公网IP。 创建弹性公网IP,请参考申请弹性公网IP。 绑定公网IP 登录微服务引擎控制台。 在左侧导航栏选择“ServiceComb引擎专享版”。 单击待操作的引擎。
与其他服务的关系 云原生架构模式下,完成业务功能需要很多服务相互配合: CSE一般和数据库、缓存和消息中间件同时使用,完成业务功能的开发。 AOM、APM、LTS等工具,则为业务提供运维能力,帮助检测业务故障、分析故障原因。 以Spring Cloud为例,典型的云原生架构和技术选型如下:
ermant Agent。 修改需要接入ServiceComb引擎的应用部署文件。 如果是新建应用,请直接编辑YAML文件。 如果是已经部署的应用,请使用kubectl edit命令进行编辑YAML文件。 以Deployment为例,执行命令kubectl edit deployment
ermant Agent。 修改需要接入ServiceComb引擎的应用部署文件。 如果是新建应用,请直接编辑YAML文件。 如果是已经部署的应用,请使用kubectl edit命令进行编辑YAML文件。 以Deployment为例,执行命令kubectl edit deployment
配置迁移可使用Nacos自身的导出功能将配置文件导出,再通过CSE Nacos的导入配置功能导入。 自建Nacos配置导出:可在自建Nacos的配置管理页面,选择“导出 > 导出选中配置”,将配置文件导出。 配置导入CSE Nacos,参考导入配置,将1中获取的配置文件导入到CSE Nacos引擎中。
代码中配置了配置中心但是无法获取到配置项。 问题原因 配置文件中配置中心的类型和地址不正确。 排查过程 引擎使用的2.x版本但是配置中心使用的是1.x版本的key。 配置文件指定了环境,但是代码中获取的时候配置环境的key不正确。 解决方案 将配置文件中配置中心的类型改为kie,即spring.cloud
sermant-injector-1.0.11.tgz 上传模板。 登录CCE的控制台,进入集群,在左侧导航栏中选择“模板管理”,单击右上角的“上传模板”,单击“添加文件”,选择已下载的模板包。具体操作请参考上传模板。 如果您的Sermant Injector版本低于1.0.11,您还需要在上传Sermant
sermant-injector-1.0.11.tgz 上传模板。 登录CCE的控制台,进入集群,在左侧导航栏中选择“模板管理”,单击右上角的“上传模板”,单击“添加文件”,选择已下载的模板包。具体操作请参考上传模板。 如果您的Sermant Injector版本低于1.0.11,您需要在上传Sermant
没有配置config-cc的依赖。 排查过程 在application.yaml中查看是否有该配置中心的地址。 在pom.xml文件中是否有config-cc的依赖。 解决方案 在pom.xml文件中添加config-cc的依赖。 <dependency> <groupId>org.apache.servicecomb</groupId>
响应示例 状态码: 200 导出的文件内容,文件名会根据environment标签的值命名,如:label=environment:development,则文件名为development+时间戳.json,如:label=environment:,则文件名为default+时间戳.j