Pods与Nodes
Pod是Kubernetes抽象出来表示一组应用容器(比如Docker、rkt),还有这些容器共享的资源。这些资源包括:
- 共享存储,比如Volumes
- 网络,比如独立的集群IP地址
- 如何去运行每个容器的信息,比如容器镜像版本、要使用的端口
Pod塑造出一个应用专用的"逻辑主机",它能包含不同的应用容器(紧密耦合的)。举例来说:一个Pod可以包含Node.js应用和另外一个产生Node.js webserver需要数据的应用。Pod的容器共享IP地址和端口空间,可以互相协作和调用,它们在同一个Node的上的共享上下文。
Pod是Kubernetes平台上的原子单位。当我们在Kubernetes上创建一个Deployment时,它将创建附带容器的Pods。每个Pod与被调度的Node绑定直到被删除。万一Node故障了,一个新Pod会被调度到其它可用的Node上。
Nodes
Pod总是运行在Node之上。Node是Kubernetes中的一个工作机器,通常是一个虚拟机或者物理机。每个Node被Master管理。一个节点能有多个pod,同时Kubernetes master在集群之上自动调度pod。Master的自动调度考虑到每个Node上的可用资源。
每个Kubernetes Node至少运行:
- Kubelet,一个负责Kubernetes Master和Node之间通讯的进程;它管理着运行在机器上Pods和Containers
- 容器运行时(比如Docker,rkt),负责从registry拉取容器镜像,取出容器,运行应用。
kubectl排查故障
通过kubectl可以获取已部署应用的信息以及它们的环境。大多数常规操作可以通过以下kubectl命令来完成:
- kubectl get - 列出resources
- kubectl describe - 显示resource的详细信息
- kubectl logs - 打印pod中container的日志
- kubectl exec - 对pod的container执行一个命令
在应用部署之后,你可以通过这些命令去查看它们的状态、它们运行在哪里以及它们的配置。
注:参考https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/翻译,部分内容有删减及修改。
作者:卡卡rot
链接:https://www.jianshu.com/p/c2cbe3b84813
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Pods与Nodes的更多相关文章
- k8s(3)-Pods和Nodes的概念
Pod是什么? 在前面创建部署时,Kubernetes创建了一个Pod来托管您的应用程序实例.Pod是一个Kubernetes抽象,表示一组一个或多个应用程序容器(如Docker或rkt),以及这些容 ...
- kubernetes 实战5_命令_Assign Pods to Nodes&Configure a Pod to Use a ConfigMap
Assign Pods to Nodes how to assign a Kubernetes Pod to a particular node in a Kubernetes cluster. Ad ...
- CentOS 7.6 使用kubeadm安装Kubernetes 13
实验环境:VMware Fusion 11.0.2 操作系统:CentOS 7.6 主机名 IP地址 CPU 内存 k8s2m 172.16.183.151 2核 4G k8s2n 172.16.18 ...
- 《k8s-1.13版本源码分析》-调度器框架
本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/core/scheduler/scheduler-f ...
- Kubernetes — 从0到1:搭建一个完整的Kubernetes集群
准备工作 首先,准备机器.最直接的办法,自然是到公有云上申请几个虚拟机.当然,如果条件允许的话,拿几台本地的物理服务器来组集群是最好不过了.这些机器只要满足如下几个条件即可: 满足安装 Docker ...
- kubernetes学习笔记之十:RBAC
第一章.RBAC介绍 在Kubernetes中,授权有ABAC(基于属性的访问控制).RBAC(基于角色的访问控制).Webhook.Node.AlwaysDeny(一直拒绝)和AlwaysAllow ...
- Kubernetes中的亲和性与反亲和性
通常情况下,Pod分配到哪些Node是不需要管理员操心的,这个过程会由scheduler自动实现.但有时,我们需要指定一些调度的限制,例如某些应用应该跑在具有SSD存储的节点上,有些应用应该跑在同一个 ...
- Kubernetes1.9 二进制版集群+ipvs+coredns
节点构造如下 : 节点ip 节点角色 hostname 192.168.0.57 node bigdata3 192.168.0.56 node bigdata4 192.16 ...
- Kubernetes基础:查看状态、管理服务
目标 了解Kubernetes Pod 了解Kubernetes Node 学习如何调试部署问题 了解如何通过Service暴露应用 Kubernetes Pods 在Kubernetes中创建一个D ...
- 在k8s中搭建可解析hostname的DNS服务
2016-01-25更新 上篇文章总结k8s中搭建hbase时,遇到Pod中hostname的DNS解析问题,本篇将通过修改kube2sky源码来解决这个问题. 1 前言 kube2sky在Githu ...
随机推荐
- idea导入tomcat8源码搭建源码调试环境
从apache tomcat下载tomcat8源码 1.下载到源码后,tomcat默认使用ant作为包管理工具,本地调试时创建pom.xml, 手动创建一个pom.xml放入源码根目录 <?xm ...
- 栈的数学性质:n个不同元素入栈,出栈元素不同排列的个数的推导,卡特兰数(明安图数)的推导
栈的数学性质:n个不同元素入栈,出栈元素不同排列的个数的推导,卡特兰数(明安图数)的推导 前言:重在记录,可能出错. 这部分内容借鉴了网络上的一些内容.如:什么是卡特兰数?和怎么理解出栈顺序有多少种? ...
- elasticsearch 索引数据手动复制注意事项
一.背景 有一个已经在A机器建立的100+G的es索引数据文件,需要将这份数据文件直接复制到B机器的elasticsearch中 B机器的节点是在一个集群中,有多个数据节点. 没有原始数据,不重新构建 ...
- 2373. 矩阵中的局部最大值 (Easy)
问题描述 2373. 矩阵中的局部最大值 (Easy) 给你一个大小为 n x n 的整数矩阵 grid . 生成一个大小为 (n - 2) x (n - 2) 的整数矩阵 maxLocal ,并满足 ...
- Spring MVC 笔记2
Spring MVC的体系结构 1)控制器(两种):①DispatcherServlet(等价于Struts2中的Filter) ②Controller(等价于Struts2中的Action) 2)映 ...
- pytest框架增加log打印(包括pytest的执行结果、自定义的log信息)
前言: 之前同事在跑脚本的时候报错了,发现没法把需要的log信息打印出来,我这边定位问题比较麻烦,所以增加了log的打印.这个问题之前已经处理过了,本来以为是小问题,结果今天又要用到这个小技巧的时候居 ...
- 炫酷 css实现水波纹
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第23天,点击查看活动详情 ui设计的元素有时候需要有一些动画效果,可以直接用css动画来实现. 实现一个中心圆向四周有水波纹的效果 ...
- gitignore文件中忽略项不起作用的解决方法
在使用git的时候会遇到这样的情况,我们生产的一些class或者target的目录,我不能提交,这个时候我们需要使用gitignore,但是有的时候虽然添加了,但是不起作用. 情况:开发过程中,我们自 ...
- 关于我在安装2.6.9版本bochs虚拟机时遇到的问题以及解决过程
更新于:2019.7.2 在阅读<一个64位操作系统的设计与实现>过程中,搭建实验环境遇到的诸多困难. 本人的实验环境:vmware15.0 下安装有kali-liunx虚拟机里进行的安装 ...
- 富文本编辑器第一次正常显示,第二次渲染失败 -----在使用laravel-admin 时
第二次显示 解决方法: 在每次获取富文本编辑器实例的时候,先删除一下,避免之前已经实例化造成的渲染失败