基于Google云原生工程师的kubernetes最佳实践(三)

目录

三、集群管理

利用node affinity、taint等机制管理node

通过pod affinity/anti-affinity机制将pod分配到合适的node

Node分级管理

从Qos角度将Pod分级

用namespace隔离不同的环境和用户

配置RBAC权限控制

1. 遵循最小权限原则

2. 使用 Role 和 ClusterRole 分离权限

3. 利用 RoleBinding 和 ClusterRoleBinding 绑定角色

 Google云原生工程师最佳实践指南下载


三、集群管理


利用node affinity、taint等机制管理node

        Kubernetes提供了节点亲和性和污点等机制,可以更好地控制Pod在节点上的分布。node affinity允许基于节点的标签属性来约束pod可以调度到哪些节点,常用于将特定工作负载分配到具有特定硬件/软件配置的节点。而taint则用于将节点标记为专用,只有配置了相应容忍度(toleration)的pod才能调度到这些专用节点上,适合用于节点隔离。利用这些机制,可以更合理高效地利用集群资源。


通过pod affinity/anti-affinity机制将pod分配到合适的node

        除了调度pod到合适的节点外,Kubernetes还支持通过pod亲和性和反亲和性规则来影响pod与pod之间的调度关系。pod亲和性可以将新pod调度到同一拓扑域(如节点、可用区等)的现有pod附近,常用于实现pod集群化部署;而pod反亲和性则防止新pod与指定pod部署在同一拓扑域,避免单点故障。合理利用这些规则,可以提高应用可靠性和局部性能。

Node分级管理

通过给 Node 打标签来对节点进行分级管理,可以根据资源类型(如 CPU、内存、GPU)或用途(如生产、测试)对节点进行分类。

从Qos角度将Pod分级

根据QoS 策略将Pod分为核心应用(Guaranteed)、重要应用(Burstable)、边缘应用(BestEffort)

QoS 策略

  • Guaranteed: 所有容器的 requests 和 limits 应相等,确保 Pod 获得预留资源。
  • Burstable: 适用于需要一定程度资源弹性的 Pod,允许 Pod 在高峰期使用更多资源。
  • BestEffort: 适合非关键任务的 Pod,无固定资源预留,最低调度优先级。


用namespace隔离不同的环境和用户


配置RBAC权限控制

        在 Kubernetes 中,基于角色的访问控制(RBAC)是一种重要的安全机制,用于限制对集群资源的访问和操作权限。正确配置 RBAC 权限不仅有助于保护集群安全,还能确保用户和应用只能访问它们所需的最少资源,遵循最小权限原则

1. 遵循最小权限原则

为用户和服务帐户分配尽可能少的权限,只授予完成任务所必需的权限。这有助于减少潜在的安全风险和错误配置,尽量不要使用default serviceaccount

2. 使用 Role 和 ClusterRole 分离权限

  • Role 用于命名空间级别的权限控制。
  • ClusterRole 用于集群范围内的资源和非资源端点的权限控制。

3. 利用 RoleBinding 和 ClusterRoleBinding 绑定角色

  • RoleBinding 将 Role 与特定的用户、组或服务帐户在命名空间级别关联起来。
  • ClusterRoleBinding 将 ClusterRole 与用户、组或服务帐户在全集群级别关联起来。

 Google云原生工程师最佳实践指南下载

Kubernetes_Best_Practices.pdficon-default.png?t=N7T8https://c74p900o8m.feishu.cn/docx/S84ddjQg2oQRpMxxOykcdP8Snsc

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/484880.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32使用滴答定时器实现delayms

在STM32上使用SysTick实现jiffies(时间戳)并且实现delay_ms 代码实现: volatile uint32_t jiffies 0; // 用于记录系统运行的jiffies数 void SysTick_Handler(void) {/* 每次SysTick中断,jiffies增加 */jiffies; }uint32_t tick…

matlab 智能电器的状态监测故障模拟

1、内容简介 略 83-可以交流、咨询、答疑 2、内容说明 略 U120√2sin(2) Ii1i2 逻辑关系: 在0-0.1,正弦电给并联的电容和电阻/电感供电,电压的有效值为120V,通过RMS模块检查电压的变化,在0.1时通过斩波器把电源2端与大地连接…

苹果CMS影视APP源码,二开版本带视频教程

编译app教程 工具下载:Android Studio 官网地址:https://developer.android.google.cn/studio/ 环境设置: 设置中文:https://blog.csdn.net/qq_37131111/article/details/131492844 汉化包找最新的下载就行了,随便下载…

SpringJPA 做分页条件查询

前言: 相信小伙伴们的项目很多都用到SpringJPA框架的吧,对于单表的增删改查利用jpa是很方便的,但是对于条件查询并且分页 是不是很多小伙伴不经常写到. 今天我整理了一下在这里分享一下. 话不多说直接上代码: Controller: RestController public class ProductInstanceContr…

idea maven配置

修改maven的路径&#xff08;使用本地的Maven&#xff09;&#xff0c;以及修改settings文件的位置和本地仓库的位置。 -DarchetypeCataloginternal 配置阿里云镜像&#xff08;在setting.xml文件中配置&#xff09; <!-- 配置阿里云 --> <mirror> <id>…

【PHP + 代码审计】数组排序算法

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收…

需求:实现一个类似打印的效果(文字一个字一个字的输出)

