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

台州高端网站设计百度 手机网站 收录

台州高端网站设计,百度 手机网站 收录,xxx网站建设策划书范文,wordpress 主题函数StatefulSet 一、概念 和Deployment一样StatefulSet也是中一种可以帮助我们部署和扩展Pod的控制器,使用Deployment时多数时候不需要在意Pod的调度方式。如果需要关心Pod的部署顺序、对应持久化存储或者要求Pod拥有固定的网络标识时,就需要StatefulSet控…

StatefulSet

一、概念

Deployment一样StatefulSet也是中一种可以帮助我们部署和扩展Pod的控制器,使用Deployment时多数时候不需要在意Pod的调度方式。如果需要关心Pod的部署顺序、对应持久化存储或者要求Pod拥有固定的网络标识时,就需要StatefulSet控制器来完成调度工作

每个由StatefulSet创建出来的Pod都拥有一个序号(从0开始,启动完成才会进行下一个)和固定的网络标识。并且可以在yaml中定义添加**VolumeClaimTemplate**来声明Pod存储的PVC

StatefulSet 对于需要满足以下一个或多个需求的应用程序很有价值:

  • 稳定的、唯一的网络标识符。
  • 稳定的、持久的存储。
  • 有序的、优雅的部署和扩缩。
  • 有序的、自动的滚动更新。

二、使用

---
apiVersion: v1
kind: Service
metadata:name: nginxlabels:app: nginx
spec:ports:- port: 80name: webclusterIP: Noneselector:app: nginx
---
apiVersion: apps/v1
kind: StatefulSet
metadata:name: web
spec:serviceName: "nginx"replicas: 2selector:matchLabels:app: nginx  # 使用标签选择器,筛选标签里有app等于nginx的podstemplate:metadata:labels:app: nginx  # 创建一个带有标签app=nginx的podsspec:containers:- name: nginximage: nginx:1.7.9ports:- containerPort: 80name: web

这里创建了一个StatefulSet对象,关联了带有app=nginx的pods,并且还指定了名为nginx的service

为什么StatefulSet还需要指定service呢? service已经使用标签选择器选中了pods,StatefulSet通过关联 Service,可以为 StatefulSet 中的每个 Pod 分配一个稳定的网络标识(如 DNS 域名),使其可以从集群内和集群外进行访问。这种关联有助于实现有状态应用程序的可靠通信和外部访问。

比如想访问上面的pod可以使用, 格式为:pod名称.service名称.命名空间.svc.集群后缀,但后面的可以简写,比如:

ping  web-0.nginx

三、扩缩容

3.1、使用命令直接扩容
kubectl scale sts web --replicas=5
3.2、缩容
kubectl scale sts web --replicas=3

缩容完后再看日志

kubectl describe sts web---------------------------------------------Type    Reason            Age    From                    Message----    ------            ----   ----                    -------Normal  SuccessfulCreate  29m    statefulset-controller  create Pod web-0 in StatefulSet web successfulNormal  SuccessfulCreate  29m    statefulset-controller  create Pod web-1 in StatefulSet web successfulNormal  SuccessfulCreate  4m28s  statefulset-controller  create Pod web-2 in StatefulSet web successfulNormal  SuccessfulCreate  4m26s  statefulset-controller  create Pod web-3 in StatefulSet web successfulNormal  SuccessfulCreate  4m24s  statefulset-controller  create Pod web-4 in StatefulSet web successfulNormal  SuccessfulDelete  10s    statefulset-controller  delete Pod web-4 in StatefulSet web successfulNormal  SuccessfulDelete  3s     statefulset-controller  delete Pod web-3 in StatefulSet web successful

从日志里可以看出,StatefulSet的pods管理是有顺序

四、更新

4.1、普通更新

先使用命令进行修改内容后保存

kubectl edit sts web

statefulSet与depolyment的更新区别在于,statefulSet是有序的,按照倒叙进行一个一个的更新,看如下日志

