Core Concepts

基本概念

  • Master

    1. Master监控其他Node和Pod
    2. 提供Web Console
  • Node

    1. Node是k8s的工作机器
    2. Node中运行Pod,pod可以在node中进行调配
    3. Node挂了,其他Node会启动其中的Pod
  • Lables

    1. 标签提供了一种简单的方法用于管理Kubernetes资源。它们有一对键值表示,且可以用于所有资源的分组
  • Selector

    1. Labels
    2. matchLabels
    3. matchExpressions

Pod

  • Pod概念

    1. Pod是一个抽象的概念,它包含一个或多个容器组成的容器组,还有这些容器共享的资源

      1. 共享的存储,例如Volume
      2. 网络,比如使用唯一的集群IP地址
      3. 如何运行容器的配置信息,比如镜像版本和容器端口
    2. 每个 Pod 可以在 Kubernetes 集群内拥有唯一的 IP 地址
    3. Pod 可以拥有多个容器。这些容器共享同一个端口空间,所以他们可以通过 localhost 交流(可想而知它们无法使用相同的端口)
    4. 与其他 Pod 内容器的交流可以通过结合 Pod 的 IP 完成
    5. Pod可以自动按默认设置创建,也可以通过kind pod自定义设置
    6. Init Containers: 在app容器启动前做准备工作的容器
      1. 一种作用是可以延迟app容器启动
  • spec.containers.env : 设置Containers环境变量
  • spec.restartPolicy
    1. Always
    2. OnFailure
    3. Never

Developer Guide

Pod Presets

  • 其他属性

    1. 阻止Pod被注入 : podpreset.admission.kubernetes.io/exclude: "true"

Deployment

  • apiVersion

    1. apps/v1beta1
  • selector : matchLables

ReplicaSet

  • apiVersion

    1. extensions/v1beta1
  • selector : matchLables

Secrets

ConfigMaps

其他

Node调配Pod

  • Deployment/RC:全自动调度

    1. Deployment/RC主要是自动部署应用的多个副本,并持续监控,以维持副本的数量。
    2. 默认是使用系统Master的Scheduler经过一系列算法计算来调度,用户无法干预调度过程与结果。
    3. 默认使用Deployment/RC
  • NodeSelector:定向调度
    1. 通过Node的标签和Pod的nodeSelector属性相匹配,可以达到将pod调度到指定的一些Node上。

    2. oc label nodes env=dev

    3. YAML

       kind: Deployment
      nodeSelector:
      env: 'dev
  • NodeAffinity:Node亲和性调度
  • PodAffinity:Pod亲和与互斥调度策略
    1. 可以根据节点上正在运行的其它Pod的标签来进行限制
  • Taints与Tolerations(污点与容忍)
    1. Taints与前面的Affinity相反——它让Node拒绝Pod的运行
  • DaemonSet:在每个Node上调度一个Pod
    1. 管理集群中每个Node上仅运行一份Pod的副本实例
    2. kind: DaemonSet
  • Job:批处理调度
    1. 定义批量任务(并行/串行启动多个计算进程去处理一批工作项)
    2. kind: Job
    3. https://www.jianshu.com/p/40050e2a05d4
  • Cronjob:定时任务
    1. kind: CronJob
    2. 类似Linux Cron的定时任务

Red Hat OpenShift的更多相关文章

  1. [转帖]Red Hat K8s 关键人物 Grant Shipley 跳槽到 VMware

    Red Hat K8s 关键人物 Grant Shipley 跳槽到 VMware   https://news.cnblogs.com/n/641944/ 这四小时的工作效率 太无敌了.. 投递人  ...

  2. Red Hat

    同义词 REDHAT一般指Red Hat Red Hat(红帽)公司(NYSE:RHT)是一家开源解决方案供应商,也是标准普尔500指数成员.总部位于美国北卡罗来纳州的罗利市,截止2015年3月3日, ...

  3. KALI Linux problems & Study Red Hat | Ubuntu

    Problem When you ask some website with https head.you may met the problem  secure connection failed ...

  4. Red Hat Enterprise Server 6.0 安装Sendmail相关包

    由于需要在Linux服务器(Red Hat Enterprise Linux Server release 6.0)上配置邮件服务,需要安装Sendmail包,一般Sendmail的安装有两种方式:R ...

  5. Red Hat Enterprise Linux 6.6安装体验

    Red Hat Enterprise Linux 6.6的安装首界面有五个选项,这跟以前的Red Hat Enterprise Linux 5.x的安装界面是有一些区别的.   安装或者升级现有系统( ...

  6. Red Hat Enterprise Linux 各个版本以及发布日期

    Red Hat Enterprise Linux 7 Release/Update General Availability Date redhat-release Errata Date* Kern ...

  7. linux red hat 给普通用户开启root权限

    环境:虚拟机:red hat 6.5:root角色用户:普通用户:宏基笔记本:win7: 操作过程: 1.登录普通用户,进入图形界面(可以设置为启动登录进入命令行界面): 2.按Crl+ALT+F2进 ...

  8. 使用 KGDB 调试 Kernel On Red Hat Linux

    1. KGDB 简介         KGDB  提供了一种使用 GDB 调试 Linux 内核的机制.使用 KGDB 可以象调试普通的应用程序那样,在内核中进行设置断点.检查变量值.单步跟踪程序运行 ...

  9. Red hat 6.4下面的qt安装

    运行环境:Red hat 6.4 去官网下载qt5.2并且安装 当启动的时候会出现如下错误 核心载入失败: /opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plu ...

随机推荐

  1. python 自然语言处理(二)____获得文本语料和词汇资源

    一, 获取文本语料库 一个文本语料库是一大段文本.它通常包含多个单独的文本,但为了处理方便,我们把他们头尾连接起来当做一个文本对待. 1. 古腾堡语料库 nltk包含古腾堡项目(Project Gut ...

  2. Java:多个文档合并输出到一个文档

    多个文档合并输出到一个文档 方法:Java NIO package First; import java.io.File; import java.io.FileInputStream; import ...

  3. .net core json配置相关用法

    在.net core中,配置文件差不多都是json文件.我们在开发程序的时候,可以使用系统默认的appsettings.json,可以自定义json配置文件.当json配置文件里面的参数改变时,程序也 ...

  4. asp.net webapi 返回json结果的方法

    第一种: public static void Register(HttpConfiguration config) { //1.将默认的xml格式化程序清除 GlobalConfiguration. ...

  5. 前端基础之jQuery操作标签

    一.样式操作 样式类 addClass(); // 添加指定的CSS类名. removeClass(); // 移除指定的CSS类名. hasClass(); // 判断样式存不存在 toggleCl ...

  6. jdk,jre和jvm

    JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE.Java工具和Java基础类库 JRE是Java Runtime En ...

  7. 杭电多校第七场 1010 Sequence(除法分块+矩阵快速幂)

    Sequence Problem Description Let us define a sequence as below f1=A f2=B fn=C*fn-2+D*fn-1+[p/n] Your ...

  8. PCP架构设计

    1.引言 现如今已经进入互联网时代,无论是工作还好娱乐都已经离不开互联网,与此同时,网络相关的问题也时不时的侵扰着我们,这需要我们具有一定网络相关知识来解决相关问题,而这时,一款工作便利,免费的网络分 ...

  9. 4.Python爬虫入门四之Urllib库的高级用法

    1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...

  10. LINQ(数据库操作增、删、改及并发管理)

    本文将演示如何通过 Entity Framework 数据模型创建.修改.删除数据库记录. Customer cust = new Customer() { CustomerID = "LA ...