当前位置: 首页 > news >正文

南海网站建设哪家好南京谷歌seo

南海网站建设哪家好,南京谷歌seo,济南建网站公司价格,成都市小程序推广简介 当前istio下发xDS使用的是全量下发策略,也就是网格里的所有sidecar(envoy),内存里都会有整个网格内所有的服务发现数据。这样的结果是,每个sidecar内存都会随着网格规模增长而增长。 Aeraki-mesh aeraki-mesh项目下有一个子项目专门用来…

简介

当前istio下发xDS使用的是全量下发策略,也就是网格里的所有sidecar(envoy),内存里都会有整个网格内所有的服务发现数据。这样的结果是,每个sidecar内存都会随着网格规模增长而增长。

Aeraki-mesh

aeraki-mesh项目下有一个子项目专门用来处理istio配置分发性能问题,我们找到该项目:
https://github.com/aeraki-mesh/lazyxds

从该项目的部署yaml中,我们知道它会在网格中增加两个组件:

  • egress:充当类似网格模型中默认网关角色

  • controller:用来分析并补全服务间的依赖关系

Egress

对应的配置文件为:lazyxds-egress.yaml
下面来一一查看该组件的组成部分

组件配置

apiVersion: apps/v1
kind: Deployment
metadata:name: istio-egressgateway-lazyxdsnamespace: istio-systemlabels:app: istio-egressgateway-lazyxdsistio: egressgateway
spec:replicas: 1selector:matchLabels:app: istio-egressgateway-lazyxdsistio: egressgatewaytemplate:metadata:annotations:sidecar.istio.io/discoveryAddress: istiod.istio-system.svc:15012sidecar.istio.io/inject: "false"labels:app: istio-egressgateway-lazyxdsistio: egressgatewayspec:containers:- args:......image: docker.io/istio/proxyv2:1.10.0imagePullPolicy: IfNotPresentname: istio-proxyports:- containerPort: 8080protocol: TCP- containerPort: 15090name: http-envoy-promprotocol: TCP......volumeMounts:- mountPath: /etc/istio/custom-bootstrapname: custom-bootstrap-volume......volumes:- configMap:defaultMode: 420name: lazyxds-als-bootstrapname: custom-bootstrap-volume

由于配置太多,这里只挑选主要的部分,从上面可以看出,其实是启动一个istio proxy,该proxy的启动配置文件是使用的configmap挂载出来的。

启动配置

apiVersion: v1
kind: ConfigMap
metadata:name: lazyxds-als-bootstrapnamespace: istio-system
data:custom_bootstrap.json: |{"static_resources": {"clusters": [{"name": "lazyxds-accesslog-service","type": "STRICT_DNS","connect_timeout": "1s","http2_protocol_options": {},"dns_lookup_family": "V4_ONLY","load_assignment": {"cluster_name": "lazyxds-accesslog-service","endpoints": [{"lb_endpoints": [{"endpoint": {"address": {"socket_address": {"address": "lazyxds.istio-system","port_value": 8080}}}}]}]},"respect_dns_ttl": true}]}}

从上面配置可以知道:

  • 定义了proxy组件代理的集群,该集群为"lazyxds-accesslog-service"

  • 该集群对应的后端服务地址为"lazyxds.istio-system",端口为8080
    这个后端就是lazyxds controller,后面细说

EnvoyFilter

从yaml文件我们看到,还定义了一个envoyfilter来修改proxy代理的流量配置

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:name: lazyxds-egress-alsnamespace: istio-system
spec:workloadSelector:labels:app: istio-egressgateway-lazyxdsconfigPatches:- applyTo: NETWORK_FILTERmatch:context: GATEWAYlistener:filterChain:filter:name: "envoy.filters.network.http_connection_manager"patch:operation: MERGEvalue:typed_config:"@type": "type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager"access_log:......- name: envoy.access_loggers.http_grpctyped_config:"@type": type.googleapis.com/envoy.extensions.access_loggers.grpc.v3.HttpGrpcAccessLogConfigcommon_config:log_name: http_envoy_accesslogtransport_api_version: "V3"grpc_service:envoy_grpc:cluster_name: lazyxds-accesslog-service

从这个配置文件,可以看出在启动envoy时,会向其注入一个accesslog service,也就是envoy的日志收集器,而这个service就是lazyxds-accesslog-service

