【Kubernetes系列】第2篇 基础概念介绍

  • 时间:
  • 浏览:0
  • 来源:uu快3开奖_uu快3娱乐_输钱

Service Account为服务提供了有一种 方便的认证机制,但它不关心授权的问题报告 。可不让能 配合RBAC(Role Based Access Control)来为Service Account鉴权,通过定义Role、RoleBinding、ClusterRole、ClusterRoleBinding来对sa进行授权。

资源配额应用在Namespace上,随后 每个Namespace最多只能有有有十个 ResourceQuota 对象

后要每有一种 存储都支持这有一种 法子 ,像共享法子 ,目前支持的还比较少,比较常用的是 NFS。在PVC绑定PV时通常根据有有十个 条件来绑定,有有十个 是存储的大小,从前其他其他 访问模式。

Pod是一组紧密关联的容器集合,支持多个容器在有有十个 Pod中共享网络和文件系统,可不让能 通过多多线程 间通信和文件共享其他简单高效的法子 完成服务,是Kubernetes调度的基本单位。Pod的设计理念是 每个Pod后要有有十个 唯一的IP

用户超额后禁止创建新的资源

指定Node节点

DaemonSet会忽略Node的unschedulable情況,有有一种 法子 来指定Pod只运行在指定的Node节点上:

2)自定义的Pod metrics,以原始值(raw value)的法子 计算

1)pods, replicationcontrollers, configmaps, secrets

service 有如下有一种 类型,默认是ClusterIP:

Kubernetes中的负载均衡其他人主要用到了以下有一种 机制:

3).storageclass.storage.k8s.io/requests.storage

资源配额有如下类型:

目前Kubernetes主要支持以下Volume类型:

开启计算资源配额后,创建容器时只能配置计算资源请求或限制(也可不让能 用LimitRange设置默认值)

目前支持有一种 策略

删除命名空间时,需注意以下几点:

默认情況下容器的数据是非持久化的,容器消亡随后数据也会跟着丢失,其他其他Docker提供了Volume机制以便将数据持久化存储。Kubernetes提供了更强大的Volume机制和插件,避免了容器数据持久化以及容器间共享数据的问题报告 。

Kubernetes存储卷的生命周期与Pod绑定

1)预定义metrics(比如Pod的CPU)以利用率的法子 计算

常用node操作:

2)memory, limits.memory, requests.memory

Horizontal Pod Autoscaling可不让能 根据CPU、内存使用率或应用自定义metrics自动扩展Pod数量 (支持replication controller、deployment和replica set)。

常用的操作命令如下:

taint(污点)

常用命令如下:

Pod具有如下型态:

3)services, services.loadbalancers, services.nodeports

Deployments和ReplicaSets是为无情況服务设计的,没有StatefulSet则是为了有情況服务而设计,其应用场景包括:

...

另外,也可不让能 将已有的服务以Service的形式加入到Kubernetes集群中来,只只能在创建 Service 的随后不指定Label selector,其他其他 在Service创建好后手动为其加进endpoint。

资源配额(Resource Quotas)是用来限制用户资源用量的有一种 机制。

Sercert-密钥避免了密码、token、密钥等敏感数据的配置问题报告 ,而不只能把哪几种敏感数据暴露到镜像将会Pod Spec中。Secret可不让能 以Volume将会环境变量的法子 使用。有如下有一种 类型:

1)cpu, limits.cpu, requests.cpu

可不让能 通过如下命令创建HPA:

PersistentVolume(PV)是集群之中的一块网络存储。跟 Node 一样,也是集群的资源。PersistentVolume (PV)和PersistentVolumeClaim (PVC)提供了方便的持久化卷: PV提供网络存储资源,而PVC请求存储资源并将其挂载到Pod中。

1)requests.storage:存储资源总量,如30000Gi

