• Kubernetes2


    10.Kubernetes调度

    节点约束

    nodeName 是节点选择约束的最简单方法,但一般不推荐。
    在这里插入图片描述
    在这里插入图片描述
    nodeSelector 是节点选择约束的最简单推荐形式在这里插入图片描述
    在这里插入图片描述

    节点亲和

    requiredDuringSchedulingIgnoredDuringExecution 必须满足
    preferredDuringSchedulingIgnoredDuringExecution 倾向满足
    IgnoreDuringExecution 表示如果在Pod运行期间Node的标签发生变化,导致
    亲和性策略不能满足,则继续运行当前的Pod。

    在这里插入图片描述
    在这里插入图片描述
    倾向满足在这里插入图片描述
    在这里插入图片描述

    pod亲和

    在这里插入图片描述在这里插入图片描述
    pod反亲和
    编辑pod2 此pod会使用主机网络在这里插入图片描述
    pod3正常使用 会端口冲突 这时候需要反亲和性在这里插入图片描述
    在这里插入图片描述

    污点 容忍

    Taints(污点)是Node的一个属性,设置了Taints后,所以Kubernetes是不会将Pod调度到这个Node上的,于是Kubernetes就给Pod设置了个属性Tolerations(容忍),只要Pod能够容忍Node上的污点,那么Kubernetes就会忽略Node上的污点,就能够(不是必须)把Pod调度过去。
    •NoSchedule:POD 不会被调度到标记为 taints 节点。
    •NoExecute:该选项意味着一旦 Taint 生效,如该节点内正在运行的 POD 没有对应Tolerate 设置,会直接被逐出。

    给nodes 添加NoExecute污点在这里插入图片描述
    创建一个 deploy.yaml 有污点的nodes不会 被调用 如果之前有pod 还会驱逐在这里插入图片描述
    如果需要调用 需要设置容忍
    在这里插入图片描述
    在这里插入图片描述s1被重新调度
    • 如果 operator 是 Exists ,value可以省略。
    • 如果 operator 是 Equal ,则key与value之间的关系必须相等。

    指定容忍 两个特殊值:
    • 当不指定key,再配合Exists 就能匹配所有的key与value ,可以容忍所有污点。
    • 当不指定effect ,则匹配所有的effect。
    在这里插入图片描述容忍所有污点
    在这里插入图片描述
    污点删除在这里插入图片描述影响Pod调度的指令还有:cordon、drain、delete,后期创建的pod都不会被调度到
    该节点上,但操作的暴力程度不一样。

    cordon 停止调度
    drain 驱逐节点

    在这里插入图片描述
    drain命令 后面需要 加控制器 --force 强制 驱逐 pod
    在这里插入图片描述
    解除限制调度在这里插入图片描述删除nodes
    在这里插入图片描述

    11.kubernetes访问控制

    serviceaccount

    创建serviceaccount

    添加secrets到serviceaccount中在这里插入图片描述
    将sa和pod 绑定 修改 text.yaml在这里插入图片描述

    UserAccount

    创建UserAccount
    在这里插入图片描述
    在这里插入图片描述切换用户
    在这里插入图片描述
    在这里插入图片描述
    通过认证 但是没有权限 返回 用户 授权在这里插入图片描述创建角色
    在这里插入图片描述
    在这里插入图片描述
    角色绑定
    在这里插入图片描述
    集群角色绑定
    RoleBinding 可以绑定角色 也可以绑定集群角色
    在这里插入图片描述修改后可以查看不会报错
    在这里插入图片描述
    整个集群 都有相应权限 需要 绑定集群角色绑定
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

    12.kubernetes资源监控

    内存限制示例
    在这里插入图片描述
    在这里插入图片描述
    内存 不够 运行不起来 增加限制 在这里插入图片描述
    在这里插入图片描述
    CPU限制示例在这里插入图片描述

    namespace资源限制

    在这里插入图片描述在这里插入图片描述运行的 pod会自动添加 资源限制
    在这里插入图片描述在这里插入图片描述
    之前的 设置 运行错误在这里插入图片描述
    在这里插入图片描述修改与namespace符合的限制 即可成功
    在这里插入图片描述
    在这里插入图片描述
    为namespcae 设置资源配额
    在这里插入图片描述
    在这里插入图片描述
    不能超过 配额 限定
    还可以限定pod数量
    在这里插入图片描述
    在这里插入图片描述

    资源监控Metrics-Server部署

    下载部署文件 https://github.com/kubernetes-incubator/metrics-server在这里插入图片描述编辑下载的yaml文件 并将image镜像上传到本地仓库在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    amzj部署成功在这里插入图片描述
    部署时错误总结
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述

    Dashboard部署

    图形化 资源监控
    下载部署文件
    https://github.com/kubernetes/dashboard
    在这里插入图片描述
    在这里插入图片描述当前只能 集群内访问 外网访问需要更改type
    在这里插入图片描述在这里插入图片描述
    网页可以访问 进入 需要token文件在这里插入图片描述
    在这里插入图片描述
    将token加密信息 复制到 网页
    在这里插入图片描述
    编辑rbac文件在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    部署完成在这里插入图片描述
    可以管理整个集群 增删改查在这里插入图片描述在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    Sora来袭!机器人+Sora落地性如何?
    关于B/S结构系统的会话机制(session机制)
    Android Jetpack-Compose相关
    第三篇【传奇开心果系列】Python的自动化办公库技术点案例示例:深度解读Pandas股票市场数据分析
    C++---多态
    市政管理学考试试题及答案
    【ROS2原理11】C++编程的要点
    Linux基础
    Maven高级-学习笔记01【Maven分模块构建】
    YOLOv7+姿态估计Pose+tensort部署加速
  • 原文地址:https://blog.csdn.net/l15034358442/article/details/125497439