Red Hat OpenShift
Core Concepts
基本概念
Master
- Master监控其他Node和Pod
- 提供Web Console
Node
- Node是k8s的工作机器
- Node中运行Pod,pod可以在node中进行调配
- Node挂了,其他Node会启动其中的Pod
Lables
- 标签提供了一种简单的方法用于管理Kubernetes资源。它们有一对键值表示,且可以用于所有资源的分组
Selector
- Labels
- matchLabels
- matchExpressions
Pod
- Pod概念
- Pod是一个抽象的概念,它包含一个或多个容器组成的容器组,还有这些容器共享的资源
- 共享的存储,例如Volume
- 网络,比如使用唯一的集群IP地址
- 如何运行容器的配置信息,比如镜像版本和容器端口
- 每个 Pod 可以在 Kubernetes 集群内拥有唯一的 IP 地址
- Pod 可以拥有多个容器。这些容器共享同一个端口空间,所以他们可以通过 localhost 交流(可想而知它们无法使用相同的端口)
- 与其他 Pod 内容器的交流可以通过结合 Pod 的 IP 完成
- Pod可以自动按默认设置创建,也可以通过kind pod自定义设置
- Init Containers: 在app容器启动前做准备工作的容器
- 一种作用是可以延迟app容器启动
- Pod是一个抽象的概念,它包含一个或多个容器组成的容器组,还有这些容器共享的资源
- spec.containers.env : 设置Containers环境变量
- spec.restartPolicy
- Always
- OnFailure
- Never
Developer Guide
Pod Presets
- 其他属性
- 阻止Pod被注入 : podpreset.admission.kubernetes.io/exclude: "true"
Deployment
- apiVersion
- apps/v1beta1
- selector : matchLables
ReplicaSet
- apiVersion
- extensions/v1beta1
- selector : matchLables
Secrets
ConfigMaps
其他
Node调配Pod
- Deployment/RC:全自动调度
- Deployment/RC主要是自动部署应用的多个副本,并持续监控,以维持副本的数量。
- 默认是使用系统Master的Scheduler经过一系列算法计算来调度,用户无法干预调度过程与结果。
- 默认使用Deployment/RC
- NodeSelector:定向调度
通过Node的标签和Pod的nodeSelector属性相匹配,可以达到将pod调度到指定的一些Node上。
oc label nodes env=dev
YAML
kind: Deployment
nodeSelector:
env: 'dev
- NodeAffinity:Node亲和性调度
- PodAffinity:Pod亲和与互斥调度策略
- 可以根据节点上正在运行的其它Pod的标签来进行限制
- Taints与Tolerations(污点与容忍)
- Taints与前面的Affinity相反——它让Node拒绝Pod的运行
- DaemonSet:在每个Node上调度一个Pod
- 管理集群中每个Node上仅运行一份Pod的副本实例
- kind: DaemonSet
- Job:批处理调度
- 定义批量任务(并行/串行启动多个计算进程去处理一批工作项)
- kind: Job
- https://www.jianshu.com/p/40050e2a05d4
- Cronjob:定时任务
- kind: CronJob
- 类似Linux Cron的定时任务
Red Hat OpenShift的更多相关文章
- [转帖]Red Hat K8s 关键人物 Grant Shipley 跳槽到 VMware
Red Hat K8s 关键人物 Grant Shipley 跳槽到 VMware https://news.cnblogs.com/n/641944/ 这四小时的工作效率 太无敌了.. 投递人 ...
- Red Hat
同义词 REDHAT一般指Red Hat Red Hat(红帽)公司(NYSE:RHT)是一家开源解决方案供应商,也是标准普尔500指数成员.总部位于美国北卡罗来纳州的罗利市,截止2015年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 ...
- Red Hat Enterprise Server 6.0 安装Sendmail相关包
由于需要在Linux服务器(Red Hat Enterprise Linux Server release 6.0)上配置邮件服务,需要安装Sendmail包,一般Sendmail的安装有两种方式:R ...
- Red Hat Enterprise Linux 6.6安装体验
Red Hat Enterprise Linux 6.6的安装首界面有五个选项,这跟以前的Red Hat Enterprise Linux 5.x的安装界面是有一些区别的. 安装或者升级现有系统( ...
- Red Hat Enterprise Linux 各个版本以及发布日期
Red Hat Enterprise Linux 7 Release/Update General Availability Date redhat-release Errata Date* Kern ...
- linux red hat 给普通用户开启root权限
环境:虚拟机:red hat 6.5:root角色用户:普通用户:宏基笔记本:win7: 操作过程: 1.登录普通用户,进入图形界面(可以设置为启动登录进入命令行界面): 2.按Crl+ALT+F2进 ...
- 使用 KGDB 调试 Kernel On Red Hat Linux
1. KGDB 简介 KGDB 提供了一种使用 GDB 调试 Linux 内核的机制.使用 KGDB 可以象调试普通的应用程序那样,在内核中进行设置断点.检查变量值.单步跟踪程序运行 ...
- Red hat 6.4下面的qt安装
运行环境:Red hat 6.4 去官网下载qt5.2并且安装 当启动的时候会出现如下错误 核心载入失败: /opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plu ...
随机推荐
- .clearfix:after(清除浮动)中各个属性及值详细解说
清除浮动.clearfix:after一词,从事web前端的朋友们对此不会陌生吧,下面为大家介绍的是.clearfix:after中用到的所有属性及值的含义,对此感兴趣的朋友可以参考下哈想,希望对大家 ...
- 一: Docker的概念
附件:https://files.cnblogs.com/files/chaos-li/docker-k8s-devops-master-9287a2ca56433ca076078b564de9488 ...
- Linux 目录配置标准:FHS
目录 应放置内容 /bin 和/user/目录下的/bin/都是用来保存的系统命令 /sbin 和/user/目录下的/sbin是用来保存root的系统命令 /boot 这个目录主要放置开机所用的文件 ...
- SQL-35 对于表actor批量插入如下数据,如果数据已经存在,请忽略,不使用replace操作
题目描述 对于表actor批量插入如下数据,如果数据已经存在,请忽略,不使用replace操作CREATE TABLE IF NOT EXISTS actor (actor_id smallint(5 ...
- SQL-17 获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salary
题目描述 获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salaryCREATE TABLE `salaries` (`emp_no` int(11 ...
- <Impala><Overview><UDF>
Overview Apache Impala (incubating) is the open source, native analytic database for apache Hadoop. ...
- oracle sql developer登录
1 登录Oracle SQL developer 时候要选择数据库连接,这里要区分cdb用户和pdb用户,cdb用户可以在cdb和pdb服务下登录,而pdb用户只能在pdb服务里面登录.比如sys用户 ...
- Arduino-汉王PM2.5检测模组B1
汉王PM2.5检测模组B1,接入Arduino,使用I2C1602显示屏显示 #include <Arduino.h> #include <Wire.h> #include & ...
- shell脚本实例-内存磁盘使用警告
1,磁盘使用警告并发送邮件 #!usr/bin/bash #df -Th|grep '/$' 这个是获取内存使用的那一条记录 #后面两句是获取内存的使用率 disk=`df -Th|grep '/$' ...
- 将python环境打包成.txt文件
1 导出Python环境安装包[root@bogon ~]# pip freeze > packages.txt这将会创建一个 packages.txt文件,其中包含了当前环境中所有包及各自的版 ...