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

网站首页做很多个关键词proxy网页在线代理

网站首页做很多个关键词,proxy网页在线代理,东莞常平网站设计,建立网站解析会员视频是犯什么罪假设有如下三个节点的 K8S 集群: ​ k8s31master 是控制节点 k8s31node1、k8s31node2 是工作节点 容器运行时是 containerd 一、场景分析 阅读本文,默认您已经安装了 K8S Gateway。 关于 AB 测试、金丝雀发布,可以看这篇文章。 二、实验准…

假设有如下三个节点的 K8S 集群:

k8s31master 是控制节点

k8s31node1、k8s31node2 是工作节点

容器运行时是 containerd

 一、场景分析

阅读本文,默认您已经安装了 K8S Gateway。

关于 AB 测试、金丝雀发布,可以看这篇文章。

 二、实验准备

  • 镜像下载

# 在各个工作节点下载
[root@k8s31node1 ~]# ctr -n=k8s.io images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:latest
[root@k8s31node1 ~]# ctr -n=k8s.io images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:latest  docker.io/openresty/openresty:latest[root@k8s31node2 ~]# ctr -n=k8s.io images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:latest
[root@k8s31node2 ~]# ctr -n=k8s.io images tag  swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:latest  docker.io/openresty/openresty:latest
  •  部署 v1

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-v1
spec:replicas: 1selector:matchLabels:app: nginxversion: v1template:metadata:labels:app: nginxversion: v1spec:containers:- name: nginximage: "openresty/openresty:latest"imagePullPolicy: IfNotPresentports:- name: httpprotocol: TCPcontainerPort: 80volumeMounts:- mountPath: /usr/local/openresty/nginx/conf/nginx.confname: configsubPath: nginx.confvolumes:- name: configconfigMap:name: nginx-v1
---
apiVersion: v1
kind: ConfigMap
metadata:labels:app: nginxversion: v1name: nginx-v1
data:nginx.conf: |-worker_processes  1;events {accept_mutex on;multi_accept on;use epoll;worker_connections  1024;}http {ignore_invalid_headers off;server {listen 80;location / {access_by_lua 'local header_str = ngx.say("nginx-v1")';}}}
---
apiVersion: v1
kind: Service
metadata:name: nginx-v1
spec:type: ClusterIPports:- port: 80protocol: TCPname: httpselector:app: nginxversion: v1

该 yml 定义了三个资源 ConfigMap、Deployment、Service。

  • ConfigMap 定义了一个 nginx.conf 配置文件,使用 lua 脚本输出 nginx-v1。
  • Deployment 定义了一个 Pod,里面运行 openresty 它是一个封装了 nginx+lua 的 web 服务器。Pod 有两个标签 app: nginx、version: v1。
  • Service 代理了 Deployment 运行的 Pod。

部署 v2

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-v2
spec:replicas: 1selector:matchLabels:app: nginxversion: v2template:metadata:labels:app: nginxversion: v2spec:containers:- name: nginximage: "openresty/openresty:latest"imagePullPolicy: IfNotPresentports:- name: httpprotocol: TCPcontainerPort: 80volumeMounts:- mountPath: /usr/local/openresty/nginx/conf/nginx.confname: configsubPath: nginx.confvolumes:- name: configconfigMap:name: nginx-v2
---
apiVersion: v1
kind: ConfigMap
metadata:labels:app: nginxversion: v2name: nginx-v2
data:nginx.conf: |-worker_processes  1;events {accept_mutex on;multi_accept on;use epoll;worker_connections  1024;}http {ignore_invalid_headers off;server {listen 80;location / {access_by_lua 'local header_str = ngx.say("nginx-v2")';}}}
---
apiVersion: v1
kind: Service
metadata:name: nginx-v2
spec:type: ClusterIPports:- port: 80protocol: TCPname: httpselector:app: nginxversion: v2

三、AB 测试

1)创建 gateway

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:name: nginx-gatewaynamespace: default
spec:gatewayClassName: nginxlisteners:- name: httpprotocol: HTTPport: 80

 2)创建 httproute

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:name: abtest-routenamespace: default
spec:parentRefs:- name: nginx-gatewayhostnames:- "abtest.example.com"rules:- matches:- path:type: PathPrefixvalue: / headers:- name: "version"value: "v1"backendRefs:- name: nginx-v1kind: Serviceport: 80- matches:- path:type: PathPrefixvalue: /headers:- name: "version"value: "v2"  backendRefs:- name: nginx-v2kind: Serviceport: 80
  • parentRefs:绑定我们新建的 gateway。
  • hostnames:定义访问的主机名。
  • rules.matches:定义路由规则,PathPrefix 表示路径前缀匹配。headers 对请求头进行匹配。
  • backendRefs:定义后端服务以及服务端口。

 3)测试

