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

安网站建设公司秦皇岛生态文明建设

安网站建设公司,秦皇岛生态文明建设,惠州网站建设方案报价,飞沐视觉北京网站建设公司资源配置范围管理#xff1a;LimitRange 在默认情况下#xff0c;Kubernetes不会对Pod加CPU和内存的限制#xff0c;这意味着Kubernetes系统中的任何Pod都可以使用其节点的所有可用的CPU和内存。 如果一个机器的Pod特别多#xff0c;我们又不愿意为每个Pod都配置上…        资源配置范围管理LimitRange         在默认情况下Kubernetes不会对Pod加CPU和内存的限制这意味着Kubernetes系统中的任何Pod都可以使用其节点的所有可用的CPU和内存。 如果一个机器的Pod特别多我们又不愿意为每个Pod都配置上Requests和Limits我们可以对集群内Requests和Limits的配置做一个全局限制常见的配置场景如下 1.集群中的诶个节点都有2GB内存集群管理员不希望任何Pod申请超过2GB的内存可以在系统管理功能中设置禁止Pod申请超过2GB内存。 2.集群由同一个组织中的两个团队共享分别为生产环境和开发环境。生产环境最多可以使用8GB诶存而开发环境最多可以使用512MB内存。集群管理员希望通过为这两个环境创建不同的namespace并为每个namespace都设置不同的限制来满足这个要求。 3.用户创建Pod时使用的资源可能会刚好比整个机器的上限稍小而恰好剩余的资源大小又不足以分配其他的Pod这样就显得有点浪费集群管理员希望将每个Pod都设置为必须至少使用集群平均值CPU和内存的20%这样集群就能够提供更好的资源一致性调度从而减少资源浪费。 下面我们举例说明 1.创建一个名为limit-example的Namespace [rootk8s-master ~]# kubectl create namespace limit-example namespace/limit-example created [rootk8s-master ~]# kubectl get namespaces NAME STATUS AGE default Active 23d kube-node-lease Active 23d kube-public Active 23d kube-system Active 23d limit-example Active 7s2.为命名空间设置LimitRange #1.创建limits.yaml文件 [rootk8s-master limit-example]# cat limits.yaml apiVersion: v1 kind: LimitRange metadata:name: mylimits spec:limits:- max:cpu: 4memory: 2Gimin: cpu: 200mmemory: 6MimaxLimitRequestRatio:cpu: 3memory: 2type: Pod- default:cpu: 300mmemory: 200MidefaultRequest:cpu: 200mmemory: 100Mimax:cpu: 2memory: 1Gimin: cpu: 100mmemory: 3MimaxLimitRequestRatio:cpu: 5memory: 4type: Container #2.创建该LimitRange [rootk8s-master limit-example]# kubectl create -f limits.yaml --namespacelimit-example #3.查看limit-example中的LimitRange [rootk8s-master limit-example]# kubectl describe limits --namespacelimit-example Name: mylimits Namespace: limit- example Type Resource Min Max Default Request Default Limit Max Limit/Request Ratio Pod cpu 200m 4 - - 3 Pod memory 6Mi 2Gi - - 2 Container cpu 100m 2 200m 300m 5 Container memory 3Mi 1Gi lOOMi 200Mi 4(1).不论是CPU还是内存在LimitRange中Pod和Container都可以设置Min、Max和Max Limit/Requests Ratio参数。Container还可以设置Default Request和Default Limit参数而Pod不能设置Default Request和Default Limit 参数。 (2).对Pod和Container的参数解释如下:     Container的Min(100m和3Mi)是Pod中所有容器的Requests值下限     Container的Max(上面的2和lGi)是Pod中所有容器的Limits值上限      Container的Default Request(上面的200m和100Mi)是Pod中所有未指定Requests值的容器的默认Requests值      Container的Default Limit(上面的300m和200Mi)是Pod中所有未指定Limits值的容器的默认Limits值。     对于同一资源类型这4个参数必须满足以下关系Min≤Default Request≤Default Limit≤Max。 Pod的Min(上面的200m和6Mi)是Pod中所有容器的Requests值的总和下限     Pod的Max(上面的4和2Gi)是Pod中所有容器的Limits值的总和上限。      容器未指定Requests值或者Limits值时将使用Container的Default Request值或者Default Limit值。 Container的Max Limit/Requests Ratio(上面的5和4)限制了Pod中所有容器的Limits值与Requests值的比例上限     而Pod的Max Limit/Requests Ratio(上面的3和2)限制了Pod中所有容器的Limits值总和与Requests值总和的比例上限。 (3).如果设置了Container的Max那么对于该类资源而言整个集群中的所有容器都必须设置Limits否则无法成功创建。Pod内的容器未配置Limits时将使用Default Limit额值上面的300m CPU和200MiB内存如果也未配置Default则无法成功创建。 (4).如果设置了Container的Min,那么对于该类资源而言整个集群中的所有容器都必须设置Requests。如果创建Pod的容器时未配置该类资源的Requests,那么在创建过程中会报验证错误。Pod里容器的Requests在未配置时可以使用默认值defaultRequest(本例中的200m CPU 和100MiB内存)如果未配置而且没有使用默认值defaultRequest,那么默认等千该容器的Limits如果容器的Limits也未定义就会报错。 (5).对于任意一个Pod而言该Pod中所有容器的Requests总和都必须大于或等于6MiB而且所有容器的Limits总和都必须小于或等于lGiB;同样所有容器的CPURequests总和都必须大于或等于200m,而且所有容器的CPU Limits总和都必须小于或等于2 。 (6).Pod里任何容器的Limits与Requests的比例都不能超过Container的Max Limit/Requests Ratio;Pod里所有容器的Limits总和与Requests总和的比例都不能超过Pod的Max Limit/Requests Ratio。 3.创建Pod时触发LimitRange限制 我们来举例说明LimitRange生效时对容器的资源限制效果 命名空间中的LimitRange只会在Pod创建或者更新时执行检查 。 如果手动修改LimitRange为一个新的值那么这个新的值不会去检查或限制之前已经在该命名空间中创建好的Pod         如果在创建Pod时配置的资源值(CPU或者内存超出了LimitRange的限制那么该创建过程会报错在错误信息中会说明详细的错误原因。 我们现在先创建一个pod [rootk8s-master limit-example]#kubectl run nginx --imagenginx --replicasl --namespacelimit-example deployment nginx created 查看已创建的pod信息 [rootk8s-master limit-example]#kubectl get pods -- namespacelimit-example [rootk8s-master limit-example]#kubectl get pods nginx- 2040093540-sBvzu --namespacel imi t-example -o yaml |grep resources -C 8resourceVersion : 57 selfLink: /api/vl/namespaces/limit-example/pods/nginx-2040093540-ivimuuid: 67b20 741 - f53b-lle5-b066 - 64510658e388 spec:containers:- image: nginximagePull Policy: Alwaysname: nginxresources:limiys:cpu: 300mmemory: 200Mirequests:cpu: 200mmemory: lOOMiterminationMessagePath: /dev/termination-logvolumeMouns: 由于该Pod未配置资源Requests和Limits, 所以使用了namespace limit-example中的默认CPU和内存定义的Requests和Limits值 我们在创建一个超出资源限制的Pod [rootk8s-master limit-example]#cat invalid-pod.yaml: apiVersion: v1 kind: Pod metadata:name: invalid-pod spec:containers:- name: kubernetes-serve-hostnameimage: gcr.io/google_containers/serve_hostnameresources:limits:cpu: 3 memory: 100Mi 创建该Pod, 可以看到系统报错并且提供的错误原因为超过资源限制 kubectl create -f invalid-pod.yaml --namespacelimit-example Error from server:error when creating invalid-pod.yaml: Pod invalid-pod is forbidden: [Maximum cpu usage per Pod is 2 , but limit is 3,Maximum cpu usage per Container is 2 , but limit is 3.]
http://www.pierceye.com/news/87973/