kubectl describe sts web------------------------------------------Type    Reason            Age                       MessageNormal  SuccessfulDelete  19s                   delete Pod web-2 in StatefulSet web successfulNormal  SuccessfulCreate  18s (x2 over 10m)     create Pod web-2 in StatefulSet web successfulNormal  SuccessfulDelete  16s                   delete Pod web-1 in StatefulSet web successfulNormal  SuccessfulCreate  14s (x2 over 35m)     create Pod web-1 in StatefulSet web successfulNormal  SuccessfulDelete  12s                   delete Pod web-0 in StatefulSet web successfulNormal  SuccessfulCreate  11s (x2 over 35m)     create Pod web-0 in StatefulSet web successful
4.2、灰度更新/金丝雀发布

这是一种逐步升级 StatefulSet 的策略,它可以在不影响整个应用程序的情况下测试新版本的 Pod,并逐步将新版本的 Pod 逐步引入到应用程序中。

下面我们将操作一个场景,目前有三个nginx版本为1.9.1的pod,我们需要将这些pod切换成1.7.1的版本,但是不知道1.7.1版本是否有问题的情况下,我们需要先多扩展一个1.7.1的pod,如果这个1.7.1的没有问题了,我们就把另外所有的pod都换成这个版本

修改内容

kubectl edit sts web

修改部分


# 将镜像换成1.7.1
- image: nginx:1.7.1#  把partition 设置为 3,那么此时滚动更新时,只会更新那些 序号 >= 3 的 pod
updateStrategy:rollingUpdate:partition: 3

在这里,我们将partition设置为 3,而我们现在最大的pod序号是2(从0开始),所以这次修改内容并不会影响到原来的pod版本

4.3、删除更新策略

把更新模式设置为删除策略时,在更新 StatefulSet 配置文件时,不会触发pods的更新。相反,需要手动删除旧的pod,k8s才会创建一个新版本的Pod

spec:updateStrategy:type: OnDelete  # 或 RollingUpdate

五、非级联删除

当我们使用普通删除sts的命令时,会把下面的pods也删除了,如果我们只是想删除sts,不删下面的pods可以使用非级联删除命令

kubectl delete sts web --cascade=false
http://www.yayakq.cn/news/440234/

相关文章:

  • c 可以用来做网站吗搜索引擎找不到的网站
  • wordpress 站内信蓝色通用营销型企业网站模板
  • 做网站的书籍推荐如何发布视频赚钱
  • 网站游戏怎么制作牡丹江地区做网站的公司
  • 公司网站优点自己做的网站怎么实现结算功能
  • 医院网站建设价值和意义石家庄seo推广
  • 用asp做的网站开发网站的步骤
  • 感觉做的比较好的健身网站品牌战略
  • 手机软件下载网站源码wordpress 按时间倒序
  • 网站项目设计具体方案广告营销有哪些
  • 搜索引擎是网站吗宣传设计网站
  • 特效视频网站免费注册深圳公司
  • discuz应用中心模板seo入门培训教程
  • 东莞寮步网站建设网络公司wordpress首行缩进2字符怎么设置
  • 怎么做网站的后台维护如何使用服务器ip做网站
  • 网站建设网络推广首选公司跨境外贸是做什么的
  • 怎么建立自己企业网站最近新闻有哪些
  • ireal 网站建设wordpress引入php
  • 泰州网站开发公司旅游网站html
  • xp系统中做网站服务器吗高端的网站名称
  • 贴心的网站优化公司joomla网站建设
  • 做国外网站需要多少钱巢湖做网站
  • 设计网站怎么做的17网店货源网
  • 做网站要注册公司么南京市工程造价信息网
  • 网站建设在未来的发展趋势阿里巴巴国际站做2个网站有用吗
  • 重庆网站排名优化公司网络营销导向的网站建设的基本原则
  • 东陵网站制作外贸网站建设推广费用
  • 建站网址导航hao123c2c十大平台
  • notepad做网站技巧网络工程的公司有哪些
  • 企业网站的设计与开发做一个网站建设