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

网站开发文件哪里可以找到制作网站的公司

网站开发文件,哪里可以找到制作网站的公司,网站架设标准,厦门微网站制作备考ICA----Istio实验4—使用 Istio 进行金丝雀部署 上一个实验已经通过DestinationRule实现了部分金丝雀部署的功能,这个实验会更完整的模拟展示一个环境由v1慢慢过渡到v2版本的金丝雀发布. 1. 环境清理 kubectl delete gw/helloworld-gateway vs/helloworld dr/helloworld…备考ICA----Istio实验4—使用 Istio 进行金丝雀部署 上一个实验已经通过DestinationRule实现了部分金丝雀部署的功能,这个实验会更完整的模拟展示一个环境由v1慢慢过渡到v2版本的金丝雀发布. 1. 环境清理 kubectl delete gw/helloworld-gateway vs/helloworld dr/helloworld-destination测试 kubectl get svc,pods for i in {1..10};do curl $(kubectl get svc helloworld|grep helloworld|awk {print $3:$5}|awk -F/ {print $1/hello});sleep .5 ;done kubectl get gw,vs,dr恢复到这样就可以通过helloworld的svc将流量随机分配到v1和v2上 如果实验环境有问题,就重新部署hello kubectl delete -f istio/samples/helloworld/helloworld.yaml kubectl apple -f istio/samples/helloworld/helloworld.yaml2. 所有流量转发到v1 这步就模拟只存在1个版本的环境 canary/helloworld-canary-all-v1.yaml apiVersion: networking.istio.io/v1beta1 kind: Gateway metadata:name: helloworld-gateway spec:selector:istio: ingressgateway # use istio default controllerservers:- port:number: 80name: httpprotocol: HTTPhosts:- * --- apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:name: helloworld-destination spec:host: helloworldsubsets:- name: v1labels:version: v1- name: v2labels:version: v2 --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata:name: helloworld spec:hosts:- *gateways:- helloworld-gatewayhttp:- match:- uri:exact: /helloroute:- destination:host: helloworldport:number: 5000subset: v1weight: 100部署gw,vs,dr kubectl apply -f canary/helloworld-canary-all-v1.yaml测试效果 此时所有流量都交由v1进行响应 for i in {1..10};do curl http://192.168.126.220/hello;sleep .5;done3. 90%流量v1,10%流量v2 此时v2版本应用已经上线,将10%流量给v2,其余流量仍由v1进行应答 3.1 配置流量分发比例 canary/helloworld-canary-allin1-10v2.yaml apiVersion: networking.istio.io/v1beta1 kind: Gateway metadata:name: helloworld-gateway spec:selector:istio: ingressgateway # use istio default controllerservers:- port:number: 80name: httpprotocol: HTTPhosts:- * --- apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:name: helloworld-destination spec:host: helloworldsubsets:- name: v1labels:version: v1- name: v2labels:version: v2 --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata:name: helloworld spec:hosts:- *gateways:- helloworld-gatewayhttp:- match:- uri:exact: /helloroute:- destination:host: helloworldport:number: 5000subset: v1weight: 90- destination:host: helloworldport:number: 5000subset: v2weight: 10部署gw,vs,dr kubectl apply -f canary/helloworld-canary-allin1-10v2.yaml 测试效果 可以看到10个请求中有1个由v2应答,其他仍由v1进行响应 3.2 加入Hpa --- apiVersion: autoscaling/v1 kind: HorizontalPodAutoscaler metadata:name: hpa-helloworld-v1 spec:maxReplicas: 20minReplicas: 1scaleTargetRef:apiVersion: apps/v1kind: Deploymentname: helloworld-v1targetCPUUtilizationPercentage: 50 --- apiVersion: autoscaling/v1 kind: HorizontalPodAutoscaler metadata:name: hpa-helloworld-v2 spec:maxReplicas: 20minReplicas: 1scaleTargetRef:apiVersion: apps/v1kind: Deploymentname: helloworld-v2targetCPUUtilizationPercentage: 50部署hpa kubectl apply -f canary/hpa.yaml3.3 压测 while true;do curl http://192.168.126.220/hello;done产生大量请求 此时v1,v2因访问量大触发hpa扩容,直到v1到达上线16个pod,v2到达3个 4. 50%流量v1,50%流量v2 4.1 配置流量分发比例 dr和gw部分就不用动了.只要修改vs的weight部分就可以 canary/helloworld-canary-vs-50v2.yaml --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata:name: helloworld spec:hosts:- *gateways:- helloworld-gatewayhttp:- match:- uri:exact: /helloroute:- destination:host: helloworldport:number: 5000subset: v1weight: 50- destination:host: helloworldport:number: 5000subset: v2weight: 50部署 kubectl apply -f canary/helloworld-canary-vs-50v2.yaml4.2 压测 此时流量以1:1分发给v1和v2 再观测hpa的情况会发现v2的cpu逐渐升高,v1的cpu逐渐降低,v2开始扩容,v1开始缩容,逐渐扩缩容到10:10 5. 所有流量转发v2 51. 配置流量分发比例 中间的10%,90%其实和前2个版本差不多,直接修改下数值就可以了.我们这里就忽略了,有兴趣的老哥可以进一步的修改模拟. 这里就模拟经过测试v2版本已经没有问题,我们将所有流量打到v2上 canary/helloworld-canary-all-v2.yaml --- apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata:name: helloworld spec:hosts:- *gateways:- helloworld-gatewayhttp:- match:- uri:exact: /helloroute:- destination:host: helloworldport:number: 5000subset: v2weight: 100部署 kubectl apply -f canary/helloworld-canary-all-v2.yaml5.2 压测 while true;do curl http://192.168.126.220/hello;done至此canary的一个模拟从v1到v2的版本切换就已经完成了 6. 拓展CanaryAB测试 6.1 canaryab配置 当我们进行canary测试的时候,普通用户是以50%:50%的流量分发到2个版本上,但我们希望测试人员trump同学,每次都是访问到新上线的v2版本上. canary/canary-ab-vs.yaml apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata:name: helloworld spec:hosts:- *gateways:- helloworld-gatewayhttp:- match:- headers:user:exact: trumpuri:exact: /helloroute:- destination:host: helloworldport:number: 5000subset: v2weight: 100- route:- destination:host: helloworldport:number: 5000subset: v1weight: 50- destination:host: helloworldport:number: 5000subset: v2weight: 50部署应用 kubectl apply -f canary/canary-ab-vs.yaml6.2 测试 6.2.1 普通用户测试 这部分用户进准的按1:1流量访问v1和v2 for i in {1..20};do curl http://192.168.126.220/hello;done6.2.2 测试人员访问 当测试人员trump访问时,匹配header中的用户名为trump,流量就被100%的打到v2版本上 for i in {1..20};do curl -H user:trump http://192.168.126.220/hello;done至此整个金丝雀部署完成
http://www.tj-hxxt.cn/news/135541.html