相关文章:

  • 雄安建设工程信息网站销售管理系统课程设计
  • 网站运营专员岗位职责软件开发平台设计
  • 阳江商城网站开发设计网络售后服务
  • 房产中介网站开发费用建设银行有招投标网站吗
  • 广州网站优化地址网站设置在设备之间共享怎么开启
  • wordpress创建分站点西宁网站运营公司
  • 高明网站建设公司wordpress alipay
  • 如何注册网站域名淘客app
  • 建立网站的阶段商务厅网站建设意见
  • 申请注册网站域名.商城男女做暖暖的网站大全
  • 怎么做售房网站自己做网站需要学些什么
  • proxy网站云南手机网站开发
  • 建设工程图审管理信息系统网站什么语言建手机网站
  • 东莞装饰网站建设做房间预定网站需要什么软件
  • 网络私人定制网站广州专业做网页的公司
  • 怎么上传自己的网站北京网站排名制作
  • 网站建设选择服务器个人缴纳养老保险
  • 视频网站开发方案亿联网络 网站
  • 阿里云部署网站教程2022近期时事热点素材摘抄
  • 网站开发经理具备什么知识梅林做网站
  • 鑫灵锐做网站多少钱代理注册
  • wordpress网站不显示系列中国商业网
  • 如何建外贸网站网站优化两大核心要素是什么
  • 设计做网站图片网站seo
  • 手机端网站外部链接如何去优化做网站哪家好哪家好
  • 网站vip怎么做动漫设计与制作实训报告
  • 做网站软件大全电子商务网站开发与应用论文
  • 亚马逊国际站官网开个网站做代理赚钱吗
  • ssh jsp做网站互联网营销师挣的是谁的钱
  • 学做ps的软件的网站有哪些成都网站建设价格