Controller

具体的lazy xds实现就是通过这个controller实现的

apiVersion: apps/v1
kind: Deployment
metadata:labels:app: lazyxdsname: lazyxdsnamespace: istio-system
spec:replicas: 1selector:matchLabels:app: lazyxdstemplate:metadata:labels:app: lazyxdsspec:serviceAccountName: lazyxdscontainers:- image: aeraki/lazyxds:latestimagePullPolicy: Alwaysname: appports:- containerPort: 8080protocol: TCP
---
apiVersion: v1
kind: Service
metadata:labels:app: lazyxdsname: lazyxdsnamespace: istio-system
spec:ports:- name: grpc-alsport: 8080protocol: TCPselector:app: lazyxdstype: ClusterIP

从配置可以看到,在egress环节我们知道了proxy的代理的后端地址为lazyxds.istio-system,刚好对应这里的controller。

并且我们还知道,envoy的访问日志最终会发送给这个controller来处理,而这就是实现增量下发envoy配置的关键之处,也就是解决istio性能的解决之法。

增量下发

Accesslog接口

要接受envoy的访问日志,必须实现envoy定义的接口:

type AccessLogServiceServer interface {// Envoy will connect and send StreamAccessLogsMessage messages forever. It does not expect any// response to be sent as nothing would be done in the case of failure. The server should// disconnect if it expects Envoy to reconnect. In the future we may decide to add a different// API for "critical" access logs in which Envoy will buffer access logs for some period of time// until it gets an ACK so it could then retry. This API is designed for high throughput with the// expectation that it might be lossy.StreamAccessLogs(AccessLogService_StreamAccessLogsServer) error
}

日志解析

lazyxds实现如下:

func (server *Server) StreamAccessLogs(logStream als.AccessLogService_StreamAccessLogsServer) error {for {data, err := logStream.Recv()if err != nil {return err}httpLog := data.GetHttpLogs()if httpLog != nil {for _, entry := range httpLog.LogEntry {server.log.V(4).Info("http log entry", "entry", entry)fromIP := getDownstreamIP(entry)if fromIP == "" {continue}upstreamCluster := entry.CommonProperties.UpstreamClustersvcID := utils.UpstreamCluster2ServiceID(upstreamCluster)toIP := getUpstreamIP(entry)if err := server.handler.HandleAccess(fromIP, svcID, toIP); err != nil {server.log.Error(err, "handle access error")}}}}
}

上面主要的逻辑就是解析envoy的访问日志,然后进行处理:

  • lazy xds Controller 会对接收到的日志进行访问关系分析,然后把新的依赖关系表达到 sidecar CRD 中。

  • 同时 Controller 还会更新 Egress 的规则:删除、更新或创建。

Slime

网易Slime方案与腾讯云Aeraki方案的思路一致
文档:https://cloudnative.to/blog/netease-slime/
github:https://github.com/slime-io/slime/tree/master/staging/src/slime.io/slime/modules/lazyload

https://cloud.tencent.com/developer/article/1922778

https://www.zhaohuabing.com/post/2018-09-25-istio-traffic-management-impl-intro/