实现效果&#xff1a; 需求&#xff1a;最近接到这么一个需求&#xff0c;ai机器人回复的问题&#xff0c;后端是通过websocket每隔一段事件返回数据&#xff0c;前端拿到数据后直接渲染&#xff0c;现在需要做到一个效果&#xff0c;后端返回的结果前端需要一个一个文字的输出…

STM32微控制器的中断优先级设置中,抢占优先级和子优先级如何影响中断响应?

在STM32微控制器中&#xff0c;中断优先级设置是一个关键的概念&#xff0c;它决定了在发生多个中断时&#xff0c;哪些中断能够优先被处理。STM32的中断优先级系统包括抢占优先级&#xff08;Preemption Priority&#xff09;和子优先级&#xff08;Subpriority&#xff09;&a…

P - Beat

题目分析 1.看数据范围&#xff0c;大概知道dfs能做 2.自0问题开始查找&#xff0c;确保之后每次查找到的问题的困难度均大于上一次 3.遍历所有情况再记录cnt即可 代码 #include <iostream> #include <algorithm> #include <cstdio> #include <cstring&…

Rust下载安装、卸载、版本切换、创建项目(包含指定版本的)

先声名一下&#xff0c;下面所说的版本号为xxxxx-x86_64-unknown-linux-gnu中xxxxx的部分。 下载安装 下载最新版本的Rust&#xff1a; curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh info: downloading installer重启shell 或者 按照提示 执行命令让环境变…

华为数通 HCIP-Datacom H12-831 题库补充

2024年 HCIP-Datacom&#xff08;H12-831&#xff09;最新题库&#xff0c;完整题库请扫描上方二维码&#xff0c;持续更新。 缺省情况下&#xff0c;PIM报文的IP协议号是以下哪一项&#xff1f; A&#xff1a;18 B&#xff1a;59 C&#xff1a;103 D&#xff1a;9 答案&a…

Excel打开CSV文件中文乱码问题

Excel的数据导入功能 直接用Excel打开下载的CSV文件&#xff0c;会看到汉字乱码&#xff0c;数字显示正常。如下图所示现象。 请先正常打开一份空白的excel文件&#xff0c;将鼠标定位在第一行第一列&#xff0c;这边鼠标定位的位置将决定后续打开的csv文件在excel中展示的位置…

链表oj测试题(下)

1.链表反转 大家有没有过将链表反转的想法&#xff0c;与数组反转不同的是这里的反转后是将每个节点的地址白村反过来&#xff0c;当然也可以遍历链表然后从尾节点开始尾插到新链表中&#xff0c;然后将新链表的头结点返回即可。我们今天要学的是第一个方法。当然第二个想法也…

nodejs+vue高校心理健康评测与服务系统python-flask-django-php

随着社会的发展&#xff0c;系统的管理形势越来越严峻。越来越多的用户利用互联网获得信息&#xff0c;但各种信息鱼龙混杂&#xff0c;信息真假难以辨别。为了方便用户更好的获得高校心理健康评测与服务&#xff0c;因此&#xff0c;设计一种安全高效的高校心理健康评测与服务…

Kafka broker

1. zk中存储的kafka信息 /kafka/brokers/ids存储了在线的broker id。 /kafka/brokers/topics/xxx/partitions/n/state存储了Leader是谁以及isr队列 /kafka/controller辅助Leader选举&#xff0c;每个broker都有一个controller&#xff0c;谁先在zk中注册上&#xff0c;谁就辅助…

PWM实现电机的正反转和调速以及TIM定时器

pwm.c #include "pwm.h"/* PWM --- PA2 --TIM2_CH3 //将电机信号控制一根接GND,一根接在PA2(TIM2_CH3)&#xff0c; 输出PWM控制电机快慢 TIM2挂在APB1 定时器频率&#xff1a;84MHZ*/ void Pwm_Init(void) {GPIO_InitTypeDef GPIO_InitStruct;TIM_TimeBaseInitT…

信号处理与分析——matlab记录

一、绘制信号分析频谱 1.代码 % 生成测试信号 Fs 3000; % 采样频率 t 0:1/Fs:1-1/Fs; % 时间向量 x1 1*sin(2*pi*50*t) 1*sin(2*pi*60*t); % 信号1 x2 1*sin(2*pi*150*t)1*sin(2*pi*270*t); % 信号2% 绘制信号图 subplot(2,2,1); plot(t,x1); title(信号x1 1*sin(…

nodejs+vue城市交通管理系统的设计与实现pythonflask-django-php

城市交通管理系统的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品&#xff0c;体验高科技时代带给人们的方便&#xff0c;同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓&#xff0c;iOS相比较起来&#xff0c;…

利用pexpect实现ssh自动登录时命令行无法自动换行问题解决

问题描述 使用python的pexpect模块的pexpect.spawn()进行ssh自动登录时&#xff0c;出现超出一定长度&#xff08;80个字符&#xff09;时光标自动切换到本行行首进行覆盖输入的情形 原因 使用spawn时输入窗口大小默认限制为[24,80]&#xff08;可通过spawn类的getwinsize(…

HarmonyOS实战开发-如何使用首选项能力实现一个简单示例。

介绍 本篇Codelab是基于HarmonyOS的首选项能力实现的一个简单示例。实现如下功能&#xff1a; 创建首选项数据文件。将用户输入的水果名称和数量&#xff0c;写入到首选项数据库。读取首选项数据库中的数据。删除首选项数据文件。 最终效果图如下&#xff1a; 相关概念 首选…