关于kubernetes:Kubernetes-1205-Sentinel之alibabasentinelratelimiting服务测试

背景:

参照上文 Kubernetes 1.20.5搭建sentinel 。想搭建一个服务去测试下sentinel服务的表现形式。当然了其余服务还没有集成 就找了一个demo,参照:https://blog.csdn.net/liuhuiteng/article/details/107399979。

一. Sentinel之alibaba-sentinel-rate-limiting服务测试

1.maven构建测试jar包

参照https://gitee.com/didispace/SpringCloud-Learning/tree/master/4-Finchley/alibaba-sentinel-rate-limiting


就批改了连贯setinel dashboard的连贯批改为kubernetes集群中setinel服务的service ip与8858端口。
maven打包jar包。

2. 构建image镜像

其实 idea能够间接打进去image镜像的。当前钻研吧。复用了一下原来做其余springboot的Dockerfile。
cat Dockerfile

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD app.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

注:我mv了下把打进去的jar包改名为app.jar了…也能够在pom.xml文件中自定义的批改了……

docker build -t ccr.ccs.tencentyun.com/XXXX/testjava:0.3 .
docker push ccr.ccs.tencentyun.com/XXXXX/testjava:0.3 

3. 部署测试服务

cat alibaba-sentinel-rate-limiting.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test
spec:
  replicas: 1
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
        - name: test
          image: ccr.ccs.tencentyun.com/XXXX/testjava:0.3
          ports:
            - containerPort: 8001
          resources:
            requests:
              memory: "256M"
              cpu: "250m"
            limits:
              memory: "512M"
              cpu: "500m" 
      imagePullSecrets:                                              
        - name: tencent
---

apiVersion: v1
kind: Service
metadata:
  name: test
  labels:
    app: test
spec:
  ports:
  - port: 8001
    protocol: TCP
    targetPort: 8001
  selector:
    app: test

留神:服务就命名为test了 ……

kubectl  apply -f alibaba-sentinel-rate-limiting.yaml -n nacos

4. 拜访 alibaba-sentinel-rate-limiting服务,察看sentinel dashboard

拜访alibaba-sentinel-rate-limiting服务,内部测试就不必ingress对外裸露了。间接外部CluserIP拜访了

$kubectl get svc -n nacos
NAME             TYPE        CLUSTER-IP        EXTERNAL-IP   PORT(S)             AGE
mysql            ClusterIP   172.254.43.125    <none>        3306/TCP            2d9h
nacos-headless   ClusterIP   None              <none>        8848/TCP,7848/TCP   2d8h
sentinel         ClusterIP   172.254.163.115   <none>        8858/TCP,8719/TCP   26h
test             ClusterIP   172.254.143.171   <none>        8001/TCP            3h5m

kubernetes 服务器集群外部 curl 172.254.143.171:8001/hello curl了十次……
登陆https://sentinel.saynaihe.com/察看

二. 测试下setinel性能

1. 流控规定

嗯拜访了下还行实时监控是有记录了
顺手做个流控阈值测试下qps就设置1吧


嗯成果如下。哈哈哈哈

嗯 有失败的了。

然而发现诡异的是我的这个应该是测试的没有配置存储什么的。常常的实时监控就没有了…..不晓得是不是没有配置存储的起因。

2. 降级规定

降级规定就不测试了 感觉都一样…简略

3. 热点

4. 零碎规定

5. 受权规定

6. 集群流控


机器列表。嗯 我想把pod变成两个试试 看看是不是我了解的这样会变成2个?

重温一下kubectl scale –help

kubectl scale deployment/test --replicas=2 -n nacos



对于我来说根本成果曾经达到…其余的持续钻研吧

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理