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

k8s运维管理

node管理
node隔离与恢复
1.使用patch命令

#实现node隔离调度
kubectl patch node node1 -p '{"spec":{"unschedulable":true}}'
#节点信息多了一项SchedulingDisabled
node1    Ready,SchedulingDisabled   <none>   7d3h   v1.18.20
#解除
kubectl patch node node1 -p '{"spec":{"unschedulable":false}}'

2.使用cordon

#隔离
kubectl cordon node1
#恢复
kubectl uncordon node1

以上两种方法只会让节点脱离调度 不会停止运行的pod 需要手动停止
3.使用drain
首先会让节点脱离调度 然后会删除节点所有运行的pod,如果强制删除deployment之类的控制器 会在其他节点创建pod

#脱离调度
kubectl drain node1 --ignore-daemonsets
#参数
--force 当一些pod不是经 ReplicationController, ReplicaSet, Job, DaemonSet 或者 
StatefulSet 管理的时候就需要用--force来强制执行 (例如:kube-proxy)
--ignore-daemonsets 无视DaemonSet管理下的Pod。即--ignore-daemonsets往往需要指定的,这是
因为deamonset会忽略unschedulable标签(使用kubectl drain时会自动给节点打上不可调度标签),
因此deamonset控制器控制的pod被删除后可能马上又在此节点上启动起来,这样就会成为死循环.因此
这里忽略daemonset。
--delete-local-data 如果有mount local volumn的pod,会强制杀掉该pod。

#恢复
kubectl uncordon node1

集群环境隔离
使用namespace 与 context 对不通工作组进行区分 互相不打扰 防止误操作
1,创建两个namespace

#dev
kubectl create namespace dev
#prod
kubectl create namespace prod

2,定义contest 即运行环境 这个运行环境将属于某一个命名空间
可以使用命令方式创建 也可以修改kubectl的配置文件 .kube/config来配置

#绑定dev空间
kubectl config set-context ctx-dev --namespace=dev --cluster=kubernetes --user=kubernetes-admin
#绑定prod空间
kubectl config set-context ctx-prod --namespace=prod --cluster=kubernetes --user=kubernetes-admin
#查看配置
kubectl config view
#把当前运行环境设置为dev 就只能在dev里执行命令
kubectl config use-context ctx-dev
#切换回默认之前默认的空间
kubectl config use-context kubernetes-admin@kubernetes

http://www.kler.cn/news/135568.html

相关文章:

  • Flutter笔记:桌面应用 窗口定制库 bitsdojo_window
  • WIFI版本云音响设置教程腾讯云平台版本
  • 基于SSM的供电公司安全生产考试系统设计与实现
  • MATLAB 嵌套switch语句||MATLAB while循环
  • C++中只能有一个实例的单例类
  • LeetCode Hot100之十:239.滑动窗口最大值
  • 网络运维与网络安全 学习笔记2023.11.19
  • 【Go学习之 go mod】gomod小白入门,在github上发布自己的项目(项目初始化、项目发布、项目版本升级等)
  • 世界坐标系,相机坐标系,像素坐标系转换 详细说明(附代码)
  • PCIe协议加持,SD卡9.1规范达到媲美SSD的速度4GB/s
  • 【设计模式】聊聊模板模式
  • 解析Spring Boot中的CommandLineRunner和ApplicationRunner:用法、区别和适用场景详解
  • CISP全真模式测试题(二)
  • VSCode使用
  • 基于Vue+SpringBoot的超市账单管理系统 开源项目
  • CentOS 7.9 安装 epel-release
  • cobol基本语法
  • k8s-部署Redis-cluster(TLS)
  • 【React】React 基础
  • 基础算法:高精度加法
  • C语言之深入指针及qsort函数(五)(详解介绍)
  • 微信小程序内嵌h5页面,实现动态设置顶部标题的功能
  • ArkTS - HarmonyOS服务卡片(创建)
  • CISP模拟试题(一)
  • uniapp+vue+Springboot 公司网站0~1搭建 前端前期设计篇
  • 串行通信中的同步方式(Synchronous)与异步方式(Asynchronous)stty -F设置波特率
  • “移动机器人课程群实践创新的困境与突围”素材
  • 动态页面调研及设计方案
  • 【Java 进阶篇】Ajax 实现——原生JS方式
  • 文件传输客户端 SecureFX mac中文版支持多种协议