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

域名绑定ip网站吗马鞍山 网站建设 有限公司

域名绑定ip网站吗,马鞍山 网站建设 有限公司,怎么在阿里巴巴做网站,域名注册价格K8S之常见部署方案 一、普通部署二、滚动更新(Rolling update)三、蓝绿部署(Blue/Green Deployment)四、灰度发布(金丝雀发布) 常见的部署方案参考博文:常见部署方案:普通部署、滚动…

K8S之常见部署方案

  • 一、普通部署
  • 二、滚动更新(Rolling update)
  • 三、蓝绿部署(Blue/Green Deployment)
  • 四、灰度发布(金丝雀发布)

常见的部署方案参考博文:常见部署方案:普通部署、滚动部署、蓝绿部署、灰度发布(金丝雀发布)


一、普通部署

特点: 先停止旧的pod,然后再创建新的pod,这个过程服务是会间断的。

创建recreate.yaml

apiVersion: apps/v1
kind: Deployment
metadata:name: recreate
spec:strategy:type: Recreateselector:matchLabels:app: recreatereplicas: 4template:metadata:labels:app: recreatespec:containers:- name: recreateimage: registry.cn-hangzhou.aliyuncs.com/itcrazy2016/test-docker-image:v1.0ports:- containerPort: 8080livenessProbe:tcpSocket:port: 8080

命令:

kubectl apply -f recreate.yaml
kubectl get pods

修改recreate.yaml文件

kubectl apply -f recreate.yaml
kubectl get pods

conclusion :发现pod是先停止,然后再创建新的。

NAME READY STATUS RESTARTS AGE
recreate-655d4868d8-5dqcz 0/1 Terminating 0 2m31s
recreate-655d4868d8-sb688 0/1 Terminating 0 2m31s

测试:

kubectl rollout pause deploy rollingupdate
kubectl rollout resume deploy rollingupdate
kubectl rollout undo deploy rollingupdate # 回到上一个版本

二、滚动更新(Rolling update)

服务不会停止,但是整个pod会有新旧并存的情况。

创建rollingupdate.yaml

maxSurge :滚动升级时先启动的pod数量
maxUnavailable :滚动升级时允许的最大unavailable的pod数量

apiVersion: apps/v1
kind: Deployment
metadata:name: rollingupdate
spec:strategy:rollingUpdate:maxSurge: 25%maxUnavailable: 25%type: RollingUpdateselector:matchLabels:app: rollingupdatereplicas: 4template:metadata:labels:app: rollingupdatespec:containers:- name: rollingupdateimage: registry.cn-hangzhou.aliyuncs.com/itcrazy2016/test-docker-image:v1.0ports:- containerPort: 8080  
---
apiVersion: v1
kind: Service
metadata:name: rollingupdate
spec:ports:- port: 80protocol: TCPtargetPort: 8080selector:app: rollingupdatetype: ClusterIP

命令:

kubectl apply -f rollingupdate.yaml
kubectl get pods
kubectl get svc
curl cluster-ip/dockerfile

修改rollingupdate.yaml文件,将镜像修改成v2.0

# 在w1上,不断地访问观察输出
while sleep 0.2;do curl cluster-ip/dockerfile;echo "";done
# 在w2上,监控pod
kubectl get pods -w
# 使得更改生效
kubectl apply -f rollingupdate.yaml
kubectl get pods

conclusion :发现新旧pod是会共存的,并且可以访问测试看一下

kubectl get pods -w
kubectl get svc

可以发现,新老版本的确会共存。


三、蓝绿部署(Blue/Green Deployment)

无需停机,风险较小

  • (1)部署v1的应用(一开始的状态)
    所有外部请求的流量都打到这个版本上
  • (2)部署版本2的应用
    版本2的代码与版本1不同(新功能、Bug修复等).
  • (3)将流量从版本1切换到版本2。
  • (4)如版本2测试正常,就删除版本1正在使用的资源(例如实例),从此正式用版本2

创建bluegreen.yaml

