随笔- 41
文章- 0
评论- 0
阅读-
10506
11 2022 档案
NodePort类型的Service
摘要:NodePort类型的Service 在之前的样例中,创建的Service的ip地址只有集群内部才可以访问,如果希望将Service暴露给集群外部使用,那么就要使用到另外一种类型的Service,称为NodePort类型。 NodePort的工作原理其实就是将service的端口映射到Node的一个
阅读全文
HeadLiness类型的Service
摘要:HeadLiness类型的Service 在某些场景中,开发人员可能不想使用Service提供的负载均衡功能,而希望自己来控制负载均衡策略,针对这种情况,kubernetes提供了HeadLiness Service, 这类Service不会分配Cluster IP,如果想要访问service,只能
阅读全文
ClusterIP类型的Service
摘要:Service使用 实验环境准备 在使用service之前,首先利用Deployment创建出3个pod,注意要为pod设置`app=nginx-pod`的标签 创建deployment.yaml,内容如下: apiVersion: apps/v1 kind: Deployment metadata
阅读全文
Service详解之Service介绍
摘要:Service介绍 在kubernetes中,pod是应用程序的载体,我们可以通过pod的ip来访问应用程序,但是pod的ip地址不是固定的,这也就意味着不方便直接采用pod的ip对服务进行访问。 为了解决这个问题,kubernetes提供了Service资源,Service会对提供同一个服务的多个
阅读全文
Pod控制器详解(CronJob)
摘要:CronJob(CJ) CronJob控制器以 Job控制器资源为其管控对象,并借助它管理pod资源对象,Job控制器定义的作业任务在其控制器资源创建之后便会立即执行, 但CronJob可以以类似于Linux操作系统的周期性任务作业计划的方式控制其运行时间点及重复运行的方式。也就是说, CronJo
阅读全文
Pod控制器详解(Job)
摘要:Job Job,主要用于负责批量处理(一次要处理指定数量任务)短暂的一次性(每个任务仅运行一次就结束)任务。 Job特点如下: 当Job创建的pod执行成功结束时,Job将记录成功结束的pod数量 当成功结束的pod达到指定的数量时,Job将完成执行 Job的资源清单文件: apiVersion:
阅读全文
Pod控制器详解(DaemonSet)
摘要:DaemonSet(DS) DaemonSet类型的控制器可以保证在集群中的每一台(或指定)节点上都运行一个副本。一般适用于日志收集、节点监控等场景。 也就是说,如果一个Pod提供的功能是节点级别的(每个节点都需要且只需要一个),那么这类Pod就适合使用DaemonSet类型的控制器创建。 Daem
阅读全文
Pod控制器详解(HPA)
摘要:Horizontal Pod Autoscaler(HPA) 前面可以实现通过手工执行`kubectl scale`命令实现Pod扩容或缩容,但是这显然不符合Kubernetes的定位目标--自动化、智能化。 Kubernetes期望可以实现通过监测Pod的使用情况,实现pod数量的自动调整,于是就
阅读全文
Pod控制器详解(StatefulSet)
摘要:StatefulSet(有状态) 概述 无状态应用: 认为Pod都是一样的。 没有顺序要求。 不用考虑在哪个Node节点上运行。 随意进行伸缩和扩展。 有状态应用: 有顺序的要求。 认为每个Pod都是不一样的。 需要考虑在哪个Node节点上运行。 需要按照顺序进行伸缩和扩展。 让每个Pod都是独立的
阅读全文
Pod控制器详解(Deployment)
摘要:Deployment(Deploy) 为了更好的解决服务编排的问题,kubernetes在V1.2版本开始,引入了Deployment控制器。值得一提的是,这种控制器并不直接管理pod,而是通过管理ReplicaSet来简介管理Pod, 即:Deployment管理ReplicaSet,Replic
阅读全文
Pod控制器详解(ReplicaSet)
摘要:Pod控制器详解 Pod控制器介绍 Pod是kubernetes的最小管理单元,在kubernetes中,按照pod的创建方式可以将其分为两类: - 自主式pod:kubernetes直接创建出来的Pod,这种pod删除后就没有了,也不会重建 - 控制器创建的pod:kubernetes通过控制器创
阅读全文
Pod详解之Pod调度(污点和容忍)
摘要:污点和容忍 污点(Taints) 前面的调度方式都是站在Pod的角度上,通过在Pod上添加属性,来确定Pod是否要调度到指定的Node上, 其实我们也可以站在Node的角度上,通过在Node上添加污点属性,来决定是否允许Pod调度过来。 Node被设置上污点之后就和Pod之间存在了一种相斥的关系,进
阅读全文
Pod详解之Pod调度(亲和性调度)
摘要:亲和性调度 两种定向调度的方式,使用起来非常方便,但是也有一定的问题, 那就是如果没有满足条件的Node,那么Pod将不会被运行,即使在集群中还有可用Node列表也不行,这就限制了它的使用场景。 基于上面的问题,kubernetes还提供了一种亲和性调度(Affinity)。 它在NodeSelec
阅读全文
Pod详解之Pod调度(定向调度)
摘要:Pod调度 在默认情况下,一个Pod在哪个Node节点上运行,是由Scheduler组件采用相应的算法计算出来的,这个过程是不受人工控制的。 但是在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某些节点上,那么应该怎么做呢? 这就要求了解kubernetes对Pod的调度规则
阅读全文
Pod详解之Pod生命周期
摘要:Pod生命周期 我们一般将pod对象从创建至终的这段时间范围称为pod的生命周期,它主要包含下面的过程: - pod创建过程 - 运行初始化容器(init container)过程 - 运行主容器(main container) - 容器启动后钩子(post start)、容器终止前钩子(pre s
阅读全文
Pod详解之Pod配置
摘要:Pod配置 基本配置 containers属性介绍 [root@master ~]# kubectl explain pod.spec.containers 注:containers是第三层 KIND: Pod VERSION: v1 RESOURCE: containers <[]Object>
阅读全文
Pod详解之Pod介绍
摘要:Pod介绍 Pod结构 每个Pod中都可以包含一个或者多个容器,这些容器可以分为两类: - 用户程序所在的容器,数量可多可少 - Pause容器,这是每个Pod都会有的一个根容器,它的作用有两个: 可以以它为依据,评估整个Pod的健康状态 可以在根容器上设置Ip地址,其它容器都此Ip(Pod IP)
阅读全文
k8s部署DashBoard(v2.0)及基本使用
摘要:DashBoard 之前在kubernetes中完成的所有操作都是通过命令行工具kubectl完成的。其实,为了提供更丰富的用户体验,kubernetes还开发了一个基于web的用户界面(Dashboard)。 用户可以使用Dashboard部署容器化的应用,还可以监控应用的状态,执行故障排查以及管
阅读全文
k8s实战入门——Service
摘要:Service 通过Deployment来创建一组Pod来提供具有高可用性的服务。 虽然每个Pod都会分配一个单独的Pod IP,然而却存在如下两问题: - Pod IP 会随着Pod的重建产生变化 - Pod IP 仅仅是集群内可见的虚拟IP,外部无法访问 这样对于访问这个服务带来了难度。因此,k
阅读全文
k8s实战入门——Deployment
摘要:Deployment 在kubernetes中,Pod是最小的控制单元,但是kubernetes很少直接控制Pod,一般都是通过Pod控制器来完成的。Pod控制器用于pod的管理,确保pod资源符合预期的状态,当pod的资源出现故障时,会尝试进行重启或重建pod。 在kubernetes中Pod控制
阅读全文
k8s实战入门——Label
摘要:Label Label是kubernetes系统中的一个重要概念。它的作用就是在资源上添加标识,用来对它们进行区分和选择。 Label的特点: - 一个Label会以key/value键值对的形式附加到各种对象上,如Node、Pod、Service等等 - 一个资源对象可以定义任意数量的Label
阅读全文
k8s实战入门——Pod
摘要:Pod Pod是kubernetes集群进行管理的最小单元,程序要运行必须部署在容器中,而容器必须存在于Pod中。 Pod可以认为是容器的封装,一个Pod中可以存在一个或者多个容器。 kubernetes在集群启动之后,集群中的各个组件也都是以Pod方式运行的。可以通过下面命令查看: [root@m
阅读全文
k8s实战入门——Namespace
摘要:Namespace Namespace是kubernetes系统中的一种非常重要资源,它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 默认情况下,kubernetes集群中的所有的Pod都是可以相互访问的。但是在实际中,可能不想让两个Pod之间进行互相的访问,那此时就可以将两个Pod
阅读全文
k8s资源管理及常用命令介绍
摘要:资源管理 资源管理介绍 在kubernetes中,所有的内容都抽象为资源,用户需要通过操作资源来管理kubernetes。 kubernetes的本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓的部署服务,其实就是在kubernetes集群中运行一个个的容器,并将指定的程序跑在容器中。 k
阅读全文