kubernets之pod的标签的使用】的更多相关文章

一 对于kubernets里面的资源标记完成之后的使用 1 node节点标签的应用(将资源调度到特定的节点上) #kubia-gpu.ymlapiVersion: v1 kind: Pod metadata: name: kubia-manual-gpu spec: nodeSelector: gpu: "true" containers: - image: luksa/kubia name: kubia ports: - containerPort: 8080 protocol: T…
一 标签的拓展使用 1.1 标签的作用范围不仅仅适用于pod对node以及其他类的大部分资源同样适用 k label node node01 gpu=true k是kubectl的别名形式 同样对于node适用,用法几乎和pod一摸一样 1.2 查询node标签的方式 k get no -l gpu 方式和pod一样 1.3 修改node标签的方式 k label no node01 gpu=false --overwrite 方式和pod一样 推论: 标签基本适用于k8s集群的几乎所有资源,且…
一     如何查看pod 的日志 1 通过执行命令查看日志信息 kubectl logs pod_name 二    创建带有标签的pod,一个范例的pod创建yaml文件如下所示 2.1 创建带有指定标签的pod 只需要在metadata标签下面添加labels添加,之后再添加需要添加的标签对即可 2.2 如何查看集群里面的pod都带有哪些标签 kubectl get po -L version,app version:pod的版本标签(自定义) app:pod的应用标签(自定义)   2.…
版权声明:本文为博主原创文章,支持原创,转载请附上原文出处链接和本声明. 本文地址:https://www.cnblogs.com/wannengachao/p/12074399.html 1.查看pod标签: 查看所有pod的标签: kubectl get pod --show-labels 查看单个pod的标签: kubectl get pod redis --show-labels 查看namespaces下所有pod的标签: kubectl get pod --all-namespace…
pod与容器 一个pod是一组紧密相关的容器,它们总是一起运行在同一个节点上,以及同一个LInux命名空间中. 每个pod拥有自己的ip,包含若干个容器.pod分布在不同的节点上. 为什么需要pod 为什么需要pod,而不是直接使用容器: 因为容器被设计为只运行一个进程,由于不能够将多个进程聚集在一个单独的容器中,就需要另一种结构将容器绑定在一起,并将它们作为一个单元管理,这就是pod的根本原理. pod中容器的隔离共享 在同一个pod中,多个容器有些资源是共享的,有些是隔离的. 同一个pod中…
一 删除单个pod 1  删除指定命名空间的指定名称的pod k delete po kubia-manual -n defaultpod "kubia-manual" deleted 2  通过标签删除pod [root@node01 pod]# k delete po -l app=k8s pod "kubia-manual-gpu" deleted pod "kubia-manual-with-labels" deleted 3 通过删除整…
一 pod简介 1.1 介绍 Pod是K8s集群中所有业务类型的基础 Pod是在K8s集群中运行部署应用或服务的最小单元,它是可以支持多容器的. Pod的设计理念是支持多个容器在一个Pod中共享网络地址和文件系统 pod和容器的区别就是,一个pod可以有多个容器,当一个pod只有一个容器的时候,访问pod就是访问容器,对于一个kubernets来说,一个pods至少有两个容器,一个是不可见的,称为pause容器,另一个就是业务容器 pod是一个逻辑概念,pod中的一个容器异常,整个pod重新创建…
service和pod绑定 apiVersion: v1 kind: Service metadata: name: my-haproxy labels: app: my-haproxy spec: ports: - port: 8078 targetPort: 6443 selector: app: my-haproxy externalIPs: - 192.168.0.12…
一  k8s集群里面的最小单位是pod 1.1 一个较为简单的pod的配置文件 apiverson: api的版本号 kind: 资源的种类 metadata: pod的种类等相关信息 spec: pod里面包含的容器信息 1.2 通过命令创建pod kubectl create -f kubia.yml 1.3 pod的生命周期 pending: 该状态下,已经向apiserver提交了pod的创建文件,正在进一步校验,语法是否正确,是否能够通过鉴权 ContainerCreateing: 这…
一  downwardAPI的应用 1.1  前面我们介绍了如何通过configmap以及secret将配置传入到pod的容器中,但是传递的这些都是预先能够安排和只晓得,对于那些只有当pod创建起来之后才由其他一些资源创建的配置,上面说到的那些都没用,我们需要另外一种kubernets资源来提供这些配置的渲染,这种方式主要是通过将pod定义和状态中取得的数据作为环境变量和文件值 1.2  介绍pod一些常见的元数据 pod的名称 pod的IP pod所在的命名空间 pod所在的运行节点 pod的…
写在前面的话 前面我们提到过,纯手敲 K8S 名称管理 K8S 服务只是作为我们了解 K8S 的一种方案,而我们最终管理 K8S 的方法还是通过接下来的资源清单的方式进行管理. 所以从本章节开始,将会迎来 K8S 的重中之重,我们能否说我们会 K8S 就看就看接下来的学习. 另外,在 K8S 中,我们需要树立一个这样的概念,几乎能用到的东西都可以把它称作资源,而这个定义了规则的 yaml 文件就是资源清单. 资源清单格式 资源清单格式: apiVersion: group/apiversion…
一  声明式的升级应用 1.1  回顾一下kubernets集群里面部署一个应用的形态应该是什么样子的,通过一副简单的图来描述一下 通过RC或者RS里面的模板创建了三个pod,之后通过一个servcie跟它进行关联 用户通过service访问pod里面应用 RC或者RS来维护保障集群里面的pod数量始终恒定 二  如何对pod里面应用进行升级 2.1  升级RS/RC里面管控的的pod里面服务,我们无法通过修改某个文件或者代码的形式来替换pod应用的内容,只能通过删除之前的pod,之后重新创建新…
一  服务与pod的发现 1.1  服务发现pod是很显而易见的事情,通过简称pod的标签是否和服务的标签一致即可,但是pod是如何发现服务的呢?这个问题其实感觉比较多余,但是接下来你就可能不这么想了 首先,众所周知,pod是有生命周期,并且受控于它的管控器(RC等),当节点从集群中离开,则管控器需要重新创建pod,此时RC和pod里面都无服务的信息,那么是如何发现服务的呢? 1.2  一个简单的方法是通过环境变量的形式来发现服务,但是这种方式,只能是服务在pod之前创建,因为这样集群才能将服务…
本文的演练环境为基于Virtualbox搭建的Kubernetes集群,具体搭建步骤可以参考kubeadm安装kubernetes V1.11.1 集群 1. 基本概念 1.1 Pod是什么 Pod是Kubernetes中能够创建和部署的最小单元,是Kubernetes集群中的一个应用实例,总是部署在同一个节点Node上.Pod中包含了一个或多个容器,还包括了存储.网络等各个容器共享的资源.Pod支持多种容器环境,Docker则是最流行的容器环境. 单容器Pod,最常见的应用方式. 多容器Pod…
一.Pod控制器及其功用 Pod控制器是用于实现管理pod的中间层,确保pod资源符合预期的状态,pod的资源出现故障时,会尝试 进行重启,当根据重启策略无效,则会重新新建pod的资源. pod控制器有多种类型: ReplicaSet: 代用户创建指定数量的pod副本数量,确保pod副本数量符合预期状态,并且支持滚动式自动扩容和缩容功能.ReplicaSet主要三个组件组成: (1)用户期望的pod副本数量 (2)标签选择器,判断哪个pod归自己管理 (3)当现存的pod数量不足,会根据pod资…
一.标签是什么 标签是k8s特色的管理方式,便于分类管理资源对象. 一个标签可以对应多个资源,一个资源也可以有多个标签,它们是多对多的关系. 一个资源拥有多个标签,可以实现不同维度的管理. 可以使用标签选择器来指定能使用哪些标签. 1.标签组成 key=value key:只能使用 字母 数字  _  -  . (只能以字母数字开头,不能超过63给字符) value: 可以为空 只能使用 字母 数字开头 2.定义标签 kubectl get pods --show-labels #查看pod所有…
在看kubernetes的例子时,出现了一个疑问. Pod.RC.Service的yaml文件里,都出现了labels,还有labelSelector.有些不太清楚,因此就这点来学习下.   接上文: 3.启动服务器 即使只有一个pod,也要使用service.service起到负载均衡器的作用,通过proxy和selector决定服务请求传递给后端的哪个pod.然后对外提供固定的IP和port,所以即使redis master pod迁移变化也没有影响. (1)redis master ser…
目录 Pod 资源 标签 给资源打标签 标签选择器 Pod 生命周期 实际操作 livenessProbe 实战 livenessProbe exec 测试 livenessProbe httpGet 测试 readinessProbe 就绪性探针 Pod 控制器 ReplicaSet 控制器 Deployment 控制器 测试滚动更新 DaemonSet 控制器 Pod 资源 spec.containers <[]object> - name <string> image <…
写在前面的话 从上一章节开始,我们一直在学习关于自主式 Pod 的资源清单编写, 但是自主式 Pod 存在着一个问题,就是和我们直接 docker run 运行 docker 容器一样.如果我们想以集群的形式并配合复杂的处理逻辑就不那么好用了. 针对这点,我们将 Pod 的处理交给了控制器. 关于控制器 再详细讲解控制器怎么使用之前,我们得知道控制器是啥,以及我们需要使用哪些. 在讲解 K8S 的 Master 组成的时候说过,Master 节点有个重要组件叫做 Controller Manag…
deployment根据Pod的标签关联到Pod,是为了管理pod的生命周期 service根据Pod的标签关联到pod,是为了让外部访问到pod,给pod做负载均衡 需要注意: deployment控制器关联的Pod,Pod的name和hostname(如果不手动指定)就是deployment控制器的Name StatefulSet控制器关联的Pod,Pod的Name和Hostname(如果不手动指定)就是StatefulSet控制器的Name + 序号…
replicationcontroller 选择器 模版 副本数   如果更改选择器,则会创建新的pod 如果更改pod的标签,那么也会创建新的pod进行替换,但是老的pod不会被删除 如果更改模版,比如给加入新标签,那么将在下次替换时用到新模版,这个可以用于升级pod使用   kubectl edit rc kubia 这将在你的默认编辑器中打开Replicationcontroller 的YAML配置. 使用export KUBE_EDITOR="/usr/bin/nano"设置默…
Pod控制器相关知识 控制器的必要性 自主式Pod对象由调度器调度到目标工作节点后即由相应节点上的kubelet负责监控其容器的存活状态,容器主进程崩溃后,kubelet能够自动重启相应的容器.但对出现非主进程崩溃类的容器错误却无从感知,这便依赖于pod资源对象定义的存活探测,以便kubelet能够探知到此类故障.但若pod被删除或者工作节点自身发生故障(工作节点上都有kubelet,kubelet不可用,因此其健康状态便无法保证),则便需要控制器来处理相应的容器重启和配置. 常见的工作负载控制…
k8s中最为重要的基础资源,pod,pod controller,service pod controller类型有多种需要向控制器赋值之后使用: kubectl命令使用 kubectk get nodes/pod/deployment/ns name#查询节点,pod,控制器.名称空间 kubectl delete pod|ns... name #删除名称空间,pod [root@node1 ~]# kubectl create namespace myns namespace/myns cr…
一.回顾 1.Pod是标准的kubernetes资源,因此其遵循为其资源清单配置定义的基本格式,包含:apiVersion,kind,metadata,spec,status(只读) 2.spec的内嵌字段 containers: name image imagePullPolicy:Always,Never,IfNotPresent ports:name,containerPort livenessProbe readinessProbe liftcycle ExecAction: exec…
引用三个问题来叙述Kubernetes的pod容器 1.为什么不直接在一个Docker容器中运行所有的应用进程. 2.为什么pod这种容器中要同时运行多个Docker容器(可以只有一个) 3.为什么k8s使用pod这种容器而不直接使用Docker容器 一个由多个进程进行组成的应用程序,无论是通过ipc(进程间通信)还是本地存储文件进行通信,都要求它们运行于同一台机器上.Docker容器非常像一台独立的机器,此时你可能认为在单个容器中运行多个进程是合乎逻辑的,然而在实践中这种做法并不合理. 容器被…
定义pod时,在spec字段中常用的定义字段有哪些? master ~]# kubectl explain pods.spec.containers KIND: Pod VERSION: v1 RESOURCE: containers <[]Object> DESCRIPTION: List of containers belonging to the pod. Containers cannot currently be added or removed. There must be at…
一.Pod控制器的类别 ReplicationController:早期唯一的控制器,已废弃 ReplicaSet:控制Pod满足用户期望副本:标签选择器选择由自己管理的Pod副本:Pod资源模板完成Pod资源的新建.主要用于管理无状态的Pod,不建议直接使用此控制器 Deployment:基于ReplicaSet控制器:建议使用此控制器,支持滚动更新和回滚,管理无状态应用 DaemonSet:守护进程类的控制器,例如每台node都启动一个Pod一直持续下去 Job:执行一次性的任务,完成后就退…
一.Pod镜像及端口 获取帮助文档 # kubectl explain pod.spec.containers spec.containers <[]object> pod.spec.containers.imagePullPolicy:镜像的拉取策略 - name <string> image <string> imagePullPolicy: <string> #如果标签是latest则默认值是Always,如果是其他标签则默认值是IfNotPresen…
一.Pod的生命周期 init container -- Post start  --  running -- pre stop -- main container 创建Pod经历的过程:->apiServer->etcd保存->scheculer->etcd调度结果->当前节点运行pod(把状态发回apiServer)->etcd保存 Pod的状态:Pending  Running  Failed   Succeeded  Unkown Pod生命周期中的重要行为:…
查看pod的标签 [root@master pod]# kubectl get pods --show-labels NAME READY STATUS RESTARTS AGE LABELS cv-podh 1/2 CrashLoopBackOff 15 55m app=myapp,tier=frontend mysql-gh9ds 1/1 Running 4 28h app=mysql,cx=z pod 1/2 CrashLoopBackOff 70 27h app=myapp,tier=f…