Cloud Service Engine. Product Description. Issue 01 Date

Similar documents
Elastic Load Balancing. User Guide. Date

Elastic Load Balance. User Guide. Issue 01 Date HUAWEI TECHNOLOGIES CO., LTD.

Microservices mit Java, Spring Boot & Spring Cloud. Eberhard Wolff

MSB to Support for Carrier Grade ONAP Microservice Architecture. Huabing Zhao, PTL of MSB Project, ZTE

Cloud Native Architecture 300. Copyright 2014 Pivotal. All rights reserved.

Four times Microservices: REST, Kubernetes, UI Integration, Async. Eberhard Fellow

Microservices Implementations not only with Java. Eberhard Wolff Fellow

ServiceStage. User Guide. Issue 01 Date

Unified Load Balance. User Guide. Issue 04 Date

Elastic Load Balance. User Guide. Issue 14 Date

Istio. A modern service mesh. Louis Ryan Principal

Virtual Private Cloud. User Guide. Issue 21 Date HUAWEI TECHNOLOGIES CO., LTD.

Relational Database Service. User Guide. Issue 05 Date

Overview SENTINET 3.1

Managing your microservices with Kubernetes and Istio. Craig Box

Which compute option is designed for the above scenario? A. OpenWhisk B. Containers C. Virtual Servers D. Cloud Foundry

ISTIO 1.0 INTRODUCTION & OVERVIEW OpenShift Commons Briefing Brian redbeard Harrington Product Manager, Istio

Product Overview. Benefits CHAPTER

ApsaraDB for Redis. Product Introduction

Information Security Policy

Spring Cloud, Spring Boot and Netflix OSS

Identity Firewall. About the Identity Firewall

Configuring Virtual Servers

Cisco Wide Area Application Services: Secure, Scalable, and Simple Central Management

Service Mesh and Microservices Networking

Object Storage Service. Product Introduction. Issue 04 Date HUAWEI TECHNOLOGIES CO., LTD.

Service Mesh with Istio on Kubernetes. Dmitry Burlea Software FlixCharter

Virtual Private Cloud. User Guide. Issue 03 Date

Introduction and Datacenter Topology For Your System

Web Cloud Solution. User Guide. Issue 01. Date

BlackBerry Enterprise Server for IBM Lotus Domino Version: 5.0. Administration Guide

CNS-207-2I Implementing Citrix NetScaler 10.5 for App and Desktop Solutions

Apigee Edge Cloud. Supported browsers:

OTC API Technical White Paper. Issue 2.0. Date

A Comparision of Service Mesh Options

Product Specification. Design Team C, COMP 410 Spring 2016

Table of Contents Chapter 1: Migrating NIMS to OMS... 3 Index... 17

Managing and Auditing Organizational Migration to the Cloud TELASA SECURITY

ARCHITECTING WEB APPLICATIONS FOR THE CLOUD: DESIGN PRINCIPLES AND PRACTICAL GUIDANCE FOR AWS

VMware AirWatch Content Gateway for Linux. VMware Workspace ONE UEM 1811 Unified Access Gateway

ACI Terminology. This chapter contains the following sections: ACI Terminology, on page 1. Cisco ACI Term. (Approximation)

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo

McAfee Web Gateway Administration

McAfee Web Gateway Administration Intel Security Education Services Administration Course Training

Reactive Microservices Architecture on AWS

Huawei esight LogCenter Technical White Paper HUAWEI TECHNOLOGIES CO., LTD. Issue 1.0. Date PUBLIC

Management of API Gateway Based on Micro-service Architecture

Anti-DDoS. User Guide (Paris) Issue 01 Date HUAWEI TECHNOLOGIES CO., LTD.

Vulnerability Scan Service. User Guide. Issue 20 Date HUAWEI TECHNOLOGIES CO., LTD.

Huawei esight IPSec VPN Promotional Theme Slides. Version: V1.0 ( )

Load Balancing Technology White Paper

Jitterbit is comprised of two components: Jitterbit Integration Environment

Introduction. Network Architecture Requirements of Data Centers in the Cloud Computing Era

CNS-205 Citrix NetScaler 10.5 Essentials and Networking

Release Notes. NetBrain Integrated Edition 7.0

C exam. IBM C IBM WebSphere Application Server Developer Tools V8.5 with Liberty Profile. Version: 1.

Device Management Basics

ForeScout Extended Module for Tenable Vulnerability Management

McAfee Security Management Center

MODERN APPLICATION ARCHITECTURE DEMO. Wanja Pernath EMEA Partner Enablement Manager, Middleware & OpenShift

Integration Framework. Architecture