设置了污点的Node将根据taint的effect:NoSchedule、PreferNoSchedule、NoExecute和Pod之间产生互斥的关系,Pod将在一定程度上不让被调度到Node上。 但其他人可不让能 在Pod上设置容忍(Toleration),意思是设置了容忍的Pod将可不让能 容忍污点的指在,可不让能 被调度到指在污点的Node上。

它的工作原理为:

DaemonSet保证在特定或所有Node节点上都运行有有十个 Pod实例,常用来部署其他集群的日志挂接、监控将会其他系统管理应用。典型的应用包括:

2)persistentvolumeclaims:pvc的个数

.spec.strategy 指新的Pod替换旧的Pod的策略,有以下有一种 类型

常用namespace操作:

使用kubectl taint命令可不让能 给某个Node节点设置污点,Node被设置上污点随后就和Pod之间指在了有一种 相斥的关系,可不让能 让Node拒绝Pod的调度执行,甚至将Node将会指在的Pod驱逐出去。每个污点的组成:key=value:effect,当前taint effect支持如下有有十个 选项:

Namespace(命名空间)是对一组资源和对象的抽象集合,比如保不让能 用来将系统内控 的对象划分为不同的项目组将会用户组。常见的pod、service、replicaSet和deployment等后要属于某有有十个 namespace的(默认是default),而node, persistentVolumes等则不属于任何namespace。

Job负责批量避免短暂的一次性任务 (short lived one-off tasks),即仅执行一次的任务,它保证批避免任务的有有十个 或多个Pod成功现在现在开始 英文。

容忍(Tolerations)

更新策略

支持有一种 更新策略:

Service account是为了方便Pod顶端的多多线程 调用Kubernetes API或其他内控 服务而设计的

2)resourcequotas, persistentvolumeclaims

Service是对一组提供相同功能的Pods的抽象,并为其他人提供有有十个 统一的入口,借助 Service 应用可不让能 方便的实现服务发现与负载均衡,并实现应用的零宕机升级。 Service通过标签(label)来确定后端Pod,一般配合ReplicaSet将会Deployment来保证后端容器的正常运行。

常用的ingress controller:

Deployment和ReplicaSet两者之间的关系

授权

ConfigMap用于保存配置数据的键值对,可不让能 用来保存单个属性,也可不让能 用来保存配置文件。ConfigMap跟secret很累似 ,但它可不让能 更方便指在理不富含敏感信息的字符串。ConfigMap可不让能 通过有一种 法子 在Pod中使用,有一种 分别法子 为:设置环境变量、设置容器命令行参数以及在Volume中直接挂载文件或目录。

一般情況下其他人不只能手动创建Pod实例,其他其他 采用更高一层的抽象或定义来管理Pod,针对无情況类型的应用,Kubernetes使用Deloyment的Controller对象与之对应。其典型的应用场景包括:

4).storageclass.storage.k8s.io/persistentvolumeclaims

Node是Pod真正运行的主机,可不让能 是物理机也可不让能 是虚拟机。Node本质上后要Kubernetes来创建的, Kubernetes其他其他 管理Node上的资源。为了管理Pod,每个Node节点上离米 只能运行container runtime(Docker)、kubelet和kube-proxy服务。

3)自定义的object metrics

CronJob即定时任务,就累似 于Linux系统的crontab,在指定的时间周期运行指定的任务。

PV的访问模式(accessModes)有有一种 :

PV的回收策略(persistentVolumeReclaimPolicy)后要有一种

Service和Pod的IP仅可在集群内控 访问。集群内控 的请求只能通过负载均衡转发到service所在节点暴露的端口上,随后 再由kube-proxy通过边缘路由器将其转发到相关的Pod,Ingress可不让能 给service提供集群内控 访问的URL、负载均衡、HTTP路由等,为了配置哪几种Ingress规则,集群管理员只能部署有有十个 Ingress Controller,它监听Ingress和service的变化,并根据规则配置负载均衡并提供访问入口。

可不让能 使用 kubectl create configmap从文件、目录将会key-value字符串创建等创建 ConfigMap。也可不让能 通过 kubectl create -f value.yaml 创建。