文章目录

  • 1. kubectl
    • 1.1 概述
    • 1.2 kubectl命令语法
    • 1.3 kubectl命令举例
  • 2. 核心技术-Pod
    • 2.1 概述
    • 2.2 Pod特性
    • 2.3 拉取镜像策略
    • 2.4 资源限制
    • 2.5 重启策略
    • 2.6 健康检查
    • 2.7 影响pod调度的属性
      • 2.7.1 资源限制
      • 2.7.2 节点选择器标签
      • 2.7.3 节点的亲和性nodeAffinity
      • 2.7.4 污点和污点容忍Taint

1. kubectl

1.1 概述

是k8s集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署;

1.2 kubectl命令语法

kubectl [command] [TYPE] [NAME] [flags]
  1. command: 指定要对资源执行的操作。例如:create、get、describe 和 delete
  2. TYPE:指定资源类型,资源类型是大小写敏感的,开发者能够以单数、复数和缩略的形式。例如:
kubectl get pod pod1kubectl get pods pod1kubectl get po pod1
  1. NAME: 指定资源的名称,名称也是大小写敏感的。如果省略名称,则会显示所有资源,例如:
kubectl get pods
  1. flags: 指定可选的参数。例如:-s或-server参数指定kubernates API server的地址和端口。

1.3 kubectl命令举例

【todo 待拓展】

2. 核心技术-Pod

2.1 概述

  1. Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod引用对象的,PersistentVolume资源对象是用来为Pod提供存储功能等等,k8s不会直接处理容器,而是Pod,Pod是由一个或多个container组成的。

  2. Pod是k8s最重要的概念,每一个Pod都有一个特殊的被称为"根容器"的Pause容器。pause容器对应的镜像属于k8s平台的一部分,除了pause容器,每个pod还包含一个或多个紧密相关的业务容器。

2.2 Pod特性

  1. 资源共享
    一个pod中的多个容器可以共享存储和网络,可以看作一个逻辑的主机
    一个pod中的多个容器可以共享存储卷,这个存储卷会被定义为Pod的一部分,并且可以挂载到改pod里的所有容器的文件系统上

  2. 生命周期短暂
    当pod所在节点发生故障,那么改节点上的pod会被调度到其他节点,需要注意的是,被重新调度的pod是一个全新的pod,跟之前的Pod没有关系。

  3. 平坦的网络
    K8s集群中,所有的pod都在同一个共享网络地址空间中,也就是说每个pod都可以通过其他pod的IP地址来实现访问

2.3 拉取镜像策略

2.4 资源限制

2.5 重启策略

2.6 健康检查

2.7 影响pod调度的属性

2.7.1 资源限制

2.7.2 节点选择器标签

(1)在使用节点选择器之前,首先需要对节点创建标签.
(为名称为node1的节点添加env_role=prod的标签)

kubectl label node node1 env_role=prod

(2)然后pod中指定节点选择器

表示将该pod调度到env_role=dev的标签节点上

2.7.3 节点的亲和性nodeAffinity

节点亲和性和之前nodeSelector基本一样,都是根据节点上的标签约束来决定pod调度到哪些节点上的。
(1)硬亲和性
约束条件必须满足。意味着必须部署在满足这些条件的节点上

(2)软亲和性
尝试满足。意思是最好部署在满足这些条件的节点上。

2.7.4 污点和污点容忍Taint

前面说到的nodeSelector和nodeAffinity都是pod的属性,调度时候实现; 而Taint污点不做普通分配调度,是节点属性。
(1)污点值有三个:
NoSchedule:一定不被调度
PreferNoSchedule:尽量不被调度
NoExceute:不会调度,并且还会驱逐Node中的已有pod
(2)查看节点污点情况

kubectl describe node k8snode1 | grep Taint

(3)节点添加污点
添加NoSchedule污点,则pod一定不会被调度到该节点上

kubectl taint node k8snode1 env_role=yes:NoSchedule

(4)节点删除污点

kubectl taint node k8snode1 env_role:NoSchedule-

(5)污点容忍度配置