Next Paradigm for Decentralized Apps. Table of Contents 1. Introduction 1. Color Spectrum Overview 3. Two-tier Architecture of Color Spectrum 4

Apigee Edge Cloud. Supported browsers:

Copyright Huawei Technologies Co., Ltd All rights reserved. Trademark Notice General Disclaimer

Zumobi Brand Integration(Zbi) Platform Architecture Whitepaper Table of Contents

VMware AirWatch Content Gateway for Windows. VMware Workspace ONE UEM 1811 Unified Access Gateway

Introduction to Cloud Computing

BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0. Feature and Technical Overview

Docker and Oracle Everything You Wanted To Know

PrepAwayExam. High-efficient Exam Materials are the best high pass-rate Exam Dumps

Deploy Webex Video Mesh

CNS-205 Citrix NetScaler 11 Essentials and Networking

UltraPath Technical White Paper

BIG-IP Access Policy Manager : Secure Web Gateway. Version 13.0

VMware AirWatch Content Gateway Guide for Linux For Linux

McAfee Network Security Platform

McAfee epolicy Orchestrator Release Notes

Azure Webinar. Resilient Solutions March Sander van den Hoven Principal Technical Evangelist Microsoft

Google Cloud Platform for Systems Operations Professionals (CPO200) Course Agenda

StreamSets Control Hub Installation Guide

Device Management Basics

Apigee Edge Cloud - Bundles Spec Sheets

OpenIAM Identity and Access Manager Technical Architecture Overview

Send me up to 5 good questions in your opinion, I ll use top ones Via direct message at slack. Can be a group effort. Try to add some explanation.

AWS Lambda. 1.1 What is AWS Lambda?

Cisco ACI Terminology ACI Terminology 2

Using the Cisco ACE Application Control Engine Application Switches with the Cisco ACE XML Gateway

Apigee Edge Developer Training

User Manual. Admin Report Kit for IIS 7 (ARKIIS)

Network Security Platform 8.1

Introducing Cisco UCS Central 1.4

MigrationWiz Security Overview

BUILDING MICROSERVICES ON AZURE. ~ Vaibhav

Table of Contents 1.1. Introduction. Overview of vsphere Integrated Containers 1.2

IAM. Shopping Cart. IAM Description PM OM CM IF. Common Web CMS Reporting CE SC Review & Share. Omnichannel Frontend...

Let s say that hosting a cloudbased application is like car ownership

Integration Service. Admin Console User Guide. On-Premises

Perceptive Matching Engine

VMware AirWatch Content Gateway Guide for Windows

Introduction and Data Center Topology For Your System

Transcription:

Issue 01 Date 2018-04-09

Contents Contents 1 Overview... 1 2 Functions... 2 3 Advantages...3 4 Application Scenarios...6 5 Terms...7... 12 6.1 LocalServiceCenter... 12 6.2 Java SDK... 13 6.3 Go SDK... 19 6.4 Service Mesh... 22 6.5 Key Generation Tool...25 6.6 Local CSE...25 Issue 01 (2018-04-09) ii

1 Overview 1 Overview The Cloud Service Engine (CSE) is an enterprise-level microservice application management platform, including the microservice software deployment kit (SDK) and service registration, configuration, and governance centers. It ensures quick construction, real-time monitoring, and high availability (HA) of microservices. Furthermore, it is compatible with mainstream open-source ecosystems, not bound to specific development frameworks or platforms, and supports service code access to CSE without any modification. Issue 01 (2018-04-09) 1

2 Functions 2 Functions Microservice development framework Features out of the box, which provides the basic capabilities, including microservice registry, discovery, communication, and governance. Microservice governance center Provides microservice governance capabilities such as load balancing, rate limiting, service degradation, circuit breaker, and fault tolerance. Microservice security management Provides the authorization, authentication, and blacklist and whitelist functions to ensure access security of microservices. Microservice dark launch Supports any API parameter, such as the user group, user category, and area to which users belong, to define dark launch rules for microservices. Distributed transaction management Provides the Try/Confirm/Cancel (TCC) transaction management framework of the eventual consistency and the Web Services Atomic Transaction (WSAT) management framework of the strong consistency. Non-intrusive microservice access Provides Service Mesh to implement non-intrusive access to existing microservices. Unified configuration center Supports the release, change, and notification of microservice configuration items. Microservice dashboard Provides real-time monitoring dashboards for microservice instances and the API-level throughput, delay, and success rate. Issue 01 (2018-04-09) 2