相关文章:

  • 目前热门的网站建设语言提供网站建设哪家好
  • 台山市网站建设类似wordpress的平台
  • 建网站那个好wordpress 文本框
  • dedecms英文外贸网站企业模板淘宝网站建设方案模板
  • 网站邮箱接口怎么设置长春网络推广公司哪个好
  • 为什么检测行业不能用网站做wordpress博客打开慢
  • 线上调研问卷在哪个网站上做wordpress wdcp
  • 网站建设的后如何发布春哥seo博客
  • 外贸全网营销推广长沙关键词优化首选
  • 建网站做联盟备案网站名称怎么写个人
  • 公司网站建设价位网站中的二维码设计
  • 东莞宣传网站西安高校网站建设定制网站建设
  • 建设外贸商城网站太仓网络公司
  • 网站怎么做权重福州网站开发私人
  • 自己怎么做点击量好的网站宣城网站推广
  • 怎么做班级网站江西南昌网站建设服务
  • 用vs2012做网站教程怎么做关于花的网站
  • 网站怎样做有利于seo哪个平台免费招人最快
  • 给公司网站设计做淘客网站需要备案
  • 石家庄建站优化公司做网站需要apache
  • 百度网站惩罚期企业网站seo诊断工具
  • 图书网站建设实训心得安徽建设住房建设厅网站
  • 网站百度权重没有数据导购wordpress主题
  • 织梦怎么做中英文网站怎么制作微信网站
  • 网站建设与维护教学视频如何查找昆明公司的网站
  • 淘客网站代理地震网最新消息今天
  • 销售网站建设的意义wordpress 标签中文
  • 苏州网站建设致宇100个无水印短视频素材免费
  • 龙岗公司做网站做网站主要学什么条件
  • 使用flashfxp上传网站域名和网站的建设实训报告