草庐IT

批处理及有状态等应用类型在 K8S 上应该如何配置?

众所周知,Kubernetes(K8S)更适合运行无状态应用,但是除了无状态应用.我们还会有很多其他应用类型,如:有状态应用,批处理,监控代理(每台主机上都得跑),更复杂的应用(如:hadoop生态...).那么这些应用可以在K8S上运行么?如何配置?其实,K8S针对这些都有对应的不同的运行方式.您要做的,就是考虑您的应用程序类型会如何影响其运行方式.Kubernetes定义了适用于不同类型应用程序的不同类型的工作负载。要确定适合您的应用程序的工作负载,请根据如下思路来思考您的应用程序:是为了完成任务。一个典型例子是一个应用程序,启动时会跑一批数据,并在批处理执行完成后退出。该应用程序可能会定

批处理及有状态等应用类型在 K8S 上应该如何配置?

众所周知,Kubernetes(K8S)更适合运行无状态应用,但是除了无状态应用.我们还会有很多其他应用类型,如:有状态应用,批处理,监控代理(每台主机上都得跑),更复杂的应用(如:hadoop生态...).那么这些应用可以在K8S上运行么?如何配置?其实,K8S针对这些都有对应的不同的运行方式.您要做的,就是考虑您的应用程序类型会如何影响其运行方式.Kubernetes定义了适用于不同类型应用程序的不同类型的工作负载。要确定适合您的应用程序的工作负载,请根据如下思路来思考您的应用程序:是为了完成任务。一个典型例子是一个应用程序,启动时会跑一批数据,并在批处理执行完成后退出。该应用程序可能会定

使用 Kubeadm 部署 Kubernetes(K8S) 安装 -- 持久化存储(PV&PVC)

使用Kubeadm部署Kubernetes(K8S)安装--Ingress-Ngnix使用Kubeadm部署Kubernetes(K8S)安装--持久化存储(NFS网络存储)NFS存在一个弊端,需要知道NFS服务器的地址,配在yaml中PV:持久化存储,对存储资源进行抽象,对外提供可以调用的地方PVC:用于调用,不需要关心内部实现细节PV(PersistentVolume):是集群中由管理员配置的一段网络存储。它是集群中的资源,就像节点是集群资源一样。PV是容量插件,如Volumes,但其生命周期独立于使用PV的任何单个pod。此API对象捕获存储实现的详细信息,包括NFS,iSCSI或特定于

使用 Kubeadm 部署 Kubernetes(K8S) 安装 -- 持久化存储(PV&PVC)

使用Kubeadm部署Kubernetes(K8S)安装--Ingress-Ngnix使用Kubeadm部署Kubernetes(K8S)安装--持久化存储(NFS网络存储)NFS存在一个弊端,需要知道NFS服务器的地址,配在yaml中PV:持久化存储,对存储资源进行抽象,对外提供可以调用的地方PVC:用于调用,不需要关心内部实现细节PV(PersistentVolume):是集群中由管理员配置的一段网络存储。它是集群中的资源,就像节点是集群资源一样。PV是容量插件,如Volumes,但其生命周期独立于使用PV的任何单个pod。此API对象捕获存储实现的详细信息,包括NFS,iSCSI或特定于

Kubernetes(K8S) Pod 介绍

Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或者扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod引用对象的,PersistentVolume资源对象是用来为Pod提供存储等等,k8s不会直接处理容器,而是Pod,Pod是由一个或多个container组成Pod是Kubernetes的最重要概念,每一个Pod都有一个特殊的被称为”根容器“的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一

Kubernetes(K8S) Pod 介绍

Pod是k8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在k8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或者扩展Pod对象功能的,比如控制器对象是用来管控Pod对象的,Service或者Ingress资源对象是用来暴露Pod引用对象的,PersistentVolume资源对象是用来为Pod提供存储等等,k8s不会直接处理容器,而是Pod,Pod是由一个或多个container组成Pod是Kubernetes的最重要概念,每一个Pod都有一个特殊的被称为”根容器“的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一

Kubernetes(K8S) helm 安装

Helm是一个Kubernetes的包管理工具,就像Linux下的包管理器,如yum/apt等,可以很方便的将之前打包好的yaml文件部署到kubernetes上。Helm有3个重要概念:helm:一个命令行客户端工具,主要用于Kubernetes应用chart的创建、打包、发布和管理。Chart:应用描述,一系列用于描述k8s资源相关文件的集合。Release:基于Chart的部署实体,一个chart被Helm运行后将会生成对应的一个release;将在k8s中创建出真实运行的资源对象。在部署微服务项目时,可能有几十个服务,每个服务都有一套yaml文件,需要维护大量yaml文件,版本管理特别

Kubernetes(K8S) helm 安装

Helm是一个Kubernetes的包管理工具,就像Linux下的包管理器,如yum/apt等,可以很方便的将之前打包好的yaml文件部署到kubernetes上。Helm有3个重要概念:helm:一个命令行客户端工具,主要用于Kubernetes应用chart的创建、打包、发布和管理。Chart:应用描述,一系列用于描述k8s资源相关文件的集合。Release:基于Chart的部署实体,一个chart被Helm运行后将会生成对应的一个release;将在k8s中创建出真实运行的资源对象。在部署微服务项目时,可能有几十个服务,每个服务都有一套yaml文件,需要维护大量yaml文件,版本管理特别

Kubernetes(K8S) Node NotReady 节点资源不足 Pod无法运行

k8s线上集群中Node节点状态变成NotReady状态,导致整个Node节点中容器停止服务。一个Node节点中是可以运行多个Pod容器,每个Pod容器可以运行多个实例App容器。Node节点不可用,就会直接导致Node节点中所有的容器不可用,Node节点是否健康,直接影响该节点下所有的实例容器的健康状态,直至影响整个K8S集群kubectltopnodeNotFound#查看节点的资源情况[root@k8smaster~]#kubectltopnodeNAMECPU(cores)CPU%MEMORY(bytes)MEMORY%k8smaster269m13%1699Mi22%k8snode1

Kubernetes(K8S) Node NotReady 节点资源不足 Pod无法运行

k8s线上集群中Node节点状态变成NotReady状态,导致整个Node节点中容器停止服务。一个Node节点中是可以运行多个Pod容器,每个Pod容器可以运行多个实例App容器。Node节点不可用,就会直接导致Node节点中所有的容器不可用,Node节点是否健康,直接影响该节点下所有的实例容器的健康状态,直至影响整个K8S集群kubectltopnodeNotFound#查看节点的资源情况[root@k8smaster~]#kubectltopnodeNAMECPU(cores)CPU%MEMORY(bytes)MEMORY%k8smaster269m13%1699Mi22%k8snode1