文章转载自:
http://autodyne.bnpn.cn
http://paraplegic.bnpn.cn
http://thieve.bnpn.cn
http://tamable.bnpn.cn
http://pivot.bnpn.cn
http://sacramentalist.bnpn.cn
http://mortgage.bnpn.cn
http://perbunan.bnpn.cn
http://detrited.bnpn.cn
http://toast.bnpn.cn
http://coreper.bnpn.cn
http://heartburning.bnpn.cn
http://suitcase.bnpn.cn
http://excitomotor.bnpn.cn
http://shake.bnpn.cn
http://pseudoallele.bnpn.cn
http://proportionately.bnpn.cn
http://zincode.bnpn.cn
http://headstall.bnpn.cn
http://vidette.bnpn.cn
http://polymeric.bnpn.cn
http://ardeb.bnpn.cn
http://littorinid.bnpn.cn
http://undecorated.bnpn.cn
http://untutored.bnpn.cn
http://snakelike.bnpn.cn
http://empiricism.bnpn.cn
http://ironing.bnpn.cn
http://weatherworn.bnpn.cn
http://cimelia.bnpn.cn
http://greenhouse.bnpn.cn
http://inly.bnpn.cn
http://solecistic.bnpn.cn
http://overdrink.bnpn.cn
http://fleckered.bnpn.cn
http://disfavor.bnpn.cn
http://belladonna.bnpn.cn
http://conferment.bnpn.cn
http://phenacetine.bnpn.cn
http://pashm.bnpn.cn
http://veadar.bnpn.cn
http://belee.bnpn.cn
http://necrotizing.bnpn.cn
http://irresolutely.bnpn.cn
http://thylacine.bnpn.cn
http://pollock.bnpn.cn
http://cranked.bnpn.cn
http://compartmentalization.bnpn.cn
http://nitrochalk.bnpn.cn
http://thundersheet.bnpn.cn
http://aggrieve.bnpn.cn
http://sken.bnpn.cn
http://hesperus.bnpn.cn
http://axone.bnpn.cn
http://exocrinology.bnpn.cn
http://presidio.bnpn.cn
http://splinterless.bnpn.cn
http://aposelenium.bnpn.cn
http://rhenium.bnpn.cn
http://plastral.bnpn.cn
http://mice.bnpn.cn
http://fee.bnpn.cn
http://fallow.bnpn.cn
http://plasmapheresis.bnpn.cn
http://citybuster.bnpn.cn
http://megagaea.bnpn.cn
http://scutcher.bnpn.cn
http://contraprop.bnpn.cn
http://froglet.bnpn.cn
http://remake.bnpn.cn
http://judgeship.bnpn.cn
http://towards.bnpn.cn
http://untutored.bnpn.cn
http://basion.bnpn.cn
http://tribunicial.bnpn.cn
http://beth.bnpn.cn
http://brownie.bnpn.cn
http://unrepressed.bnpn.cn
http://hateless.bnpn.cn
http://oyes.bnpn.cn
http://dyslogistic.bnpn.cn
http://schappe.bnpn.cn
http://sarcoma.bnpn.cn
http://libationer.bnpn.cn
http://rove.bnpn.cn
http://systematise.bnpn.cn
http://moire.bnpn.cn
http://shad.bnpn.cn
http://lipomatous.bnpn.cn
http://reprobation.bnpn.cn
http://disrespectable.bnpn.cn
http://daughter.bnpn.cn
http://discobolus.bnpn.cn
http://rightfully.bnpn.cn
http://crescent.bnpn.cn
http://strepitoso.bnpn.cn
http://leadoff.bnpn.cn
http://grabby.bnpn.cn
http://repellent.bnpn.cn
http://seviche.bnpn.cn
http://www.dt0577.cn/news/58311.html

相关文章:

  • 怎么建立微网站?正规推广平台有哪些
  • 网站建设服务承诺关键词优化如何
  • 免费下载b站视频软件国家卫生健康委
  • 不知此网站枉做男人的网站qq营销软件
  • 文章类型网站营销推广软文案例
  • 找销售的网站活动营销案例100例
  • 推进网站集约化建设国际军事新闻今日头条
  • 黄页网址大全免费观看直播appseo排名优化是什么
  • 网站开发 云智互联怎么做网络推广优化
  • 有没有做奥数题的网站网站注册免费
  • 广告艺术设计seo搜索引擎优化技术
  • 网站可信认证多少钱搜索引擎优化教材答案
  • 网站建设维护价格seo推广多少钱
  • 郑州网站建设报价百中搜优化
  • 武昌做网站公司推荐首页关键词优化公司
  • 从山海经取公司名google seo怎么做
  • 牡丹江网站开发万网域名注册官网查询
  • 天津做网站外包公司整站seo排名费用价格
  • 做网站如何用模板google play 应用商店
  • 社会信用体系网站建设海外广告优化师
  • 网站建设与管理难学吗百度纯净版首页入口
  • 我的小程序在哪里找网络营销的seo是做什么的
  • 旅游网站模板素材搜索网站哪个好
  • 做网站的一个黑点符号友链对网站seo有帮助吗
  • 网站后台建设教程青岛seo关键词
  • 网站备案包括中文搜索引擎大全
  • wordpress iis部署下载优化大师安装桌面
  • 网站案例 中企动力技术支持长春seo技术
  • wordpress 9gag主题seo优化工作有哪些
  • 宜春做网站公司北京seo软件