首页
关于
留言
接口
搜索
资讯
技术
资源
悦读
杂记
首页
登录
登录
搜索
emer
累计撰写
58
篇文章
累计收到
0
条评论
首页
栏目
资讯
技术
资源
悦读
杂记
首页
登录
页面
首页
关于
留言
接口
包含标签 【蓝绿部署】 的文章
置顶
k8s学习:蓝绿部署演练
准备工作:把实验镜像包myapp-lan.tar.gz和myapp-lv.tar.gz上传到部署node节点,然后导入到镜像:ctr -n=k8s.io images import myapp-lan.tar.gzctr -n=k8s.io images import myapp-lv.tar.gz1、回到master控制节点创建部署配置文件(yaml配置文件),[root@ctdmaster1 ~]# vim lv.yaml配置代码如下 :apiVersion: apps/v1kind: Deploymentmetadata:name: myapp-v1namespace: blue-greenspec:replicas: 3selector:matchLabels:app: myappversion: v2template:metadata:labels:app: myappversion: v2spec:containers:name: myappimage: janakiramm/myapp:v2imagePullPolicy: IfNotPresentports: containerPort: 802、创建名字空间和deploy资源:[root@ctdmaster1 ~]# kubectl create ns blue-greennamespace/blue-green created[root@ctdmaster1 ~]# kubectl apply -f lv.yaml3、查看pods是否创建成功[root@ctdmaster1 ~]# kubectl get pods -n blue-greenNAME READY STATUS RESTARTS AGEmyapp-v1-75d7db5cf7-467dg 1/1 Running 0 26smyapp-v1-75d7db5cf7-4rx4z 1/1 Running 0 26smyapp-v1-75d7db5cf7-lhgz9 1/1 Running 0 26s4、创建前端Service[root@ctdmaster1 ~]# vim service_lanlv.yaml代码如图:执行更新服务命令:kubectl apply -f service_lanlv.yaml执行命令查看是否更新成功:kubectl get svc -n blue-green在浏览器访问http://k8s-master节点ip:30062如节点的IP为192.168.40.161,则访问下 http://192.168.40.161:30062如节点的IP为192.168.40.162,则访问下 http://192.168.40.162:30062两个节点的效果是一样的。5、创建蓝色部署环境(即新上线的环境,要替代绿色环境)1)、创建部署yaml配置文件vim lan.yaml2)执行部署配置命令:kubectl apply -f lan.yaml 并查看运行结果从图中可以看出蓝色版已经运行成功,但是因为在后台运行,所以前端是访问不了的。此时如果需要切换蓝色版本只需要修改前端的配置文件service_lanlv.yaml即可,如:刷新访问节点1的192.168.40.161:30062前面已经更新为蓝色版本,说明实验成功。总的来说,蓝绿部署就是部署两套一样的环境,一个前台运行,一个后台备用,当需要更新的时候,只要把后台运行的更新测试无误之后,把前端的路由或者代理指向后台更新好的环境, 这样后台变前台,前台变后台,如果前台的出了问题,备用的可以立马顶上,这可最大的减少前端访问宕机故障。
2023年-11月-3日
370 阅读
0 评论
技术
2023-11-3
什么是蓝绿部署
蓝绿部署是一种应用发布模式,可将用户流量从先前版本的应用或微服务逐渐转移到几乎相同的新版本中(两者均保持在生产环境中运行)。旧版本可以称为蓝色环境,而新版本则可称为绿色环境。一旦生产流量从蓝色完全转移到绿色,蓝色就可以在回滚或退出生产的情况下保持待机,也可以更新成为下次更新的模板。这种持续部署模式原本存在不足之处。并非所有环境都具有相同的正常运行时间要求或正确执行 CI/CD 流程(如蓝绿部署)所需的资源。但是,随着企业加大对数字化转型的支持,许多应用开始支持这种持续交付。蓝绿部署是一种应用发布模式,可将用户流量从先前版本的应用或微服务逐渐转移到几乎相同的新版本中(两者均保持在生产环境中运行)。蓝绿部署的优势和缺点优点:1、更新过程无需停机,风险较少2、回滚方便,只需要更改路由或者切换DNS服务器,效率较高缺点:1、成本较高,需要部署两套环境。如果新版本中基础服务出现问题,会瞬间影响全网用户;如果新版本有问题也会影响全网用户。2、需要部署两套机器,费用开销大3、在非隔离的机器(Docker、VM)上操作时,可能会导致蓝绿环境被摧毁风险4、负载均衡器/反向代理/路由/DNS处理不当,将导致流量没有切换过来情况出现
2023年-11月-3日
384 阅读
0 评论
技术