3 Advantages 3 Advantages Item Microservice Management Huawei Cloud Microservice Engine Provides a one-stop microservice management console (web), including service catalog, service governance, service configuration, transaction dashboard, and new service creation. Self-built Microservice Based on Spring Cloud The UI console needs to be selfdeveloped, which requires more than 20,000 rows of code. Programming language Communicatio n protocol Service Mesh Usability Supports Java, Go, PHP,.NET, Python, Node.js, and other mainstream development languages. REST/RPC Provides the commercial mesher and supports one-click deployment. You only need to import Huawei microservice SDK to enjoy various service governance and control capabilities, including load balancing, fault isolation, fault tolerance, flow control, tracing, and service status dashboard. These functions are completely decoupled from service code, and you only need to focus on service development. Supports only Java. REST Built based on Spring Boot/ Spring Cloud components, and a large number of third-party components, such as Hystrix, Ribbon, Zipkin, and Prometheus, need to be integrated and verified. These bring high threshold and long learning period. Issue 01 (2018-04-09) 3

3 Advantages Item Microservice registry Dynamic configuration Microservice governance Lightweight gateway Canary release Huawei Cloud Microservice Engine Provides rich management capabilities for static metadata of microservices. For example, supports hierarchical relationship management for application, microservice, and instance, version management, tag management, canary release, and service topology, and provides large-scale enterpriselevel microservice management. Provides multi-dimensional data modeling to organize configuration information, which supports more configuration items and makes microservices more expandable. In addition, the configuration center supports the push and pull modes to provide better real-time configuration change notification. Supports service governance by APIs. In addition, it implements other governance capabilities, such as retry and isolation of instance access errors, priority of service discovery among multiple data centers. In addition, native governance methods provided by open source libraries are encapsulated properly and can be directly configured in the governance center without further coding. Supports RESTful request aggregation and forwarding, customization of service mapping, request parsing, encryption and decryption, and authentication, and governance on gateway services. Releases rules can be defined based on weights and API parameters (for example, user groups or areas to which users belong). Self-built Microservice Based on Spring Cloud Provides the Eureka component, needs to be developed and encapsulated as a service, and only manages the dynamic routing data. Provides Spring Cloud Config components, which need to be developed and encapsulated as a service. These bring fewer configuration items and poor realtime performance. Supports isolation by only services, and provides only open source components, such as Hystrix, which need to be developed and encapsulated into a service. Built based on Zuul, resulting in poor performance. Microservice governance can be implemented by integrating applications with a large number of third-party components. Issue 01 (2018-04-09) 4

3 Advantages Item Dashboard Deployment Expansion Remote disaster recovery Routine O&M Integration with HUAWEI CLOUD Huawei Cloud Microservice Engine Provides hierarchical applicationlevel metrics monitoring for microservice, instance, and API, such as Throughput, Average Latency, and Requests. Features out-of-the-box (secondlevel). Scales in and out (in seconds) through the console. Supports availability zones (AZs). Your O&M is not required. Huawei O&M team provides routine O&M measures, such as backup and recovery, monitoring and alarms, version upgrade, logrorate mechanism, and access protection. Has been seamlessly integrated with Huawei cloud container engine (CCE), application performance management (APM), and application operations management (AOM), and is integrating with the distributed cache service (DCS), distributed message service (DMS), and relational database service (RDS). Self-built Microservice Based on Spring Cloud The service center, configuration center, governance center, and console need to be developed and deployed based on open source components, which is timeconsuming and labor-consuming. Manually performs instance expansion and data migration. Features difficult construction and high technical requirements. Besides, high availability (HA) needs to be self-developed. You need to perform routine O&M measures, such as backup and recovery, monitoring and alarms, version upgrade, logrorate mechanism, and access protection. Self-built or interconnect with Huawei CLOUD. Issue 01 (2018-04-09) 5

4 Application Scenarios 4 Application Scenarios Development and Governance for New Applications CSE provides the multi-language microservice SDK and a unified console to implement onestop development and governance for the new enterprise applications developed using the microservice framework or for the existing applications rebuilt into microservices. CSE has the following advantages: Out of the box Provides the basic capabilities, including microservice registry, discovery, communication, and governance. One-stop governance Provides microservice governance capabilities such as load balancing, rate limiting, service degradation, circuit breaker, and fault tolerance. Real-time monitoring for application metrics Monitors API-level metrics, such as Throughput, Average Latency, and Requests, in real time. Access and Governance for Existing Applications When deploying a large number of existing applications on the cloud, the cost of microservice rebuilding is high. The Service Mesh solution can implement application management and access without any modification. This enables cloud-based microservice governance for existing applications. CSE has the following advantages: Access to microservice without any modification Provides Service Mesh to implement non-intrusive access for existing applications. Compatibility with mainstream open-source ecosystems CSE is compatible with mainstream open-source communities (such as Spring Cloud) and interconnects with industry ecosystem capabilities. Multiple programming languages Supports Node.js and.net applications. Issue 01 (2018-04-09) 6