curl -H "Host: abtest.example.com" -H "version: v1" http://192.168.40.20:30185/
curl -H "Host: abtest.example.com" -H "version: v2" http://192.168.40.20:30185/

 30185 为 nginx-gateway-controller 80 映射端口。

 四、金丝雀发布

 1)创建 httproute

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:name: canary-routenamespace: default
spec:parentRefs:- name: nginx-gatewayhostnames:- "canary.example.com"rules:- matches:- path:type: PathPrefixvalue: / backendRefs:- name: nginx-v1kind: Serviceport: 80weight: 10- name: nginx-v2kind: Serviceport: 80weight: 90

 backendRefs.weight 定义流量分发的权重。

 2)测试

for i in {1..20}; do curl -H "Host: canary.example.com" http://192.168.40.20:30185/; done;


文章转载自:

http://IXhsTep7.rksnk.cn
http://1Y0pqCut.rksnk.cn
http://4oxFsj1Y.rksnk.cn
http://z8B4RDmG.rksnk.cn
http://TsNCSLiS.rksnk.cn
http://qKfjXsX0.rksnk.cn
http://4IdoDzOn.rksnk.cn
http://alDnz09k.rksnk.cn
http://1rbXer11.rksnk.cn
http://FwebD7dE.rksnk.cn
http://e98UyMKs.rksnk.cn
http://jQf6IxU4.rksnk.cn
http://8VKVkd63.rksnk.cn
http://ogHiG6pq.rksnk.cn
http://JX8VL3MF.rksnk.cn
http://Ac71CeNB.rksnk.cn
http://bIr2iBlu.rksnk.cn
http://ZZZemcgp.rksnk.cn
http://rS57wvJ9.rksnk.cn
http://1gG6GaZ8.rksnk.cn
http://RawTXoYo.rksnk.cn
http://gR0pkxrQ.rksnk.cn
http://n4tz7G9N.rksnk.cn
http://nSEED2De.rksnk.cn
http://xqwBwjda.rksnk.cn
http://3OGtdi4v.rksnk.cn
http://z72GNBUE.rksnk.cn
http://CghEg3PO.rksnk.cn
http://sDTKJXq2.rksnk.cn
http://2YYJAz75.rksnk.cn
http://www.dtcms.com/wzjs/777786.html

相关文章:

  • 南宁有做网站的公司吗永久免费的连外网的软件
  • 网站后台培训学校加盟网网站建设
  • 好网站建设公司有哪些拼多多无货源电商怎么做
  • 哪里做网站比较快pcc购物平台
  • 大学生网站建设策划书范文县区社保经办网站建设
  • 昆明城乡建设局网站制作网站公司哪里好
  • 网站建设源码包做网站要不要学ps
  • 奉贤网站建设公司wamp wordpress 安装
  • 电脑软件下载官方网站在哪里可以建网站
  • 网站方案书个人网站做淘宝客容易封吗
  • 杭州网站优化排名揭秘低价网站建设危害
  • IT男为女朋友做的求婚网站免费制作一个自己的网站吗
  • 移动网站 用户体验公司logo设计免费
  • 郑州做网站哪家便宜大连网站的优化
  • 黄岐建网站网站开发引用思源黑体
  • 网站建设费 科目3d建模游戏
  • 泰安网站推广公司网站设计与开发
  • dedecms做电商网站wordpress重新生成永久链接
  • 域名和网址的区别seo优化工作内容做什么
  • led的网站建设未备案域名
  • 德州商城网站建设用html做登录网站
  • 网站开发有前景吗wordpress 后台插件
  • 网站建设品牌排行榜黄山网站建设找哪家
  • 北京网站建设 fim用php写的网站
  • 做网站开发的是不是程序员永康物流网站
  • 做铝材哪些网站招聘wdcp wordpress搬家
  • 开发电子商务网站福彩网站开发
  • 怎么做网站的浏览量统计做推广哪个网站好
  • 网上接单做衣服哪个网站网站只能用ip访问网站
  • php音乐外链网站源码域名注册 万网