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的更多相关文章

  1. k8s(3)-Pods和Nodes的概念

    Pod是什么? 在前面创建部署时,Kubernetes创建了一个Pod来托管您的应用程序实例.Pod是一个Kubernetes抽象,表示一组一个或多个应用程序容器(如Docker或rkt),以及这些容 ...

  2. 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 ...

  3. 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 ...

  4. 《k8s-1.13版本源码分析》-调度器框架

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/core/scheduler/scheduler-f ...

  5. Kubernetes — 从0到1:搭建一个完整的Kubernetes集群

    准备工作 首先,准备机器.最直接的办法,自然是到公有云上申请几个虚拟机.当然,如果条件允许的话,拿几台本地的物理服务器来组集群是最好不过了.这些机器只要满足如下几个条件即可: 满足安装 Docker ...

  6. kubernetes学习笔记之十:RBAC

    第一章.RBAC介绍 在Kubernetes中,授权有ABAC(基于属性的访问控制).RBAC(基于角色的访问控制).Webhook.Node.AlwaysDeny(一直拒绝)和AlwaysAllow ...

  7. Kubernetes中的亲和性与反亲和性

    通常情况下,Pod分配到哪些Node是不需要管理员操心的,这个过程会由scheduler自动实现.但有时,我们需要指定一些调度的限制,例如某些应用应该跑在具有SSD存储的节点上,有些应用应该跑在同一个 ...

  8. Kubernetes1.9 二进制版集群+ipvs+coredns

    节点构造如下 : 节点ip 节点角色 hostname 192.168.0.57 node bigdata3       192.168.0.56 node bigdata4       192.16 ...

  9. Kubernetes基础:查看状态、管理服务

    目标 了解Kubernetes Pod 了解Kubernetes Node 学习如何调试部署问题 了解如何通过Service暴露应用 Kubernetes Pods 在Kubernetes中创建一个D ...

  10. 在k8s中搭建可解析hostname的DNS服务

    2016-01-25更新 上篇文章总结k8s中搭建hbase时,遇到Pod中hostname的DNS解析问题,本篇将通过修改kube2sky源码来解决这个问题. 1 前言 kube2sky在Githu ...

随机推荐

  1. Xilinx URAM使用说明 UG573

    UltraRAM Resources UltraRAM Summary UltraRAM 是单时钟.双端口.同步存储器,可用于 UltraScale+ 器件.由于 UltraRAM 与柱状(colum ...

  2. USACO2023Jan游记

    由于学校要求,过来打 USACO. 似乎要求起码升到白金? 由于是第一次打,只有从铜组开始了. Brouze 简单题,就给核心代码. 30min AK. Leaders http://usaco.or ...

  3. Vulnhub:CK-00靶机

    kali:192.168.111.111 靶机:192.168.111.196 信息收集 端口扫描 nmap -A -v -sV -T5 -p- --script=http-enum 192.168. ...

  4. 实验五Elasticsearch+Kibana展示爬虫数据

    安装elasticsearch-rtf Elasticsearch-rtf相比于elasticsearch而言多加了一些插件,因此我们选择安装Elasticsearch-rtf是一个不错的选择.在安装 ...

  5. Python爬取亚马逊商品页面

    仍然利用Requests库来实现 1 import requests 2 r=requests.get('https://www.amazon.cn/gp/product/B01M8L5Z3Y') 3 ...

  6. git账号密码修改

    1.window10下的账号密码,打开控制台->账号管理->凭据管理器

  7. k8s证书续期10年

    一.拉取脚本 git clone https://github.com/yuyicai/update-kube-cert.git cd update-kube-cert chmod 755 updat ...

  8. vscode代码片段

    {    "Print to console": {        "prefix": "vue2",        "body& ...

  9. Linux(CentOS) Mysql 8.0.30 安装(多源安装)

    Linux(CentOS) Mysql 8.0.30 安装(多源安装) 安装命令根据实际部署情况修改调整,CentOS一般选择通用版本Red Hat Enterprise Linux 7 本文档使用w ...

  10. Wordpress主题twentytwelve修改首页文章摘要

    方法:网站后台->外观->编辑->找到content.php文件 路径:wp-content/themes/twentytwelve/ 找到这一句: <?php if ( is ...