如何通过k8入口控制器来实现应用的流量复制

  介绍

本篇文章给大家分享的是有关如何通过k8入口控制器来实现应用的流量复制,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

如何在阿里云容器服务不同k8集群内进行应用的流量复制

仿真测试

通常在系统进行重大重构或者发布新功能时,我们都需要进行压测以事先评估新系统的承载能力,传统情况下我们一般会在线下环境来模拟线上各种测试数据来对新系统进行测试,但是这种方式往往并不能有效地模拟出线上真实的访问量,尤其是模拟出正常流量中混杂着各色的异常流量,针对这种情况我们可以通过将线上的应用流量复制到指定的线下环境来对新系统进行仿真测试;另外一种情况假若我们线上系统遇到了性能瓶颈,但是又不能快速地定位出问题点,我们同样可以采用流量复制的方式来将应用的真实流量引导到线下环境来进行定位。下面主要跟大家分享下如何在阿里云容器服务不同k8集群内进行应用的流量复制:
如何通过k8入口控制器来实现应用的流量复制

部署基础应用

这里假设您已经在阿里云容器服务控制台申请了两个不同的k8集群(暂定一个为k8产品集群,一个为k8阶段集群)。

一,在美丽的产品集群中部署一个应用,并通过入口来对外暴露服务访问:

 apiVersion:扩展/v1beta1
  :部署
  元数据:
  名称:才能nginx-deployment
  规范:
  副本才能:1
  选择器:才能
  ,,,matchLabels:
  ,,,,,的应用:nginx
  模板:才能
  ,,,元数据:
  ,,,,,标签:
  ,,,,,,,的应用:nginx
  ,,,规范:
  ,,,,,的容器:
  ,,,,,#,当前配置为老版本镜像
  ,,,,,神;形象:;registry.cn-hangzhou.aliyuncs.com/xianlu/old-nginx
  ,,,,,,,imagePullPolicy:总是
  ,,,,,,,名字:nginx
  ,,,,,,,港口:
  ,,,,,,,今天早上,containerPort: 80
  ,,,,,,,,,协议:TCP
  ,,,,,restartPolicy:总是
  ---
  apiVersion: v1
  :服务
  元数据:
  名称:才能nginx-service
  规范:
  港口:才能
  之处,才能端口:80
  ,,,协议:TCP
  ,,,发送:80
  选择器:才能
  ,,,的应用:nginx
  类型:才能NodePort
  ---/v1beta1 apiVersion:扩展
  :入口
  元数据:
  名称:才能nginx-ingress
  规范:
  规则:才能
  #才能,这里配置使用了集群默认域名(您也可以使用自定义域名并作DNS解析)
  的才能,主持人:nginx.c37bf6b77bded43669ba2fb67448b4146.cn-hangzhou.alicontainer.com
  ,,,http:
  ,,,,,路径:
  ,,,,,神;路径:/,,,,,,,后端:
  ,,,,,,,,,名:nginx-service
  ,,,,,,,,,servicePort:, 80 

二部署完成后可通过如下命令测试访问:

<>之前,,#,查看该应用的入口配置   kubectl 才能;get  ing  nginx-ingress   NAME ,,,,,,,,,,, HOSTS ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ADDRESS ,,,,,,,, PORTS ,,,年龄   nginx-ingress ,, nginx.c37bf6b77bded43669ba2fb67448b4146.cn-hangzhou.alicontainer.com ,, 47.110.199.44 ,, 80,,,,,,,, 8米   ,   #,才能测试访问应用域名   ,curl  http://nginx.c37bf6b77bded43669ba2fb67448b4146.cn-hangzhou.alicontainer.com   老

三,在k8阶段集群中部署一个相同应用,同样通过入口来对外暴露服务访问:

 apiVersion:扩展/v1beta1
  :部署
  元数据:
  名称:才能nginx-deployment
  规范:
  副本才能:1
  选择器:才能
  ,,,matchLabels:
  ,,,,,的应用:nginx
  模板:才能
  ,,,元数据:
  ,,,,,标签:
  ,,,,,,,的应用:nginx
  ,,,规范:
  ,,,,,的容器:
  ,,,,,#,当前配置为新版本镜像
  ,,,,,神;形象:;registry.cn-hangzhou.aliyuncs.com/xianlu/new-nginx
  ,,,,,,,imagePullPolicy:总是
  ,,,,,,,名字:nginx
  ,,,,,,,港口:
  ,,,,,,,今天早上,containerPort: 80
  ,,,,,,,,,协议:TCP
  ,,,,,restartPolicy:总是
  ---
  apiVersion: v1
  :服务
  元数据:
  名称:才能nginx-service
  规范:
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

如何通过k8入口控制器来实现应用的流量复制