集群开通服务网格,总共包含以下几个部分:1)创建集群;2)开通服务网格;3)创建应用;4)应用引入服务网格注册中心jar包; 5)应用发布。
路径:运维中心-容器集群。
路径:中间件-服务网格 寻找开通状态为未开通的集群。
如果用户已有自建注册中心情况,请选择“已有注册中心”,服务网格注册中心会自动同步自建注册中心服务信息。
填写注册信息。
注册中心类型:目前支持eureka、zookeeper。
注册中心入口地址:请从应用的配置文件里直接拷贝注册中心配置地址信息即可。
鉴权方式:eureka支持httpbase鉴权方式、zookeeper支持digset鉴权方式。
用户也可以直接选择使用“服务网格注册中心”,无需填写注册中心信息,直接开通即可。
路径:应用管理-创建应用。
填写应用基本信息,并勾选服务网格。
<repositories> <repository> <id>alipay-cloud-server@public</id> <url>http://mvn.cloud.alipay.com/nexus/content/groups/open</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
<dependency> <groupId>com.alipay.sofa</groupId> <artifactId>sofa-registry-cloud-all</artifactId> <version>1.3.0</version> </dependency>
描述:接入tracer sdk,可以提供应用服务的实时监控(服务耗时、调用量、错误率、CPU、内存监控等)、服务拓扑能力。
<!-- 支持服务调用tracer日志记录能力 --> <!-- for Spring Boot 1.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>2.3.7.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
<!-- 接入tracer --> <!-- for Spring Boot 1.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>3.2.3.JST.1</version> <exclusions> <exclusion> <artifactId>sofa-common-tools</artifactId> <groupId>com.alipay.sofa.common</groupId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
<!-- for Spring Boot 1.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>2.3.7.JST.1</version> <exclusions> <exclusion> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
<!-- for Spring Boot 2.X --> <dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>3.2.3.JST.1</version> <exclusions> <exclusion> <artifactId>sofa-common-tools</artifactId> <groupId>com.alipay.sofa.common</groupId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
<dependency> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-sofa-boot-starter</artifactId> <version>3.2.3.JST.1</version> <exclusions> <exclusion> <artifactId>sofa-common-tools</artifactId> <groupId>com.alipay.sofa.common</groupId> </exclusion> <exclusion> <groupId>com.alipay.sofa</groupId> <artifactId>tracer-enterprise-dst-plugin</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.alipay.sofa.common</groupId> <artifactId>sofa-common-tools</artifactId> <version>1.0.17</version> </dependency>
需要手动初始化, 在main方法第一行
SofaTracerConfiguration.setProperty(SofaTracerConfiguration.JSON_FORMAT_OUTPUT, “false”);
如果本地maven settings.xml(默认路径 ~/.m2/settings.xml )配置了mirror为 * , 需要排除 alipay-cloud-server@public 仓库托管:
<mirror> <id>nexus-aliyun</id> <!-- <mirrorOf>*</mirrorOf> --> <mirrorOf>*,!alipay-cloud-server@public</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
spring.main.allow-bean-definition-overriding=true
eureka应用云原生化后,服务注册默认获取到的是hostname,可能导致消费方调用失败,建议应用增加配置:
eureka.instance.preferIpAddress=true
① 如果使用了dubbo框架服务分组(group)和版本(version)能力注意事项:
i)分组和版本名称不能是特殊值 * 和 0.0.0 。一般用户不会使用特殊值。
ii)同一个接口服务提供方发布,分组名和版本名称不能相同。
② dubbo 2.7.0及以上版本,强依赖zookeeper配置中心连接问题
2.7.0 =< dubbo版本 <= 2.7.4, 强依赖了zk配置中心。接入了mesh后,dubbo依然会和用户配置zk建立tcp连接,如果不期望依赖zk,建议升级dubbo版本>= 2.7.5, 该版本提供了关闭配置中心开关(use-as-config-center
),使用示例:
<dubbo:registry address="zookeeper://127.0.0.1:2181" use-as-config-center="false"/>
路径:应用发布-测试/正式环境-新建发布单。
路径:中间件-服务网格。
路径:应用-设置-编辑-取消勾选【服务网格】,然后重新发布应用。