5 Terms 5 Terms Table 5-1 CSE terms Full Spelling Acronym Description Dark launch - CSE provides two dark launch strategies: Traffic diversion based on traffic percentage Set traffic diversion rules, diverting a certain percentage of traffic to a specific service version. Traffic diversion based on specific requests Set traffic diversion rules based on the request header, diverting traffic having certain characteristics to a specific service version. Dark launch helps with smooth service upgrade. Access key/secret key AK/SK An access key/secret key (AK/SK) pair is used for API identity authentication and access control. Application - An application is a logical computer software entity that provides specific functions to users. An application built using the microservice architecture is generally composed of multiple microservices. Issue 01 (2018-04-09) 7

5 Terms Full Spelling Acronym Description Circuit breaker - A circuit breaker is designed to ensure service availability. Microservices generally depend on each other. A service call tracing may involve multiple microservices. If the access delay of one or more services is too high, incoming service requests will accumulate and consume more threads and I/O resources, which hinders system running and make more services unavailable, leading to avalanche effect. To solve this problem, when a target service responds slowly or a large number of timeout events occur, the circuit breaker breaks the service call and returns subsequent call requests to quickly release resources. The service will not be called until it works properly. Cloud service engine CSE CSE, short for Cloud Service Engine, is a public cloud service. It provides a group of tools and development frameworks at the development layer to facilitate local microservice development, and a group of basic services that support microservice operation and O&M on the cloud, facilitating deployment and O&M of microservices in the cloud production environment. Consumer - A consumer is the caller of a service. Distributed transaction - The participator, resource server, and transaction manager of a distributed transaction are deployed on different nodes in a distributed system. CSE supports two distributed transaction solutions: The final consistency solution based on the TCC protocol. The strong consistency solution based on two-phase commit (2PC) Fault tolerance - Fault tolerance is a way to handle exceptions that occur while consumers access a service. If an exception occurs, the service framework automatically selects a new service route to be called. Issue 01 (2018-04-09) 8

5 Terms Full Spelling Acronym Description Identity and access management IAM Identity and access management (IAM) is a security management service for enterprise tenants in PaaS. It manages account information, role permissions, access control, and logs, as well as providing diversified account management and sign-in authorization and authentication. Instance - An instance is the minimum running and deployment unit of a microservice. Generally, it corresponds to an application process. Independent software vendor ISV The independent software vendor (ISV) is a type of complementary service provider. ISVs have an operable software system on their own, which supports software-as-aservice (SaaS). They can deploy the software system in the carrier's environment and develop their own customers. Isolation - Isolation is an exception detection mechanism. It is used when a request timeout or large traffic occurs. Its common parameters include timeout duration and the maximum number of concurrent requests. An exception is recorded when a timeout occurs or when the maximum number of concurrent requests exceeds the limit. The error rate and error request quantity are calculated in the circuit breaker mechanism based on the records. Load balancing - Route load balancing is required when an application accesses a microservice that has multiple instances. CSE provides a Ribbonbased load balancing solution. The load balancing policy can be set in a configuration file. Currently, the policy can be random or based on polling, session stickiness, or weight based on response time. Legacy - A legacy is a system that is in use but reaching the end of its software life cycle. Microservice - A microservice is a lightweight serviceoriented architecture (SOA) that is widely used to structure cloud applications and Internet applications as a collection of loosely coupled distributed services. Provider - A provider is a called microservice. Issue 01 (2018-04-09) 9

5 Terms Full Spelling Acronym Description Rate limiting - When resources are insufficient for service processing, the service framework needs to limit the access requests from consumers, enabling the flow control protection mechanism. Traffic can be controlled on both the consumer and the provider sides. On the consumer side, you can limit the frequency of requests sending to a certain provider. On the provider side, you can control the request transmission frequency of each consumer or limit the overall request transmission frequency based on the provider's resource consumption, preventing service breakdown caused by resource exhaustion. Service degradation - Service degradation includes block degradation and tolerance degradation policies. In block degradation, maintenance personnel or developers forcibly degrade a type of services or a certain service when an external trigger condition reaches a certain threshold. In fault tolerance degradation, when non-core services are unavailable, the service logic automatically bypasses the faulty services to ensure that core services run properly. Service Mesh - Service Mesh provides an infrastructurelayer service. To develop applications based on microservices, developers need to solve the issues in application running on a distributed network, such as fault tolerance, rate limiting, load balancing, service registry and discovery, and monitoring. Service Mesh is used as a proxy at L4/L7 to address these issues. Service - A service is an on-demand function object. In an application model, services are generally oriented to applications. Applications need to subscribe to services and bind to them before using them. In certain business scenarios, pay-per-use services are provided. Issue 01 (2018-04-09) 10

