Difficulty: Intermediate
Estimated Time: 30


In this course, you will learn how to configure circuit breaker with MOSN as the data plane of Istio.

Circuit Breaking is a critical component of distributed systems. Circuit breaking lets applications configure failure thresholds that ensure safe maximums, allowing components to fail quickly and apply back pressure as soon as possible. Applying correct circuit breaking thresholds helps to save resources which otherwise are wasted in waiting for requests (timeouts) or retrying requests unnecessarily. One of the main advantages of the circuit breaking implementation in MOSN is that the circuit breaking limits are applied at the network level.

If you want to contribute or learn more about this tutorial, please join the MOSN Istio WG.

MOSN with Istio

Istio is the most popular Service Mesh, it use Envoy as the default data plane, MOSN is aim to be the alternative cloud native data plane that support Enovy’s xDS.

在本课程中,您将了解如何将 MOSN 作为 Istio Service Mesh 中的数据平面时,配置熔断。

熔断是分布式系统的关键组成部分。 熔断使应用程序可以配置故障阈值,以确保安全最大化,从而允许组件快速故障并尽快施加反压。 应用正确的断路阈值有助于节省资源,否则这些资源将浪费在等待请求(超时)或不必要地重试请求上。 MOSN中实现熔断的主要优点之一是断路限制适用于网络级别。

如果您想要进一步了解或贡献本教程,请加入 MOSN Istio WG

MOSN 和 Istio

Istio 是目前最受欢迎的 Service Mesh,使用 Envoy 作为默认的数据平面,MOSN 目标成为兼容 Envoy xDS 协议的可选数据平面之一。


Congratulations! You have compled the MOSN with istio circuitbreaker course, if you are interested in MOSN or have any questions, please leave a message.

MOSN is a powerful cloud native proxy written in Golang. As a cloud-native network data plane, MOSN is designed to provide services with multi-protocol, modular, intelligent, and secure proxy capabilities. MOSN can be integrated with any Service Mesh that supports the xDS API. It can also be used for other purposes, such as independent Layer 4 or 7 load balancer, API gateway, and cloud-native ingress

MOSN GitHub: https://github.com/mosn/mosn

Istio provides service configuration information for its data plane MOSN/Envoy as a standard control plane for Service Mesh.

Istio GitHub: https://github.com/istio/istio

Also, if you are interest in MOSN with Istio, please join the wg-istio working group.

恭喜您已经完成了《 MOSN with Istio circuitbreaker 》课程,如果你对 MOSN 感兴趣或者有任何疑问,欢迎留言交流。

MOSN(Modular Open Smart Network) Go 语言开发的网络代理软件,作为云原生的网络数据平面,旨在为服务提供多协议,模块化,智能化,安全的代理能力。 MOSN 开源 Github 仓库地址: https://github.com/mosn/mosn

Istio 作为云原生 Service Mesh 的标准控制面,为其数据面 MOSN/Envoy 提供服务配置信息。 Istio 开源 Github 仓库地址:https://github.com/istio/istio

另外如果您对《 MOSN with Istio circuitbreaker 》有相关需求,欢迎加入 wg-istio 交流。

MOSN with Istio Circuit Breaker

Step 1 of 5

Step 1: Install Istio with MOSN


This tutorial will automatically help you start a Kubernetes cluster with 2 nodes (one master node and one worker node), Kubernetes version is v1.14.0.

Download istio install file: curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.5.2 sh -

Add directory to your environment path variable with: export PATH="$PATH:/root/istio-1.5.2/bin"

Install operator for install cluster: istioctl operator init

Install cluster with operator: istioctl manifest apply --set profile=demo --set .values.global.proxy.image="mosnio/proxyv2:1.5.2-mosn" --set meshConfig.defaultConfig.binaryPath="/usr/local/bin/mosn

Wait a minute later. Check all component start succ for Status Running: kubectl get pods -n istio-system -o wide

本教程将自动帮您启动一个包含2个节点的 Kubernetes 集群(包含一个 master 节点,一个 worker 节点),Kubernetes 版本为 v1.14.0。

安装 Istio 集群

下载 Istio 安装文件: curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.5.2 sh -

添加文件夹到环境变量: export PATH="$PATH:/root/istio-1.5.2/bin"

安装 Operator 用来安装集群: istioctl operator init

使用 Operator 安装集群: istioctl manifest apply --set profile=demo --set .values.global.proxy.image="mosnio/proxyv2:1.5.2-mosn" --set meshConfig.defaultConfig.binaryPath="/usr/local/bin/mosn

等待几分钟,检查所有的组件启动成功,状态都是 Running: kubectl get pods -n istio-system -o wide