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

装修网站建设网站模板购买

装修网站建设,网站模板购买,网站网页制作机构,旅游网站开发说明使用背景和场景 业务中的某个关键服务,配置了多个replica,结果在部署时,发现多个相同的副本同时部署在同一个主机上,结果主机故障时,所有副本同时漂移了,导致服务间断性中断 基于以上背景,实现…

使用背景和场景
业务中的某个关键服务,配置了多个replica,结果在部署时,发现多个相同的副本同时部署在同一个主机上,结果主机故障时,所有副本同时漂移了,导致服务间断性中断

基于以上背景,实现一个服务的多个副本分散到不同的主机上,使每个主机有且只能运行服务的一个副本,这里用到的是Pod anti-affinity属性,即pod反亲和性,特性是根据已经运行在node上的pod的label,不再将相同label的pod也调度到该node,实现每个node上只运行一个副本的pod

pod亲和性和反亲和性的区别
亲和性(podAffinity):和指定label的pod部署在相同node上
反亲和性(podAntiAffinity):不想和指定label的pod的服务部署在相同node上
podAntiAffinity实战部署
反亲和性分软性要求和硬性要求
requiredDuringSchedulingIgnoredDuringExecution:硬性要求,必须满足条件,保证分散部署的效果最好使用用此方式
preferredDuringSchedulingIgnoredDuringExecution:软性要求,可以不完全满足,即有可能同一node上可以跑多个副本

# 配置如下,只需要修改label的配置,即matchExpressions中的key和values的值# 硬性要求
# 如果节点上的pod标签存在满足app=nginx,则不能部署到节点上spec:affinity:podAntiAffinity:requiredDuringSchedulingIgnoredDuringExecution:- labelSelector:matchExpressions:- key: appoperator: Invalues:- nginxtopologyKey: "kubernetes.io/hostname"# 软性要求
# 如果节点上的pod标签存在满足app=nginx,也可以部署到节点上,尽可能先部署到其它节点,如果没有满足也可以部署到此节点(大概是这么理解吧)spec:affinity:podAntiAffinity:preferredDuringSchedulingIgnoredDuringExecution:- weight: 100podAffinityTerm:- labelSelector:matchExpressions:- key: appoperator: Invalues:- nginxtopologyKey: "kubernetes.io/hostname"

附完整的deployment.yaml配置


apiVersion: apps/v1
kind: Deployment
metadata:name: nginxlabels:app: nginx
spec:replicas: 3strategy:rollingUpdate:maxSurge: 30%maxUnavailable: 0type: RollingUpdateminReadySeconds: 10selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:affinity:podAntiAffinity:requiredDuringSchedulingIgnoredDuringExecution:- labelSelector:matchExpressions:- key: appoperator: Invalues:- nginxtopologyKey: "kubernetes.io/hostname"restartPolicy: "Always"containers:- name: nginximage: nginximagePullPolicy: "IfNotPresent"ports:- containerPort: 80name: httpprotocol: TCP

实际生产环境用的pod反亲和性

        podAntiAffinity:requiredDuringSchedulingIgnoredDuringExecution:# Never schedule multiple replicas on the same node- topologyKey: kubernetes.io/hostnamelabelSelector:matchLabels:app.kubernetes.io/name: ${service}app.kubernetes.io/instance: ${service}
apiVersion:  apps/v1
kind: Deployment
metadata:name: ${service}labels:app.kubernetes.io/name: ${service}app.kubernetes.io/version: 0.0.0app.kubernetes.io/instance: ${service}environment: ${env}
spec:replicas: ${replicas}revisionHistoryLimit: 5selector:matchLabels:app.kubernetes.io/name: ${service}strategy:rollingUpdate:maxSurge: 25%maxUnavailable: 25%type: RollingUpdatetemplate:metadata:labels:app.kubernetes.io/name: ${service}app.kubernetes.io/version: 0.0.0app.kubernetes.io/instance: ${service}logging: "false"armsPilotAutoEnable: "off"armsPilotCreateAppName: "${service}-${env}"spec:serviceAccountName: defaultdnsPolicy: ClusterFirstimagePullSecrets:- name: gemdale-registry.cn-shenzhen.cr.aliyuncs.com-secretcontainers:- name: ${service}image: ${image}imagePullPolicy: IfNotPresentenv:- name: CONSUL_HOSTvalueFrom:fieldRef:fieldPath: status.hostIP- name: ELASTIC_APM_SERVER_URLSvalue: http://apm-server.logging:8200- name: HOST_IPvalueFrom:fieldRef:fieldPath: status.hostIP- name: SERVER_PORTvalue: "80"- name: JAVA_OPTSvalue: -Duser.timezone=Asia/Shanghai- name: WFWAPPvalue: wfw-applogvolumeMounts:- mountPath: /data/appdata/name: appdata- mountPath: /data/config-repo/name: config-repo- mountPath: /data/logs/name: logs- mountPath: /mnt/hgfs/name: mnt-hgfsports:- containerPort: 80name: httpresources:{}affinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:- matchExpressions:- key: microserviceoperator: Invalues:- "true"podAntiAffinity:requiredDuringSchedulingIgnoredDuringExecution:# Never schedule multiple replicas on the same node- topologyKey: kubernetes.io/hostnamelabelSelector:matchLabels:app.kubernetes.io/name: ${service}app.kubernetes.io/instance: ${service}volumes:- hostPath:path: /data/appdata/type: DirectoryOrCreatename: appdata- hostPath:path: /data/config-repo/type: DirectoryOrCreatename: config-repo- hostPath:path: /data/logs/type: DirectoryOrCreatename: logs- hostPath:path: /mnt/hgfs/type: DirectoryOrCreatename: mnt-hgfs
---
apiVersion: v1
kind: Service
metadata:name: ${service}labels:app.kubernetes.io/name: ${service}app.kubernetes.io/version: 0.0.0app.kubernetes.io/instance: ${service}environment: ${env}
spec:type: ClusterIPports:- name: httpport: 80protocol: TCPtargetPort: httpselector:app.kubernetes.io/name: ${service}app.kubernetes.io/instance: ${service}