5 Terms Full Spelling Acronym Description Try/Confirm/Cancel TCC Try/Confirm/Cancel (TCC) is a transaction management framework of the eventual consistency. TCC transactions can be classified as compensation transactions. Web Services Atomic Transaction WSAT Web Services Atomic Transaction (WSAT) is a transaction management framework of the strong consistency. Issue 01 (2018-04-09) 11

6.1 LocalServiceCenter 6.2 Java SDK 6.3 Go SDK 6.4 Service Mesh 6.5 Key Generation Tool 6.6 Local CSE 6.1 LocalServiceCenter Version Release Date Description 2.2.63 2018.6.5 Improved usability and fixed bugs. 2.2.60 2018.6.1 Added new features. 2.2.63 2.2.60 Support contract tests on the UI. Microservices can be directly deleted on the UI. Start UI offline. Support UI. Support IPv6. Issue 01 (2018-04-09) 12

6.2 Java SDK Version Release Date Description 2.3.25 2018.6.5 This version maps to CSE2.3.13. Supported new functions and scenarios for the three modules: graceful exit, edge service, and access log. Optimized the client microservice routing mechanism and upgraded the third-party software related to validation. 2.3.23 2018.6.1 This version maps to CSE 2.3.12. Supported HTTP 2.0 communication, self-reference data type, upgrade of Spring and Netty, and optimized API management related to service instance reliability and contract registry. 2.3.20 2018.5.16 This version maps to CSE 2.3.11. Optimized the experience of integration between the configuration center and service center, and Spring Cloud, and fixed a few bugs. 2.3.18 2018.4.26 This version maps to CSE 2.3.10. Provided JSR Validation and file downloading capabilities, optimized metrics, monitoring data reporting, and error control functions, and fixed some bugs. 2.3.12 2018.4.3 This version maps to CSE 2.3.9. Supported communication using OpenSSL, service instance isolation based on the environment, API-level rate limiting for the provider, and fault injection for the consumer, modified some features, and fixed some bugs. 2.3.9 2018.3.6 This version maps to CSE 2.3.8. The mapping service center version is upgraded to 2.2.45, which provided new functions such as reporting the version of the framework component that supports microservice O&M. 2.3.8 2018.2.3 This version maps to CSE 2.3.7. Changed the open-source package name from io.servicecomb to org.apache.servicecomb, provided generic support for REST, modified some features, and fixed some bugs. 2.2.39 2018.1.11 This version maps to CSE 2.3.5. Interconnected Spring Cloud features with CSE, improved the reliability of instance query, optimized reactive invocation and other features, and fixed some bugs. Issue 01 (2018-04-09) 13

Version Release Date Description 2.2.31 2018.1.9 This version maps to CSE 2.3.4. Fixed some bugs. No features are added. 2.2.28 2017.12.25 This version maps to CSE 2.3.3. Added a starter to Spring Cloud to interconnect with the service center. Fixed bugs on the governance module and canary release module. 2.2.21 2017.12.18 This version maps to CSE 2.3.2. Added password authentication when the TCC transaction uses the Redis database, repaired the strong consistency transaction, and fixed some bugs on the common module. 2.2.13 2017.12.13 This version maps to CSE 2.3.1. Fixed some bugs. No features are added. 2.2.11 2017.12.08 This version maps to CSE 2.3.0. The change history is provided based on version 2.2.8. Added the public and private key pair authentication mechanism between microservices. 2.3.25 The J2EE running environment (Tomcat) supports graceful exit. The event mechanism is added to the graceful exit of the Vert.x running environment, and the logic for graceful exit of these two environments is unified. The edge service provides two general routing management mechanisms: dark management based on service names and versions and dark management based on URL mapping, simplifying the edge service usage. The access log can print context header formation, and the supported format can be expanded. The edge mechanism is used to manage consumer contracts. By default, all versions (0+) are pulled (the latest version is pulled previously). In addition, the isolated ClassLoader is used to call APIs for different versions to resolve abnormal API call and recovery failure because the customer is upgraded before the provider with API changes (the customer changes accordingly). The validation-api is upgraded from 1.1.0 to 2.0.0. The hibernate-validator is upgraded from 5.2.4.Final to 6.0.2.Final. The hibernate-validator-annotation-processor is upgraded from 5.2.2.Final to 6.0.2.Final. The configuration center prints null pointer exceptions (NPEs) cyclically in watch mode. Issue 01 (2018-04-09) 14

