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

成都建网站比较好的公司6网站备案和前置审批

成都建网站比较好的公司6,网站备案和前置审批,长沙网站制作公司地址,在哪下载免费的英文版网站模板文章目录 原理实现DeploymentVirtualServiceDestinationRule 约束部署 目的: 根据不同的引擎版本,可以把请求发送到指定的引擎上。可以实现版本降级。 原理 Istio通过VirtualService和DestinationRule两个资源对象来实现流量管理,其中VirtualService用于…

目的: 根据不同的引擎版本,可以把请求发送到指定的引擎上。可以实现版本降级。

原理

Istio通过VirtualService和DestinationRule两个资源对象来实现流量管理,其中VirtualService用于定义流量路由规则,而DestinationRule用于定义服务的负载均衡策略和TLS设置

  • VirtualService: 实现服务请求路由规则的动能
  • DestinationRule: 实现⽬标服务的负载均衡、服务发现、故障处理和故障注⼊的功能
  • Gateway: 让服务⽹格内的服务,可以被全世界看到
  • ServiceEntry: 让服务⽹格内的服务,可以看到外⾯的世界

实现

Deployment

{{- $revisionHistoryLimit := .Values.revisionHistoryLimit -}}
{{- $replicaCount := .Values.replicaCount -}}
{{- $autoscaling := .Values.autoscaling.enabled -}}
{{- $podAnnotations := .Values.podAnnotations -}}
{{- $imagePullSecrets := .Values.imagePullSecrets -}}
{{- $podSecurityContext := .Values.podSecurityContext -}}
{{- $securityContext := .Values.securityContext -}}
{{- $pullPolicy := .Values.pullPolicy -}}
{{- $port := .Values.service.port -}}
{{- $resources := .Values.resources -}}
{{- $nodeSelector := .Values.nodeSelector -}}
{{- $repository := .Values.image.repository -}}
{{- $affinity := .Values.affinity -}}
{{- $tolerations := .Values.tolerations -}}
{{- range $num,$tag := .Values.image.tag -}}
{{- $version := add $num 1 -}}
apiVersion: apps/v1
kind: Deployment
metadata:name: {{ include "grpc-manifest.fullname" $  }}-v{{ $version }}labels:{{- include "grpc-manifest.labels" $ | nindent 4 }}app.kubernetes.io/tag: v{{ $version }}app.kubernetes.io/type: grpc
spec:revisionHistoryLimit: {{ $revisionHistoryLimit | default 5 }}{{- if not $autoscaling }}replicas: {{ $replicaCount }}{{- end }}selector:matchLabels:{{- include "grpc-manifest.selectorLabels" $ | nindent 6 }}app.kubernetes.io/tag: v{{ $version }}app.kubernetes.io/type: grpc...{{end }}

作用:可以根据版本生成对应的服务

VirtualService

{{- define "grpc-manifest.gateway" -}}
{{- $port := .Values.services.port }}
{{- range $num,$image := .Values.image.tag }}
{{- $version := add $num 1 }}- match:- headers:grpcsvc:exact: v{{ $version }}route:- destination:host: {{ include "grpc-manifest.fullname" $ }}port:number: {{ $port }}subset: v{{ $version }}
{{- end }}
{{- end }}

例子中,虚拟服务将流量分发服务的两个子集:v$version。也可设置权重默认是 100,表示 携带 header为grpcsvc: v$version 的流量将全量被路由到 v$version

DestinationRule

目标规则定义了如何将请求路由到实际的服务实例。每个目标规则关联到一个虚拟服务的子集

{{- define "grpc-manifest.route" -}}
{{- range $num,$image := .Values.image.tag }}
{{- $version := add $num 1 }}- name: v{{ $version }}labels:app.kubernetes.io/instance:  {{ include "grpc-manifest.fullname" $ }}app.kubernetes.io/tag: v{{ $version }}
{{- end }}
{{- end }}

例子中,目标规则将子集 v$version 分别映射到具有相应标签的实际服务实例。

需要多个版本同时部署时,会根据镜像自动更新资源配置

[root@ycloud grpc-manifest]# cat env/devel/image_tag.yaml 
image:tag:- v1.0.1- v1.0.2- v1.0.3- v1.0.4

约束

根据定义好的行为实现

访问通过添加metadata的方式来选择指定的版本,并且如果访问中 metadata 指定有误要做降级策略,给默认且可正常运行的版本

eg: (案例仅限测试,生产根据实际需求更新)

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:name:  {{ include "grpc-manifest.fullname" . }}
spec:workloadSelector:labels:app: istio-ingressgatewayconfigPatches:- applyTo: HTTP_FILTERmatch:context: GATEWAYlistener:filterChain:filter:name: "envoy.filters.network.http_connection_manager"subFilter:name: "envoy.filters.http.router"patch:operation: INSERT_BEFOREvalue:name: envoy.filters.http.luatyped_config:"@type": "type.googleapis.com/envoy.extensions.filters.http.lua.v3.Lua"inlineCode: |function envoy_on_request(request_handle)local contentType = request_handle:headers():get("content-type")if contentType and string.find(contentType, "grpc") thenlocal grpcSvcHeader = request_handle:headers():get("grpcsvc")local allowedVersions = {"v1", "v2", "v3", "v4"}local isInAllowedVersions = falsefor _, allowedVersion in ipairs(allowedVersions) doif grpcSvcHeader == allowedVersion thenisInAllowedVersions = truebreakendendif not isInAllowedVersions thenrequest_handle:headers():replace("grpcsvc", "v1")endendend

部署

待实现 自动部署和之前服务有出入,需要针对这个服务做调整,主要判断,通过版本引擎来自动更新旧版本

具体 Helm 案例届时会更新到 GitHub

http://www.yayakq.cn/news/600347/

相关文章:

  • 网站服务器管理 硬件江西省建设厅网站资质升级查询
  • 汉寿网站建设淮北论坛最新招聘信息网
  • 合肥网站建设久飞网站适合用angular做吗
  • 丽水山耕品牌建设网站新潮狼网站建设
  • 在别的公司做的网站企业建站有哪些步骤
  • 要怎样夸一个网站做的好看建网站要注册吗
  • 建设部招标网站wordpress文章版权声明
  • 网站规划市场分析注册公司代理记账报税
  • 网站的开发与设计wordpress生成微信分享图片不显示
  • 彩票资料网站怎么做设计制作建筑模型综合实践教案
  • 网站必须要实名认证么网页设计参考网站
  • 县级网站北京网站建设公司排名浩森宇特
  • .net网站开发实站建立自己的平台网站吗
  • 用vue做pc端网站自己做卖东西网站
  • 网站建设 起飞wordpress列表页模板
  • 中山电子商务网站建设专题探索网站开发教学模式的结构
  • 英文网站注册惠州宣传片制作公司
  • 杭州哪家做企业网站电商有哪些类目
  • 酒店的网站建设方案.net网站开发中注册页面
  • 电脑网络题搜网站怎么做郑州哪里做网站最好
  • 做网站常用代码向右浮动怎么写设计师网站登录入口
  • 做优惠券网站要多少钱爱空间家装怎么样?两点告诉你
  • 政务网站建设的重要性网络服务网络营销
  • 网站备案收费幕布c语言做项目网站
  • 建站公司专业团队wordpress批量修改文章内容
  • 常德网站建设哪家权威工信部网站登陆
  • 棋牌网站建设要多少钱花店网站模板免费下载
  • 余姚电商交易网站建设wordpress导航添加登录退出
  • 有什么网站可以免费权威的唐山网站建设
  • 网站开发流程中有哪几个阶段成都专业网站制作网站