k8s(三):命令行工具kubectl与核心技术Pod相关推荐

  1. 【重识云原生】第六章容器6.3.7节——命令行工具kubectl

    <重识云原生系列>专题索引: 第一章--不谋全局不足以谋一域 第二章计算第1节--计算虚拟化技术总述 第二章计算第2节--主流虚拟化技术之VMare ESXi 第二章计算第3节--主流虚拟 ...

  2. 三、Kubernetes集群的命令行工具kubectl

    目录 1.kubectl概述 2.kubectl命令的语法 3.kubectl help获取更多信息 4.kubectl 子命令使用分类 4.1 基础命令 4.2部署和集群的管理命令 4.3故障和调试 ...

  3. kubernetes集群命令行工具kubectl

    文章目录 1 kubectl 概述 2 kubernetes命令 2.1 kubectl 命令的语法 2.2 常用命令 1 kubectl 概述 kubectl是Kubernetes集群的命令行工具, ...

  4. 【云原生 • Kubernetes】命令行工具 kubectl 介绍及命令汇总

    本文导读 1. kubectl 概述 2. kubectl 命令语法 3. kubectl help 获取更多信息 4. kubectl 命令大全 • 基础命令 • 部署命令 • 集群管理命令 • 故 ...

  5. Android日志[进阶篇]三-Logcat 命令行工具

    Android日志[进阶篇]一-使用 Logcat 写入和查看日志 Android日志[进阶篇]二-分析堆栈轨迹(调试和外部堆栈) Android日志[进阶篇]三-Logcat命令行工具 Androi ...

  6. Containerd高级命令行工具nerdctl安装及使用

    一.实验环境 实验环境: 1.win10笔记本 2.1台centos7.6虚机(vmwrokstation虚机)cri-containerd-cni-1.5.5-linux-amd64.tar.gzn ...

  7. 使用 Cobra 构建命令行工具

    文章首发于个人公众号:阿拉平平 最近折腾了下命令行库 Cobra,和大家分享下.本文演示环境为 CentOS 7.5,Golang 1.11. 文章目录 1. Cobra 介绍 1.1 概念 1.2 ...

  8. 构建现代化的命令行工具

    文章源于 lambdas.dev 每当我们想要创建一个基于 NodeJS 的命令行工具时,就会衍生出一堆问题需要解决,比如如何准备开发环境,如何打包转译代码,如何使代码在转译后保持可调用的状态同时尽可 ...

  9. GitHub日收12000星,微软新命令行工具引爆程序员圈!

    作者 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 继上次微软开源计算器刷爆GitHub后,今天凌晨在微软Build大会登场的Windows Terminal,如旋风般目前已登顶GitHu ...

最新文章

  1. [转] splice系列系统调用
  2. 2018年3月29日笔记
  3. 用命令行非交互改密码
  4. Vue.js响应式原理
  5. hdu 6096 String
  6. 搜索引擎登录工具_“搜索引擎营销”有多重要!你知道吗?
  7. SpringBoot项目实现配置实时刷新功能
  8. 按层次遍历二叉树_LeetCode | 102.二叉树的层次遍历
  9. ansys18安装教程_ANSYS|ansys18.0完整安装过程及常见问题解决方案「图文」
  10. EJB到底是什么,真的那么神秘吗??
  11. 微信小程序 关于头像上传,showActionSheet,chooseImage,uploadFile
  12. java 正则 竖线_Java 中正则表达式如何匹配竖线(|) , 以及在 Kotlin 中是如何改进的?...
  13. LeetCode(626):换座位 Exchange Seats(SQL)
  14. vue如何在一个工程里判断h5还是pc,(利用在一个页面显示不同router-view内容原理,本文只使用于单页面项目,多页面项目请查看我另一篇博文)
  15. ​2021年数模国赛A题国二摘要及经验分享(回忆篇,附部分代码)
  16. mysql数据库下载、安装、使用
  17. iOS公司开发者账号申请详细教程
  18. android实现调用科大讯飞语音识别功能详细步骤
  19. Heritrix Eclipse配置和使用
  20. 可持续发展的“孤勇者”,亚马逊云科技并不孤单

热门文章

  1. 多态练习题(通过UML建模语言来实现饲养员喂养动物)
  2. JAVA加密工具类实例
  3. 梦幻西游中心服务器,梦幻西游2服务器回忆史——追忆太和殿
  4. Vue-Video-player多rtmp视频流显示在同一个页面+流媒体服务器部署
  5. 西游记中孙悟空为什么打不过有法宝的妖怪?
  6. ZZULIOJ:1028: I love 闰年
  7. Vue 项目前端响应式布局及框架搭建
  8. Fast R-CNN论文原理+目标检测笔记(二)
  9. 云之讯短信验证码配置方法
  10. 如何查看电脑WIFI密码