2.3.23 2.3.20 Interface definition supports the data type that is self-referenced. Graceful shutdown is supported. Specifically, when the service stops, the network thread is closed and waits for the call to complete. SDK supports HTTP 2.0 as the communication protocol. In contract definition, x-java-interface is optional. The ServiceComb Java Chassis version is commit id 5fc99f5. Provide an instance protection mechanism when the service center network is temporarily unreachable or the service center restarts due to a fault. When an empty instance is queried from the service center, the current instance is pinged by default. If the instance is successfully pinged, the local instance is not removed. Upgrade the Spring version from 4.3.5.RELEASE to 4.3.16.RELEASE. Note: In the new version, when the native RestTemplate API of Spring has unknown HTTP error codes, the API behavior changes. However, APIs provided by CSE are not affected. Upgrade the Netty version from 4.1.17.Final to 4.1.24.Final. Configuration item query of the configuration center fails because the microservice name is not transcoded. An exception occurs when a large-size file is upgraded. The server encounters NPEs when an empty file is uploaded by the consumer. The microservice fails to register with the service center after the microservice starts before the service center. Microservices whose information is deleted during microservice registry cannot be registered. During configuration center initialization, the preconfiguration function is supported upon configuration query of one time. The port number does not need to be configured in the service center address. Instead, the default port number can be used according to the protocol. The priority of the application.yml configuration file of the Spring Boot is higher than that of the microservice.yaml file. A service instance fails to be queried when the environment parameter is configured. This problem involves the change of the API for querying a service center instance. The environment parameter needs to be carried in the API. A service instance fails to be queried when the environment parameter is configured. Issue 01 (2018-04-09) 15

Modified the traceid generation and printing functions in the EdgeService scenario. 2.3.18 2.3.12 Add the environment to which the service metrics belong to the service metrics reported to the dashboard. Print the data collected by metrics in logs. Add a simplified method for setting configuration items. Support the JSR Validation API. Support file downloading. Support integration with the configuration file of Spring Boot or Spring Cloud. Provide cse-solution-spring-cloud simplify Spring Cloud application access to CSE. Cache the SPI service instance to avoid creating new instances each time. Optimize the metrics to align with the open-source ecosystem, and discard the perfstats processing chain. Enable the metrics module after it is referenced through servicecomb.metrics.publisher.defaultlog.enabled=true. Adjust default values such as the metric release period and whether to print logs. Adjust the error detection conditions for instance isolation and retry to reduce log printing and unnecessary retry. Upgrade Guava from 16.0.1 to 19.0. Upgrade Jackson from 2.9.4 to 2.9.5. Enhance the process for obtaining the IP address of the monitoring data reporting server. Remove the dependency on slf4j-log4j12 from foundation-auth. The client rate limiting does not support dots (.) in the microservice or schema name. Change DarklaunchRule to build once upon the call to avoid concurrent problems. Metrics cannot be obtained in some scenarios. A concurrent access problem occurs when both WeightedResponseTimeRule and a canary release policy are triggered. Support communication using OpenSSL. Isolate service instances on the environment. Support API-level rate limiting for the service provider. Support fault injection for the service consumer. Use HttpClientFilter and HttpServerFilter to parse the REST parameter to support user-defined encoding extension. Enable the system to automatically switch to an available server when multiple configuration centers are configured. Issue 01 (2018-04-09) 16

Enable the pull mode of the service center by default. Change the default size of the HTTP header from 8 KB to 32 KB. Null pointer exception (NPE) occurs in the log when the Edge Service cannot find the service. Enable SessionSticklessRule to support service-level parameter configuration to rectify the problem that parameter settings on the governance page do not take effect. The total number of monitoring data requests and the request failure rate are incorrectly calculated. 2.3.9 2.3.8 Report the version of the framework component to the service center based on O&M requirements. Upgrade Jackson from 2.8.10 to 2.9.4. Change the minimum supported version of the service center to 2.2.45. Memory leakage may occur when the Edge service forwards services that do not exist. Provide generic support for REST. Provide user-defined configuration items for Netty DNS. Integrate the view function from Spring Web MVC. Add the TraceId in the access log. Change the ServiceComb code package name to org.apache.servicecomb. Add request success/failure records to the Invocation plug-in. Migrate the com.huawei.paas.cse:foundation-config-cc module to the org.apache.servicecomb:config-cc module. Remove the third-party dependency that conflicts with the Apache license. Upgrade Netty to 4.1.17 and Jackson to 2.9.2. An exception occurs when the consumer calls the highway API due to the hyphen (-) contained in the request parameter name. Only the first part of service_description.description is registered with the service center due to service_description.description in the microservice.yaml file is separated by commas (,). APIGateway cannot be connected due to domain name resolution. Issue 01 (2018-04-09) 17

