istio断路器示例

2023年 7月 9日 15.9k 0

此任务阐述如何为连接,请求和异常检测(outlier detection)配置断路器。断路器是创建弹性微服务应用程序的重要模式。断路器使应用程序可以适应网络故障和延迟尖峰等网络不良影响。在此任务中,将配置断路规则,然后通过有意地“跳闸”来测试断路器配置。

1    环境准备

通过执行下面的命令,启动httpbin示例:

$ kubectl apply -f samples/httpbin/httpbin.yaml

httpbin.yaml的代码内容如下:

apiVersion: v1
kind: Service
metadata:
  name: httpbin
  labels:
    app: httpbin
spec:
  ports:
  - name: http
    port: 8000
    targetPort: 80
  selector:
    app: httpbin
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: httpbin
spec:
  replicas: 1
  selector:
    matchLabels:
      app: httpbin
      version: v1
  template:
    metadata:
      labels:
        app: httpbin
        version: v1
    spec:
      containers:
      - image: docker.io/kennethreitz/httpbin
        imagePullPolicy: IfNotPresent
        name: httpbin
        ports:
        - containerPort: 80

该httpbin应用程序充当此任务的后端服务。

2    配置断路器

创建一个目标规则,以在调用httpbin服务时应用断路器设置:

$ kubectl apply -f -  Parsed non ok code 503 (HTTP/1.1 503)

Ended after 106.474079ms : 20 calls. qps=187.84

Aggregated Function Time : count 20 avg 0.010215375 +/- 0.003604 min 0.005172024 max 0.019434859 sum 0.204307492

# range, mid point, percentile, count

>= 0.00517202 0.006 0.007 0.008 0.009 0.01 0.011 0.012 0.016 0.018 2 procs, for 5s: http://httpbin:8000/get

Starting at max qps with 3 thread(s) [gomax 2] for exactly 30 calls (10 per thread + 0)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

23:51:51 W http.go:617> Parsed non ok code 503 (HTTP/1.1 503)

Ended after 71.05365ms : 30 calls. qps=422.22

Aggregated Function Time : count 30 avg 0.0053360199 +/- 0.004219 min 0.000487853 max 0.018906468 sum 0.160080597

# range, mid point, percentile, count

>= 0.000487853 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.014 0.018

相关文章

KubeSphere 部署向量数据库 Milvus 实战指南
探索 Kubernetes 持久化存储之 Longhorn 初窥门径
征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
那些年在 Terraform 上吃到的糖和踩过的坑
无需 Kubernetes 测试 Kubernetes 网络实现
Kubernetes v1.31 中的移除和主要变更

发布评论