创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。
KubeSphere版本信息
KubeSphere 版本 : v3.3.0
问题是什么
表现为流量都是监控到的,但是流量调节不生效,v17已经完全接管了,但是没有效果。

下面是bookinfo的例子,是正常的。

下面是配置的yaml文件
apiVersion: app.k8s.io/v1beta1
kind: Application
metadata:
name: demo-business-demo-gray-basic-agg-svc
namespace: demo-pro-dev
labels:
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
annotations:
servicemesh.kubesphere.io/enabled: 'true'
spec:
selector:
matchLabels:
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
addOwnerRef: true
descriptor:
icons:
- src: /assets/bookinfo.svg
componentKinds:
- group: ''
kind: Service
- group: apps
kind: Deployment
- group: apps
kind: StatefulSet
- group: extensions
kind: Ingress
- group: servicemesh.kubesphere.io
kind: Strategy
- group: servicemesh.kubesphere.io
kind: ServicePolicy
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
namespace: demo-pro-dev
labels:
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
name: demo-business-demo-gray-basic-agg-svc-ingress
annotations:
nginx.ingress.kubernetes.io/service-upstream: 'true'
nginx.ingress.kubernetes.io/upstream-vhost: demo-business-demo-gray-basic-agg.demo-pro-dev.svc.cluster.local
spec:
rules:
- http:
paths:
- backend:
service:
name: demo-business-demo-gray-basic-agg-svc
port:
number: 38081
path: /
pathType: ImplementationSpecific
host: demo-business-demo-gray-basic-agg.demo-pro-dev.172.20.17.201.nip.io
---
kind: Service
apiVersion: v1
metadata:
name: demo-business-demo-gray-basic-agg-svc
namespace: demo-pro-dev
labels:
app: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
annotations:
servicemesh.kubesphere.io/enabled: 'true'
spec:
ports:
- name: http-38081
protocol: TCP
port: 38081
targetPort: 38081
selector:
app: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
type: ClusterIP
---
kind: ConfigMap
apiVersion: v1
metadata:
# configMap名称,请根据服务名替换demo-pro-micro-resource-inner-feature-pub-svc
name: demo-business-demo-gray-basic-agg-svc-config
namespace: demo-pro-dev
data:
# 应用启动配置文件,注意删除nacos配置,并配置DEV环境数据库、Redis、kafka等
application.yml: |-
server:
port: 38081
spring:
application:
name: demo-business-demo-gray-basic-agg-svc-app
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: demo-pro-dev
# Deployment名称,请根据服务名替换demo-pro-micro-resource-inner-feature-pub-svc
name: demo-business-demo-gray-basic-agg-svc-deployment
labels:
app: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
version: v67
annotations:
deployment.kubernetes.io/revision: '1'
kubesphere.io/description: 应用灰度发布示例
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
spec:
selector:
matchLabels:
app: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
replicas: 1
template:
metadata:
annotations:
prometheus.io/scrape: 'true'
prometheus.io/port: '8080'
prometheus.io/path: 'actuator/prometheus'
sidecar.istio.io/inject: 'true'
labels:
app: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
version: v67
spec:
serviceAccountName: pro-account-dev
volumes:
- name: host-time
hostPath:
path: /etc/localtime
type: ''
- name: config-volume
configMap:
name: demo-business-demo-gray-basic-agg-svc-config
defaultMode: 420
#存放skywalking探针的存储卷
- name: skywalking-agent
emptyDir: {}
#初始化skywalking探针的脚本
- name: skywalking-agent-plugin-config-volume
configMap:
name: skywalking-agent-plugin
defaultMode: 420
initContainers:
#初始化容器:拷贝skywalking的探针至临时存储卷
- name: agent-container
image: 'my-register.demo.com.cn/project-space/library/skywalking-java-agent:8.12.0-java11'
command:
- /bin/sh
args:
- /agent/config/copyPlugin.sh
resources:
limits:
cpu: '1'
memory: 1Gi
volumeMounts:
- name: skywalking-agent
mountPath: /agent
- name: skywalking-agent-plugin-config-volume
readOnly: true
mountPath: /agent/config
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: Always
containers:
- name: demo-business-demo-gray-basic-agg-svc-container
image: my-register.demo.com.cn/project-space/demo-pro-dev/demo-business-demo-gray-basic-agg-svc:SNAPSHOT-67
command:
- sh
- '-c'
- >-
java -Duser.timezone=GMT+08 -jar
-Dspring.config.location=/data/config/application.yml
app.jar
#使用skywalking的相关configmap进行环境变量配置
envFrom:
- configMapRef:
name: skywalking-agent-env
env:
# 启用kubernetes服务发现
- name: 'pro.kubernetes.enabled'
value: 'true'
# skywalking服务名称
- name: "SW_AGENT_NAME"
value: "灰度发布示例工程::xtcs"
ports:
- containerPort: 8080
volumeMounts:
- name: host-time
readOnly: true
mountPath: /etc/localtime
- name: config-volume
readOnly: true
mountPath: /data/config
#加载skywalking探针
- name: skywalking-agent
mountPath: /agent
---
kind: Service
apiVersion: v1
metadata:
name: demo-business-demo-gray-basic-svc
namespace: demo-pro-dev
labels:
app: demo-business-demo-gray-basic-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
version: v67
annotations:
servicemesh.kubesphere.io/enabled: 'true'
spec:
ports:
- name: http-38080
protocol: TCP
port: 38080
targetPort: 38080
selector:
app: demo-business-demo-gray-basic-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
type: ClusterIP
---
kind: ConfigMap
apiVersion: v1
metadata:
# configMap名称,请根据服务名替换demo-pro-micro-resource-inner-feature-pub-svc
name: demo-business-demo-gray-basic-svc-config
namespace: demo-pro-dev
data:
# 应用启动配置文件,注意删除nacos配置,并配置DEV环境数据库、Redis、kafka等
application.yml: |-
server:
port: 38080
spring:
application:
name: demo-business-demo-gray-basic-svc-app
---
apiVersion: apps/v1
kind: Deployment
metadata:
namespace: demo-pro-dev
# Deployment名称,请根据服务名替换demo-pro-micro-resource-inner-feature-pub-svc
name: demo-business-demo-gray-basic-svc-deployment
labels:
app: demo-business-demo-gray-basic-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
version: v67
annotations:
deployment.kubernetes.io/revision: '1'
kubesphere.io/description: 应用灰度发布示例
kubesphere.io/isElasticReplicas: 'false'
servicemesh.kubesphere.io/enabled: 'true'
spec:
selector:
matchLabels:
app: demo-business-demo-gray-basic-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
replicas: 1
template:
metadata:
annotations:
prometheus.io/scrape: 'true'
prometheus.io/port: '8080'
prometheus.io/path: 'actuator/prometheus'
sidecar.istio.io/inject: 'true'
labels:
app: demo-business-demo-gray-basic-svc
app.kubernetes.io/name: demo-business-demo-gray-basic-agg-svc
app.kubernetes.io/version: v67
version: v67
spec:
serviceAccountName: pro-account-dev
volumes:
- name: host-time
hostPath:
path: /etc/localtime
type: ''
- name: config-volume
configMap:
name: demo-business-demo-gray-basic-svc-config
defaultMode: 420
#存放skywalking探针的存储卷
- name: skywalking-agent
emptyDir: {}
#初始化skywalking探针的脚本
- name: skywalking-agent-plugin-config-volume
configMap:
name: skywalking-agent-plugin
defaultMode: 420
initContainers:
#初始化容器:拷贝skywalking的探针至临时存储卷
- name: agent-container
image: 'my-register.demo.com.cn/project-space/library/skywalking-java-agent:8.12.0-java11'
command:
- /bin/sh
args:
- /agent/config/copyPlugin.sh
resources:
limits:
cpu: '1'
memory: 1Gi
volumeMounts:
- name: skywalking-agent
mountPath: /agent
- name: skywalking-agent-plugin-config-volume
readOnly: true
mountPath: /agent/config
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: Always
containers:
- name: demo-business-demo-gray-basic-svc-container
image: my-register.demo.com.cn/project-space/demo-pro-dev/demo-business-demo-gray-basic-svc:SNAPSHOT-67
command:
- sh
- '-c'
- >-
java -Duser.timezone=GMT+08 -jar
-Dspring.config.location=/data/config/application.yml
app.jar
#使用skywalking的相关configmap进行环境变量配置
envFrom:
- configMapRef:
name: skywalking-agent-env
env:
# 启用kubernetes服务发现
- name: 'pro.kubernetes.enabled'
value: 'true'
# skywalking服务名称
- name: "SW_AGENT_NAME"
value: "灰度发布示例工程::xtcs"
ports:
- containerPort: 8080
volumeMounts:
- name: host-time
readOnly: true
mountPath: /etc/localtime
- name: config-volume
readOnly: true
mountPath: /data/config
#加载skywalking探针
- name: skywalking-agent
mountPath: /agent
下面是istio的运行状态:

其它的服务监控过程都是正常的,接口访问也是正常的。