2.2.39 2.2.31 2.2.28 Interconnect Spring Cloud applications with CSE. Support the embedded traceid of invocation tracing. Use the @Api field to generate tags. Support the CompletableFuture asynchronous invocation feature. Optimize the instance query mechanism of the service center to improve reliability. Optimize the performance of reactive invocation. Add service and instance information to the dashboard. Java SDK with an earlier version fails to be accessed due to redundant attribute information delivered during canary release. Configure the loading priority of the cse-solution-service-engine configuration to the lowest, and allow developers to customize the configuration. A request signing failure occurs when multiple service center addresses are configured. Upgrade the Jackson version to be the same as that of ServiceComb. Delete duplicate dependency items. The canary release rules are case sensitive. The circuit breaker status is incorrect and the number of circuit breakers is not reported. Enable the Java SDK to provide a standard alarm mechanism to enable the configuration center to report connection failure events. Add a starter to Spring Cloud to interconnect with the service center. Enable the canary release module to support data types such long and double. A large number of logs are printed when a large number of services degrade concurrently. Upgrade Jackson to resolve security vulnerabilities. The return value of the strong consistency transaction is lost. Issue 01 (2018-04-09) 18

The circuit breaker status of the monitoring data is incorrect. 2.2.21 2.2.13 2.2.11 Add password authentication when TCC transaction logs are stored in the Redis database. A.jar package conflict occurs when the metrics module is integrated into the OSGI environment. The decryption of the first connection to the service center fails due to the sequence of loading decryption tools of the configuration center in the scenario where AK/SK authentication is used. SignerUtils incorrectly modifies the time zone. The microservice startup fails after using the System.setProperty code to configure SSL configuration parameters. Use private and public key pairs for identity authentication between microservices. Modify the code format and spelling. The modification does not affect Java SDK functions. 6.3 Go SDK Version Release Date Description 1.2.4 2018.06.15 Corrected dashboard data. 1.2.3 2018.06.01 Corrected dashboard data. 1.2.1 2018.05.11 Fixed the issue that some governance policies do not take effect. Issue 01 (2018-04-09) 19

Version Release Date Description 1.2.0 2018.04.26 Modified the Registry API. 1.1.3 2018.04.13 Modified the connection to the configuration center and CSE monitoring, and supported canary release based on user-defined rules (matching the header). 1.1.0 2018.03.06 Supported multiple projects and canary release. 1.0 2018.01.20 This is the first release. Supported rapid development for microservices using the REST/ highway protocol and fast access to CSE. 1.2.4 1.2.3 1.2.1 1.2.0 The error rate of the dashboard changes to -1 in certain cases. The circuit breaker request is calculated to the number of failures. The log recording call failures does not contain the server information. The number of requests in the dashboard is the total number of requests in the last 10s. The dashboard cannot distinguish between different instances of the same host. The error rate in the dashboard is incorrect. The null pointer is not determined when the provider data is obtained. After static microservice information is deleted, instance information cannot be synchronized. The polling policy does not take effect for multiple versions and multiple instances. After a dark launch rule is deleted, the local routing rule cannot be used. Manual circuit breaker does not take effect. The retry succeeds but the correct result cannot be obtained. Forcible service degradation does not take effect. Split the Registry API into the Registrator, ServiceDiscovery, and ContractDiscovery APIs. Issue 01 (2018-04-09) 20

Add the Router API. Support HTTP 2.0. Data cannot be reported to the CSE dashboard after a microservice is deleted. The forceclosed configuration item in circuit breaker does not take effect. No return code is displayed after the access to a server times out when the REST protocol is used. The function of setting routing weight rules is unstable. 1.1.3 1.1.0 1.0 Modify the access to the configuration center and CSE monitoring. Support canary release based on user-defined rules (matching the header). No retry mechanism is provided for service registry during startup. When the weights of routing rules are less than 100%, the remained traffic is not imported to the latest microservice version. The REST protocol does not take effect during an application-cross call. The return code and information for the isolation timeout are incorrect. The weight policy does not take effect. Support multiple projects. Support dark launch (weight). The client does not update the cache when the server instance is added or deleted. The processing results are different when the service access using different protocols times out. The configured timeout duration does not take effect. Support the development of microservices using the REST/highway protocol. Support functions, such as registration discovery, load balancing, circuit breaker, service degradation, fault tolerance, fault injection, and routing policy (REST). Support dynamic governance functions, such as load balancing, circuit breaker, service degrade, fault tolerance, and fault injection. Support the dashboard monitoring function. Issue 01 (2018-04-09) 21

