k8s中Pod的理解 基本概念 k8s 为什么使用 Pod 作为最小的管理单元 如何使用 Pod 1.自主式 Pod 2.控制器管理的 Pod 静态 Pod Pod的生命周期 Pod 如何直接暴露服务 hostNetwork hostPort hostNetwork 和 hostPort 的对比 Label 亲和性调度 什么是亲和(affinity)与反亲和(anti-affinity)调度 Node 亲和性调度策略 Pod 亲和性调度 NodeSelector 定向调度 资源限制 Pod 的持…
k8s 中的 service 如何找到绑定的 Pod 以及如何实现 Pod 负载均衡 前言 endpoint kube-proxy userspace 模式 iptables ipvs kernelspace 服务发现 环境变量 DNS 总结 参考 k8s 中的 service 如何找到绑定的 Pod 以及如何实现 Pod 负载均衡 前言 Service 资源主要用于为 Pod 对象提供一个固定.统一的访问接口及负载均衡的能力. service 是一组具有相同 label pod 集合的抽象,集…
K8S中创建pod时,可以显示地指明包含的container的资源需求(resouce request和resource limit),通常是CPU和Memory(RAM). kube-scheduler将用这些container的资源请求(resource request)汇总成该pod的需求,来决定在哪个node上部署这个pod:而node上的kubelet则保留相应的资源给container使用,以及根据这些container的资源限制(resource limit)来执行,不允许其使用的…
Kubernetes的网络通信问题: 1. 容器间通信: 即同一个Pod内多个容器间通信,通常使用loopback来实现. 2. Pod间通信: K8s要求,Pod和Pod之间通信必须使用Pod-IP 直接访问另一个Pod-IP 3. Pod与Service通信: 即PodIP去访问ClusterIP,当然,clusterIP实际上是IPVS 或 iptables规则的虚拟IP,是没有TCP/IP协议栈支持的.但不影响Pod访问它. 4. Service与集群外部Client的通信,即K8s中P…
在k8s中的基本概念 一.Pod1. podk8s下最重要也最基本的概念,由一个根容器Pause和许多用户业务容器组成,是容器的载体. 2. pod的yaml定义格式及字段 apiVersion: v1 //版本 kind: pod //类型,pod metadata: //元数据 name: String //元数据,pod的名字 namespace: String //元数据,pod的命名空间 labels: //元数据,标签列表 - name: String //元数据,标签的名字 ann…
本章将会讲解: pod的概念,以及如何向k8s中部署一个单体应用实例. 在上面的篇幅中,我们了解了docker,并制作.运行了docker镜像,然后将镜像发布至中央仓库了.然后又搭建了本机的k8s环境.本篇将演示如何将单个服务实例部署到k8s. Pod的含义 k8s的最小部署单元是pod,pod这个单词的意思是"豆荚",我们可以想象一下豆荚里边包含了一颗颗小豆子.与豆荚相似,k8s中包含了一个个pod,pod中运行着我们的程序,如下图: 在K8s中部署服务 在k8s中部署一个Pod,需…
目录 1.命名空间namespace 1.1 什么是命名空间? 1.2 namespace应用场景 1.3 namespacs常用指令 1.4 namespace资源限额 2.标签 2.1 什么是标签? 2.2 如何给pod资源打标签 2.3 查看资源标签 3.node节点选择器 4.nodeSelector: 5.亲和性 5.1 node节点亲和性 5.1.1 硬亲和性 5.1.2 软亲和性 5.2 Pod节点亲和性 5.2.1 pod节点亲和性 5.2.2 Pod节点反亲和性 6.污点.容忍…
一.静态和动态 在项目中使用 pod 实现模块化,对于子模块和第三类库的导入方式存在两种:静态库.动态库. 当在 podfile 中指定 use_frameworks! 时,子模块和第三方类库将被打包成 .framework 动态库,模块之间的代码不能直接引用,需要添加依赖: 反之(默认情况)将打包成 .a 静态库. 动态库和静态库的区别: 资源加载方式 包的大小 编译速度 1.1 资源加载方式 s.dependency 'xx' 静态方式中各模块的 podspec 文件不用设置依赖,就可以直接…
k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulSet DaemonSet Job 和 CronJob 总结 参考 k8s 中 Pod 的控制器 前言 Pod 是 Kubernetes 集群中能够被创建和管理的最小部署单元.所以需要有工具去操作和管理它们的生命周期,这里就需要用到控制器了. Pod 控制器由 master 的 kube-contro…
背景介绍 最近的docker容器经常被kill掉,k8s中该节点的pod也被驱赶. 我有一个在主机中运行的Docker容器(也有在同一主机中运行的其他容器).该Docker容器中的应用程序将会计算数据和流式处理,这可能会消耗大量内存. 该容器会不时退出.我怀疑这是由于内存不足,但不是很确定.我需要找到根本原因的方法.那么有什么方法可以知道这个集装箱的死亡发生了什么? 容器层级判断检测 提到docker logs $container_id查看该应用程序的输出.这永远是我要检查的第一件事.接下来,…