#deploy
apiVersion: apps/v1
kind: Deployment
metadata:name: blue
spec:strategy:rollingUpdate:maxSurge: 25%maxUnavailable: 25%type: RollingUpdateselector:matchLabels:app: bluegreenreplicas: 4template:metadata:labels:app: bluegreenversion: v1.0spec:containers:- name: bluegreenimage: registry.cn-hangzhou.aliyuncs.com/itcrazy2016/test-docker-image:v1.0ports:- containerPort: 8080

命令:

kubectl apply -f bluegreen.yaml
kubectl get pods

创建bluegreen-service.yaml

apiVersion: v1
kind: Service
metadata:name: bluegreen
spec:ports:- port: 80protocol: TCPtargetPort: 8080selector:app: bluegreenversion: v1.0type: ClusterIP

命令:

kubectl apply -f bluegreen-service.yaml
kubectl get svc
# 在w1上不断访问观察
while sleep 0.3;do curl cluster-ip/dockerfile;echo "";done

修改bluegreen.yaml

01-deployment-name:blue —> green
02-image:v1.0—> v2.0
03-version:v1.0 —> v2.0

kubectl apply -f bluegreen.yaml
kubectl get pods
# 同时观察刚才访问的地址有没有变化
# 可以发现,两个版本就共存了,并且之前访问的地址没有变化

修改bluegreen-service.yaml

# 也就是把流量切到2.0的版本中
selector:app: bluegreenversion: v2.0
kubectl apply -f bluegreen-service.yaml
kubectl get svc
# 同时观察刚才访问的地址有没有变化
# 发现流量已经完全切到了v2.0的版本上

四、灰度发布(金丝雀发布)

修改bluegreen-service.yaml

selector:
app: bluegreen
version: v2.0 # 把version删除掉,只是根据bluegreen进行选择

修改后:

apiVersion: v1
kind: Service
metadata:name: bluegreen
spec:ports:- port: 80protocol: TCPtargetPort: 8080selector:app: bluegreen#version: v1.0type: ClusterIP

命令:

kubectl apply -f bluegreen-service.yaml

同时观察刚才访问的地址有没有变化,发现此时新旧版本能够同时被访问到。

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

相关文章:

  • 中国能建旗下公司排名seo排名哪家公司好
  • 个人博客网站搭建模板在线做图软件
  • 如何做网站的后台本溪做网站的
  • 可以自己做logo的网站手机百度2022年新版本下载
  • 最专业网站建设公司哪家好销售外包公司
  • 宁波高端网站设计价格构建一个网站需要什么
  • 企业门户网站内容建设wordpress有赞支付插件
  • 网站外链分析专业建设外贸网站制作江门
  • 医院网站建设 中企动力宝塔怎么做两个网站的解析
  • 北京监理建设协会网站网店怎么开 货源怎么找
  • 玉泉营网站建设公司文化网站建设需要的功能
  • 大连建设网站便民服务昆明招聘网站建设普工小工
  • 做网站图片怎么找网站模板怎么建站
  • 网站建设一般要素手机怎么做微电影网站
  • 高职高专网站建设与维护哪家网站做的比较好
  • qq推广中心太仓seo网站优化软件
  • sqlite做网站数据库wordpress文章评论数量
  • 南通单位网站建设威海网站建设whhl
  • 郑州浩方网站建设智联招聘wordpress和自己写
  • 高端网站建设kgwlwordpress小蜜蜂
  • 建站公司哪家好网站带数据库下载
  • 做网站能赚流量钱吗wordpress+广告联盟
  • 企业网站一般内容包括哪些张家港市住房城乡建设局网站
  • 如果建手机网站wordpress配置文件
  • 网站主体负责人不是法人信产部网站备案
  • 网站建设分金手指专业七摄影网站开发综述
  • 郑州建站软件seo与网站优化 pdf
  • 陕西广告公司网站建设安徽住房和建设网站
  • 哈尔滨专业官网建站企业我也来做外国网站购物
  • 搭建网站价格原始传奇网页版