检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
服务发现模型 Dubbo现有模型存在的问题(来自Dubbo社区2.7.4总结): 在微服务架构中,注册中心管理的对象是应用(服务),而非对外的服务接口,不过目前Dubbo的注册中心管理的对象是Dubbo服务接口,与Spring Cloud或Cloud Native注册方式背道而驰。
sidecar注入失败可能的原因 sidecar注入失败常见场景和解决方案: 可能原因:网格管理实例数到达上限,无法继续注入。 检查方法:统计网格注入Pod总数是否已达上限。 登录应用服务网格ASM控制台,在网格列表页面查看您的网格卡片展示的实例个数是否达到网格规格。如果达到即网格注入Pod总数已达上限。
Sidecar未就绪导致Pod启动失败 问题背景 加入网格的服务有时可能遇到Pod启动失败,且一直重启。排查原因发现业务容器与外部通信时流量会经过istio-proxy容器,但业务容器比istio-proxy容器先启动,在istio-proxy容器没启动成功时,业务容器已经启动,与外部通信将会失败,Pod一直重启。
如何解决应用数据获取失败的问题? 问题描述 服务添加完成后,在“服务列表”中,查看不到已创建的服务,页面提示“应用数据获取失败”。 排查思路 登录ASM控制台,按“F12”,切换到Network页签查看接口,接口全部返回200。查看Console输出存在如下报错: TypeError:
金丝雀升级失败常见场景及解决方案 进行金丝雀升级时,升级失败的常见场景和解决方案: CRD检查失败。 解决办法:新版本Istio 将不支持部分CRD,包括:clusterrbacconfigs 、serviceroles 、servicerolebindings 、policie
所有集群要有统一的网络规划,所有集群的容器网段、服务网段之间不能冲突。如果多个集群处于不同VPC,那么所有集群的VPC网段也不能冲突。同时,以上网段不能和网格控制面网段冲突。 非扁平网络 非扁平网络指的是两个或多个Kubernetes集群的Pod之间因为网络模型不支持、容器网段冲突等原因无法直接通信,而是通过一个东
网格控制面支持对Dubbo治理规则的配置。支持灰度发布、负载均衡、访问授权等服务管理。 另外,Dubbo的服务发现模型和Kubernetes、Spring Cloud等服务发现模型不一致,需要额外的处理。 父主题: 面向Dubbo协议的服务治理
设置fsgroup,导致业务容器挂载文件属组被修改 问题描述 业务pod注入sidecar时设置fsgroup为1337,导致业务容器挂载文件属组被改成1337。 原因分析 因为k8s 版本bug: https://github.com/kubernetes/kubernetes/issues/57923
K可以基于现有的服务注册和服务发现流程,做如下处理: 在注册信息中扩展Service的定义。在服务部署时会通过环境变量将服务的元数据信息注入到SDK中,包括appname、namespace,分别表示部署的服务名、部署的命名空间。 在服务启动时向注册中心注册Dubbo接口和Kubernetes服务名和命名空间的关系。
基本概念 工作负载 工作负载即Kubernetes对一组Pod的抽象模型,用于描述业务的运行载体,包括Deployment、Statefulset、Job、Deamonset等。 无状态工作负载(即Kubernetes中的“Deployments”):Pod之间完全独立、功能相同
起的Istio控制面组件Istiod和数据面组件Envoy的内存飙升问题。同时,从多个维度输出了Istio相关性能模型,填补了Istio在大规模实例场景下的性能模型空白,为Istio性能提升提供了有力支撑。 提高控制面Istiod稳定性 Istio采用的是全局更新配置信息策略,如
务消费者中对引用的服务提供者进行配置。使用选项url定义点对点直连服务提供者地址,绕过注册中心,直接调用目标服务。 详细说明 如果原Dubbo服务中使用的是xml配置文件,则只需要修改配置文件即可。 <?xml version="1.0" encoding="UTF-8"?> <beans>
登录CCE控制台,进入对应集群详情页,在左侧导航栏选择“运维 > 模板管理”。 单击“模板实例”页签,查看模板实例和卸载失败最新事件。 可以看到istio-master模板实例的执行状态为“卸载失败”,并且最新事件提示如下信息: deletion failed with 1 error(s): clusterroles:rbac
选择一个服务,单击操作列的“流量治理”,在右侧页面进行重试、超时、连接池、熔断、负载均衡、HTTP头域、故障注入策略的配置。 重试 服务访问失败自动重试,提高总体访问成功率和质量。 选择“重试”页签,单击“立即配置”,在弹出对话框中,根据实际需求配置如下参数: 表1 重试参数说明 参数名称
面向Dubbo协议的服务治理 简介 服务发现模型 SDK适配方式
且使用Istio管理应用间的通信。 因为种种原因,容器与虚拟机共存将是一个长期的过程,但容器化的趋势不变。 在阶段二中,大量的虚拟机应用并不能很快容器化,人们通常会将新业务和少量应用率先实现容器化,并部署到Kubernetes中。在应用尚未完全实现容器化,处于过渡阶段时会遇到诸多
集群B访问集群A的验证方法相同。 访问对端集群的容器IP(非扁平网络跳过) 本端和对端集群必须是“容器对接ENI”网络模型。如果是CCE集群,网络模型需要选择“VPC网络”;如果是CCE Turbo集群,网络模型需要是“云原生网络2.0”。 登录集群A的一个节点,访问集群B的某个Pod: curl http://PodIP:Port
证有2U4G的可用资源。 集群的服务网段、容器网段不能和网格内已有集群的服务网段、容器网段冲突。如果集群和网格内的已有集群处于不同的VPC,集群的子网网段也不能冲突。 如果实例(Pod)需要跨集群通信,集群需要使用ENI网络模型,且集群之间网络互通,可以处于同一VPC内,也可以将
群通信? 服务跨集群通信时网络不通,如何解决? Sidecar未就绪导致Pod启动失败 设置fsgroup,导致业务容器挂载文件属组被修改 金丝雀升级失败常见场景及解决方案 sidecar注入失败可能的原因
要使用ENI网络模型,且集群之间网络互通,可以处于同一VPC内,也可以将多个集群的VPC通过其他方式(对等连接、云连接等)连通。 集群的服务网段、容器网段不能和网格内已选集群的服务网段、容器网段冲突。如果集群和网格内的已选集群处于不同的VPC,集群的子网网段也不能冲突。 同一网格最多只能添加五个集群。