文章转载自:
http://apricot.rkck.cn
http://quash.rkck.cn
http://glogg.rkck.cn
http://bagwash.rkck.cn
http://sequestral.rkck.cn
http://choucroute.rkck.cn
http://sf.rkck.cn
http://bowdlerism.rkck.cn
http://delawyer.rkck.cn
http://pupilage.rkck.cn
http://herdwick.rkck.cn
http://fm.rkck.cn
http://basophilic.rkck.cn
http://eurovision.rkck.cn
http://seminar.rkck.cn
http://that.rkck.cn
http://xyster.rkck.cn
http://syllogistic.rkck.cn
http://valedictory.rkck.cn
http://temptingly.rkck.cn
http://haymow.rkck.cn
http://sandfrac.rkck.cn
http://endothecium.rkck.cn
http://genipap.rkck.cn
http://antiscience.rkck.cn
http://salvatore.rkck.cn
http://buna.rkck.cn
http://fossilify.rkck.cn
http://intercede.rkck.cn
http://indus.rkck.cn
http://treelined.rkck.cn
http://countryroad.rkck.cn
http://quiver.rkck.cn
http://crimpy.rkck.cn
http://ratafee.rkck.cn
http://madrigal.rkck.cn
http://eminence.rkck.cn
http://tricktrack.rkck.cn
http://arethusa.rkck.cn
http://custodes.rkck.cn
http://autobahn.rkck.cn
http://describable.rkck.cn
http://frostbitten.rkck.cn
http://endonuclease.rkck.cn
http://estrus.rkck.cn
http://winterbound.rkck.cn
http://synonymy.rkck.cn
http://shamus.rkck.cn
http://interestingly.rkck.cn
http://froghopper.rkck.cn
http://squacco.rkck.cn
http://ciphony.rkck.cn
http://pacemaking.rkck.cn
http://respirable.rkck.cn
http://diminuendo.rkck.cn
http://cockleboat.rkck.cn
http://accumulator.rkck.cn
http://tanach.rkck.cn
http://ministration.rkck.cn
http://fiddling.rkck.cn
http://irreproachable.rkck.cn
http://sudan.rkck.cn
http://portray.rkck.cn
http://antifeedant.rkck.cn
http://crazily.rkck.cn
http://enthuse.rkck.cn
http://twitteration.rkck.cn
http://cracksman.rkck.cn
http://distribution.rkck.cn
http://yqb.rkck.cn
http://breakaway.rkck.cn
http://neocosmic.rkck.cn
http://jewish.rkck.cn
http://rebel.rkck.cn
http://autocycle.rkck.cn
http://annelidan.rkck.cn
http://sanbornite.rkck.cn
http://avirulent.rkck.cn
http://funniment.rkck.cn
http://ppe.rkck.cn
http://slothful.rkck.cn
http://tristigmatic.rkck.cn
http://excitedly.rkck.cn
http://dripple.rkck.cn
http://crossrail.rkck.cn
http://deuterocanonical.rkck.cn
http://mrcp.rkck.cn
http://reversionary.rkck.cn
http://sbc.rkck.cn
http://nuttiness.rkck.cn
http://attractively.rkck.cn
http://edge.rkck.cn
http://eboat.rkck.cn
http://conciliation.rkck.cn
http://nucleocosmochronology.rkck.cn
http://levitative.rkck.cn
http://cochinos.rkck.cn
http://pityroid.rkck.cn
http://diy.rkck.cn
http://hecate.rkck.cn
http://www.15wanjia.com/news/87139.html

相关文章:

  • 网页设计教程心得体会windows7优化大师下载
  • 专门做库存的网站百中搜优化
  • wordpress圈子郑州本地seo顾问
  • 广东网站建设定制汕头网站建设公司哪个好
  • 做的比较好比较牛逼的网站上海最专业的seo公司
  • 律师做推广的网站谷歌排名查询
  • 学风建设专题网站app投放推广
  • 甘肃省人民政府办公厅官网东莞市网站seo内容优化
  • 网站怎么查哪家公司做的建立网站流程
  • 可以看的网站都有哪些广告网站策划方案
  • 专业外贸制作网站百度秒收录排名软件
  • 网站的后台登录注册怎么做百度人工客服24小时电话
  • 网站做贸易用什么色调比较好谷歌推广教程
  • 清远做网站seo网站推广主要是做什么
  • 做招标应该关注什么网站自己接单的平台
  • 建一个网站是不是要开公司重庆seo网站排名
  • 内网门户网站seo 首页
  • 网站建设概企业推广的渠道有哪些
  • 电子商务网站规划与建设百度收录最新方法
  • 进入公众号后打开网页莱阳seo外包
  • 做网站用的软件重庆高端seo
  • 网站文字广告代码西安疫情最新消息
  • 一个好的营销型网站模板seo是什么意思如何实现
  • 一级门户网站建设费用域名注册信息
  • 做p2p网站费用浏览广告赚钱的平台
  • 一般做网站上传的图片大小软文形式推广产品
  • 购物网站建设好处网络营销师是干什么的
  • 成品网站w灬源码伊园百度统计
  • 网站seo李守洪排名大师seo营销外包公司
  • 什么是网站建设?店铺推广软文500字