6.4 Service Mesh Version Release Date Description 1.4.9 2018.06.15 Corrected dashboard data. 1.4.8 2018.06.01 Corrected dashboard data. 1.4.6 2018.05.11 Fixed the issue that some governance policies do not take effect. 1.4.5 2018.04.26 Support HTTP 2.0. 1.4.4 2018.04.13 Support multiple projects. 1.3.7 2018.02.23 Add the default monitoring address. 1.3.3 2018.01.20 Interconnect with Dubbo applications. 1.2 2017.12.28 Simplify configuration and improve usability. 1.1.2 2017.12.20 Simplify configuration and improve usability. 1.1 2017.12.08 This version is used in the infrastructure layer, helping service applications quickly become microservices. 1.0.5 2017.12.01 This version is used in the infrastructure layer, helping service applications quickly become microservices. 1.4.9 1.4.8 The error rate of the dashboard changes to -1 in certain cases. The circuit breaker request is calculated to the number of failures. The log recording call failures does not contain the server information. When the backend service returns error 500, the client cannot read the error information. The number of requests in the dashboard is the total number of requests in the last 10s. The mesher transparently returns the 5XX information sent from the server. The dashboard cannot distinguish between different instances of the same host. The error rate in the dashboard is incorrect. Issue 01 (2018-04-09) 22

The null pointer is not determined when the provider data is obtained. After static microservice information is deleted, instance information cannot be synchronized. The polling policy does not take effect for multi-version multi-instance. After a dark launch rule is deleted, the local routing rule cannot be used. 1.4.6 1.4.5 1.4.4 Manual circuit breaker does not take effect. The retry succeeds but the correct result cannot be obtained. Forcible service degradation does not take effect. Support HTTP 2.0. Data cannot be reported to the CSE dashboard after a microservice is deleted. The forceclosed configuration item in circuit breaker does not take effect. The function of setting route weight rules is unstable. Support multiple projects. Support dark launch governance. Support ServiceStage deployment without AK/SK configuration. The client does not update the cache when the server instance is added or deleted. The processing results are different when the service access using different protocols times out. The configured timeout duration does not take effect. The Dubbo protocol cannot be used to call the service with a version other than 0.0.1 by default. The configured Dubbo protocol fault injection policy does not take effect. No retry is provided for service registry during startup. When the weights of routing rules are less than 100%, the remained traffic is not imported to the latest microservice version. Isolation timeout status code 200 is reported. The admin API is unavailable. The dubbo provider may exit abnormally. A call fails when the length of the header field exceeds 6441 characters. The QPS data of mesher changes slowly. Issue 01 (2018-04-09) 23

1.3.7 1.3.3 1.2 1.1.2 The default listening address is not configured. The time weight policy does not take effect on the Dubbo protocol. Interconnect with Dubbo applications. Mesher cannot be started after an exit due to an initialization error. Service degradation fails when the service degrade policy is set to returnnull. The exception code is not generated when Service Mesh fails to obtain the chain. A 404 error is reported when Service Mesh deletes instances upon exit. Combine some configuration files. The CSE fails to be started when the network interface card (NIC) is not eth0. Hide the processing chain configuration from users. The configuration can be customized by users, or remain unchanged by default. Use the --mode command parameter to determine the running mode. The sidecar or per-host parameter can be added to --mode. By default, sidecar is added to -- mode. Register the frame name, version number, and registry information to the service center. Do not require to input environment variables when running the start.sh command. Hide the SSL configuration of internal components to simplify the configuration file. Do not require to specify CSE_REGISTRY_ADDR and SERVICE_NAME when deploying the container where microservices reside in ServiceStage. Issue 01 (2018-04-09) 24

1.1 1.0.5 Add a new load balancing policy, that is, instances are selected based on the delay. Support the fault injection function. The mesher process breaks down due to tracing handler configuration. Set appid of routing information to that of the consumer by default to avoid routing table configuration. 6.5 Key Generation Tool Version Release Date Description 1.0.4 2017.12.28 This is the first release. Provide the key encryption tool. 1.0.4 Generate the encrypted key file and the AK/SK file at a time. Provide the encryption API. 6.6 Local CSE Version Release Date Description 1.0.0 2018.6.11 Local CSE is a GUI-based tool, used for the lightweight service center and configuration center developed locally. 1.0.0 Issue 01 (2018-04-09) 25

Integrate the local lightweight service center. Integrate the local lightweight configuration center. Provide a lightweight console. Issue 01 (2018-04-09) 26