Kubernetes
文章平均质量分 90
Kubernetes学习总结
Docker的流行激活了一直不温不火的 PaaS,随之而来的是各类 Micro-PaaS的出现,Kubernetes是其中最具代表性的一员,它是 Google多年大规模容器管理技术的开源版本。
一杯甜酒
金融科技领域技术 & 云基础设施 & 云原生微服务 & 云原生时代标准交付 & PAAS 技术研发 & Kubernetes & 项目与技术管理
展开
-
Kubernetes 学习总结(46)—— Pod 不停重启问题分析与解决
我们在做性能测试的时候,往往会发现我们的pod服务,频繁重启,通过kubectl get pods 命令,我们来逐步定位问题。将limit的memory数值提高,然后delete -f yaml,再apply -f yaml。发现我们deployment.yaml对服务的内存使用,做了限制。OOM,pod被kill掉,重启了(内存不够用)running的pod,短时间内重启次数太多。转载 2024-03-03 10:50:06 · 1056 阅读 · 0 评论 -
Kubernetes 学习总结(45)—— 懂 Pod 就懂了 Kubernetes 的一半
Kubernetes 可以理解成一个对计算、网络、存储等云计算资源的抽象后的标准 API 服务。几乎所有对 Kubernetes 的操作,不管是用 kubectl 命令行工具,还是在UI或者CD Pipeline 中,都相当于在调用其 REST API。很多人说 Kubernetes 复杂,除了其本身实现架构复杂以外,还有一个原因就是里面有二十多种原生资源的 API 学起来曲线比较陡。但不用担心,我们只要抓住本质 – 提供容器计算能力的平台,就能纲举目张,很容易快速理解。原创 2024-01-07 10:18:45 · 1175 阅读 · 0 评论 -
Kubernetes 学习总结(44)—— Kubernetes 1.29 中的删除、弃用和主要更改
和其他每次发布一样,Kubernetes v1.29 将弃用和移除一些特性。一贯以来生成高质量发布版本的能力是开发周期稳健和社区健康的证明。本文列举即将发布的 Kubernetes 1.29 中的一些弃用和移除事项。原创 2024-01-07 10:05:43 · 1237 阅读 · 0 评论 -
Kubernetes 学习总结(43)—— Kubernetes 从提交 deployment 到 pod 运行的全过程
当用户向Kubernetes提交了一个创建deployment的请求后,Kubernetes从接收请求直至创建对应的pod运行这整个过程中都发生了什么呢?转载 2023-12-29 19:45:58 · 1317 阅读 · 0 评论 -
Kubernetes 学习总结(42)—— Kubernetes 之 pod 健康检查详解
要想 Kubernetes 里每个服务的可用性更高,那么对 Pod 的健康检查是少不了的。本文重点如下:PendingRunningSucceeded或FailedUnKnown。启动探针存活探针就绪探针。如何选择探针:一般情况下全都要。排查 Pod 问题:搭配使用和。原创 2023-12-28 13:50:53 · 1337 阅读 · 0 评论 -
Kubernetes 学习总结(41)—— 云原生容器网络详解
随着网络技术的发展,网络的虚拟化程度越来越高,特别是,叠加了物理网络、虚机网络和容器网络,数据包在网络 OSI 七层网络模型、TCP/IP 五层网络模型的不同网络层进行封包、转发和解包。网络数据包跨主机网络、容器网络、虚机网络和物理网络到达对端,期间必然带来网络性能损耗。原创 2023-12-28 10:25:04 · 1770 阅读 · 0 评论 -
Kubernetes 学习总结(40)—— Kubernetes 之 自动伸缩 HPA、VPA、CA和CPA详解
Kubernetes提供了多种自动伸缩机制,如HPA(水平Pod自动缩放器),可根据不同情况动态调整Pod副本数量。此功能使Pod能够有效处理当前流量,无需管理员不断干预。除了HPA外,还有VPA(垂直Pod自动缩放器)、CA(集群比例自动缩放器)和CPA(自定义Pod自动缩放器)。它们分别从水平和垂直方面,以及整个集群规模角度,调整Pod和节点数量。这些机制相互补充,可根据需求灵活运用。上述所有机制并不相互排斥。原创 2023-12-21 09:32:19 · 1610 阅读 · 0 评论 -
Kubernetes 学习总结(39)—— Kubernetes 之 Pause 容器详解
在 Kubernetes 中,Pause 容器是一种特殊类型的容器,它的主要作用是充当依赖其他容器的容器,为其他容器提供一个可靠的、隔离的运行环境。Pause 容器是一种轻量级的容器,它本身不包含任何业务逻辑,只是为其他容器提供一个稳定、可靠的运行环境。Pause 容器的实现基于 Docker 的 pause 镜像,可以在创建其他容器之前将其加载到 Pod 中,以确保 Pod 中的其他容器在 Pause 容器的基础上运行。原创 2023-10-22 09:42:01 · 1795 阅读 · 0 评论 -
Kubernetes 学习总结(38)—— Kubernetes 与云原生的联系
相比传统的单体应用而言,启动速度与运行效率快慢并不是重要的指标,但是对于需要快速迭代、水平扩展的云原生微服务架构应用而言,更快的启动速度就意味着更高的交付效率,和更加快速的回滚,尤其是面对较多应用的时候,可能仅仅才500ms的反应时间也会让用户感觉到延迟,从而造成用户的体验感变差。在实际的运行中占用的资源更低的时候,也就代表了更高的部署密度和更低的计算成本,同时,在JVM启动时需要消耗大量CPU资源对字节码进行编译,降低启动时资源消耗,可以减少资源争抢,更好保障其他应用SLA。原创 2023-09-27 06:46:21 · 2074 阅读 · 0 评论 -
Kubernetes 学习总结(37)—— Kubernetes 之 CoreDNS 企业级应用
百度百科:域名和与之相对应的IP地址转换的服务器 DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,以解析消息的域名。域名是Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。原创 2023-09-24 22:37:00 · 537 阅读 · 0 评论 -
Kubernetes 学习总结(36)—— Kubernetes 本地运行的四种方法
Kubernetes 是一个开源的容器编排平台。它由 Google 开发,为自动化部署、扩展和管理容器化应用提供了一个开源系统。无论你的情况如何,将本地 Kubernetes 环境设置为你的开发环境都是推荐的选择,因为这种设置可以创建一个安全而敏捷的应用部署流程。幸运的是,有多个平台可以让你尝试在本地运行 Kubernetes,它们都是开源的,并且都是 Apache 2.0 许可。原创 2022-09-08 10:27:12 · 433 阅读 · 0 评论 -
Kubernetes 学习总结(35)—— Kubernetes 1.25 正式发布,多方面重大突破
美国时间 2022 年 8 月 23 日,Kubernetes 1.25 正式发布。此版本更新距离上版本发布时隔 4 个月,是 2022 年的第二个版本。受新冠疫情和国际形势变化影响以及发布团队的全球化性质,发布过程也经历了非常大的挑战。「1.24 版本 46 个、1.23 版本 45 个」其中 13 个功能升级为稳定版,10 个已有功能进行优化,另有多达 15 个全新功能以及 2 个废弃的功能。Kubernetes 1.25 版本在多个方面实现重大突破,原创 2022-08-25 13:36:58 · 5234 阅读 · 2 评论 -
Kubernetes 学习总结(34)—— 如何理解编排
编排这个词,去搜 google 翻译,推荐的是 Orchestration 这个单词。但是你反过来搜 Orchestration 中文意思,它的翻译是“管弦乐编曲”。在管弦乐曲里,要完成多种乐器之间的协调配合肯定需要一种方法,这种方法也叫编排。由此可感受到,有编排的场景存在多种组件事务,而且这些组件事务具有一定的独立性。个人理解,编排是按照某种机制让各种组件自动化配合运作,然后得到你想要的结果。...转载 2022-08-17 15:46:07 · 678 阅读 · 0 评论 -
Kubernetes 学习总结(33)—— Kubernetes 是如何重塑虚拟机的
为了改善在 VM 上运行服务的体验,容器改变了我们打包软件的方式,大大降低了对服务器配置的要求,并启用了替代方法来部署我们的工作负载。但就其本身而言,容器并没有成为大规模运行服务的解决方案。顶部仍然需要额外的编排层。Kubernetes 作为容器原生编排系统之一,使用容器作为基本构建块重新创建了过去熟悉的架构模式。Kubernetes 还通过提供用于扩展、部署和服务发现的内置方法来解决传统方案的痛点。...转载 2022-08-11 15:01:02 · 354 阅读 · 0 评论 -
Kubernetes 学习总结(32)—— Kubernetes 的架构原理简单总结
Master 节点启动时,会运行一个 kube-apiserver 进程,它提供了集群管理的 API 接口,是集群内各个功能模块之间数据交互和通信的中心枢纽,并且它页提供了完备的集群安全机制。在 Node 节点上,使用 K8S 中的 kubelet 组件,在每个 Node 节点上都会运行一个 kubelet 进程,它负责向 Master 汇报自身节点的运行情况,如 Node 节点的注册、终止、定时上报健康状况等,以及接收 Master 发出的命令,创建相应 Pod。在 K8S 中,Pod 是最基本的操作单元原创 2022-07-08 14:24:52 · 469 阅读 · 0 评论 -
Kubernetes 学习总结(31)—— Kubernetes 为何需要 Istio ?
“A service mesh is a dedicated infrastructure layer for handling service-to-service communication. “ —— William Morgan。ervice Mesh 是一个专注于处理服务间通信的基础设施层。云原生应用有着复杂的服务拓扑,而 Service Mesh 保证请求可以在这些拓扑中可靠地穿梭。在实际应用当中,Service Mesh 通常是由一系列轻量级的网络代理组成的,它们与应用程序部署在一起,但应用程原创 2022-06-14 16:01:09 · 908 阅读 · 0 评论 -
Kubernetes 学习总结(29)—— 使用 kubeadm 部署 Kubernetes 1.24 详细步骤总结
前言kubeadm 是 Kubernetes 官方提供的用于快速安部署 Kubernetes 集群的工具,伴随 Kubernetes 每个版本的发布都会同步更新,kubeadm 会对集群配置方面的一些实践做调整,通过实验 kubeadm 可以学习到 Kubernetes 官方在集群配置上一些新的最佳实践。一、准备1.1、系统配置在安装之前,需要先做好如下准备。3 台 CentOS 7.9 主机如下:cat /etc/hosts192.168.96.151 node1192.1原创 2022-05-27 10:16:37 · 9195 阅读 · 5 评论 -
Kubernetes 学习总结(30)—— Kubernetes YAML 最佳实践和策略
前言Kubernetesv工作负载最常用 YAML 格式的文件来定义。YAML 的问题之一就是很难描述清单文件之间的约束或关系。如果你希望检查是否已从受信任的注册表中提取部署到群集中的所有映像,该怎么办?如何防止没有 Pod 安全策略的工作负载提交到集群?集成静态检查可以在更接近开发生命周期的时间内捕获错误和违反策略的行为。并且由于改善了资源定义的有效性和安全性,因此你可以相信生产工作负载遵循最佳实践。Kubernetes YAML 文件的静态检查生态系统可以分为以下几类:API验证程序:此类工具原创 2022-05-12 04:00:00 · 813 阅读 · 0 评论 -
Kubernetes 学习总结(28)—— Kubernetes 常见问题总结
如何删除不一致状态下的 rc、deployment、service在某些情况下经常发现 kubectl 进程挂起现象,然后在 get 时候发现删了一半而另外的删除不了[root@k8s-master~]#kubectlget-ffluentd-elasticsearch/NAMEDESIREDCURRENTREADYAGErc/elasticsearch-logging-v102215hNAMEDESIREDCURRENTUP-TO-DATEAVAILAB...原创 2022-05-11 04:00:00 · 1470 阅读 · 0 评论 -
Kubernetes 学习总结(27)—— Kubernetes 安装 Redis 集群的两个方案
一、自定义 yaml 文件安装背景在 Kubernetes 中部署 Redis 集群面临挑战,因为每个 Redis 实例都依赖于一个配置文件,该文件可以跟踪其他集群实例及其角色。为此,需要结合使用 Kubernetes StatefulSets 和 PersistentVolumes 实现。Redis 集群架构如下图所示:创建 StatefulSet yaml 文件---apiVersion:v1kind:ConfigMapmetadata:name:redis...原创 2022-05-10 04:00:00 · 1860 阅读 · 0 评论 -
Kubernetes 学习总结(26)—— Kubernetes 网络模型基础指南
前言Kubernetes 是为运行分布式集群而建立的,分布式系统的本质使得网络成为 Kubernetes 的核心和必要组成部分,了解 Kubernetes 网络模型可以使你能够正确运行、监控和排查应用程序故障。网络是非常复杂的,拥有许多概念,对于不熟悉这个领域的用户来说,这可能会有一定的难度,这里面有很多概念需要理解,并且还需要把这些概念整合起来形成一个连贯的整体,比如网络命名空间、虚拟接口、IP 转发、NAT 等概念。Kubernetes 中对任何网络实现都规定了以下的一些要求: 所有原创 2022-05-03 07:51:51 · 423 阅读 · 0 评论 -
Kubernetes 学习总结(25)—— Kubernetes 中的 pod 与容器的区别和联系
前言容器本可以成为轻量级虚拟机的替代品。但是由于 Docker/OCI 的标准化,最广泛使用的容器形式是每个容器只有一个进程服务。这种方法有很多优点——增加隔离性、简化水平扩展、更高的可重用性等。但是,它也有一个很大的缺点——正常情况下,虚拟(或物理)机器很少只运行一个服务。虽然 Docker 试图提供一些变通方法来创建多服务容器,但 Kubernetes 迈出了更大胆的一步,并选择了一组称为 Pod 的内聚容器作为最小的可部署单元。几年前偶然发现 Kubernetes 时,之前的虚拟机和裸机经验让我很原创 2022-04-19 04:00:00 · 1018 阅读 · 1 评论 -
Kubernetes 学习总结(24)—— Kubernetes 滚动更新、蓝绿发布、金丝雀发布等发布策略详解
前言大部分公司都已经在使用 Kubernetes进行容器管理和编排了,但是关于 Kubernetes的发布策略相关的概括我们很多同学还没有一个完整的认识,下面我们对 Kubernetes 的多种发布策略从整体上做一个概括的认识。Kubernetes 中常见的发布策略主要有如下六种:重建(recreate) :即停止一个原有的容器,然后进行容器的新建。滚动更新(rollingUpdate) :停掉一个容器,然后更新一个容器。蓝绿布署(blue/green ):准备一套蓝色的容器和一套绿...原创 2022-02-25 04:00:00 · 2442 阅读 · 0 评论 -
Kubernetes 学习总结(23)—— 2022 年 Kubernetes 的 5 个趋势
前言Kubernetes 在成长,使用它的团队也在成长。早期采用者现在已经进入了自己的领域,能够基于经验和云原生生态系统的增长,以新的方式扩展 Kubernetes 的核心功能。“我们将继续扩大 Kubernetes 的使用范围,以满足业务的混合云、多云需求。” Liberty Mutual 的架构师 Eric Drobisewski 说,“展望未来,Kubernetes 提供的声明性 API 和强大的协调循环对于统一和提供更一致的方法来跨公共和私有云环境定义、管理和保护数字功能至关重要。”《财富》10原创 2022-02-17 15:55:29 · 1431 阅读 · 0 评论 -
Kubernetes 学习总结(22)—— 应用程序迁移到 Kubernetes 应该注意些什么?
前言容器化是实现更自动化基础设施的关键,而将应用程序迁移到 Kubernetes 是一个重大步骤。根据 Canonical 的数据,只有大约 15% 的企业完全使用 Kubernetes 来运行应用程序。大约同样比例的人仍在使用纯粹以虚拟机为中心的基础设施,而其余的人要么计划迁移到 Kubernetes,要么混合使用 Kubernetes、虚拟机和裸金属。是什么阻碍了企业实现应用程序现代化呢?企业一贯支持 DevOps 原则,但许多企业仍然发现很难放弃单体应用程序架构。做出重大改变,比如采用微服务、容器原创 2022-02-18 05:00:00 · 612 阅读 · 0 评论 -
Kubernetes 学习总结(21)—— 深入理解 Kubernetes 中的 DeamonSet
概述DeamonSet 可以理解为特殊的 ReplicaSet, 即确保每个节点只运行一个 pod 副本的 pod Set,DaemonSet确保全部节点上运行一个 Pod 的副本。 当有节点加入集群时, 也会为他们新增一个Pod。 当有节点从集群移除时,这些 Pod 也会被回收。删除 DaemonSet 将会删除它创建的所有 Pod。即单实例,每个节点只跑一个pod。应用场景在每个 Node上运行一个 GlusterFS 存储或者 Ceph 存储的 Daemon 进程 在每个 Node..原创 2022-02-17 06:30:00 · 1257 阅读 · 0 评论 -
Kubernetes 学习总结(20)—— Kubernetes 与微服务和容器之间是什么关系?
什么是微服务?什么是微服务?你应该使用微服务吗?微服务与容器和 Kubernetes 有什么关系?从根本上讲,微服务只是一个运行在服务器或虚拟计算实例上并响应网络请求的计算机程序。这与典型的 Rails/Django/Node.js 应用程序有何不同?它根本上没有什么不同。事实上,您可能会发现您的组织中已经部署了十几个微服务。没有任何新的神奇技术使您的应用程序有资格称为微服务。微服务不是由它的构建方式来定义的,而是由它如何变成更通用的系统或解决方案来定义的。那么是如何使服务成为微服务呢?一般来说,微服务原创 2022-02-11 11:16:28 · 551 阅读 · 0 评论 -
Kubernetes 学习总结(19)—— Kubernetes 集群管理平台如何选择?Rancher vs KubeSphere
前言Kubernetes(K8s)集群管理平台都是基于 Kubernetes 提供功能,可以说他们是在 K8s 的基础上封装了一层更为友好的操作方式。他们都是为了降低 k8s 集群运维复杂度,降低运维成本,使开发者可以尽快上手、部署服务。目前主流的 Kubernetes 集群管理平台就是 Kubesphere 和 Rancher,它们都是基于 K8s 提供功能,但形态有很大不同,那么我们该如何在他们之间进行抉择呢?Rancher介绍Rancher 是一个开源的企业级容器管理平台。...原创 2022-02-09 14:52:27 · 6175 阅读 · 2 评论 -
Kubernetes学习总结(18)—— Kubernetes 容器网络
前言在 Kubernetes中要保证容器之间网络互通网络至关重要。Kubernetes本身并没有实现容器网络而是通过插件化的方式自由接入,容器网络接入需要满足如下基本原则:pod 无论运行在任何节点都可以互相直接通信,而不需要借助 NAT 地址转换实现。 node 与 pod 可以互相通信,在不限制的前提下,pod 可以访问任意网络。 pod 拥有独立的网络栈,pod 看到自己的地址和外部看见的地址应该是一样的,并且同个 pod 内所有的容器共享同个网络栈。容器网络基础一个 Li..原创 2022-01-18 11:04:36 · 385 阅读 · 0 评论 -
Kubernetes学习总结(17)—— Kubernetes 快速入门需要掌握的知识点总结
一、DockerDocker 是基于操作系统的沙盒技术,使得用户更简单和完整的去打包自己的应用。docker 底层是基于 Linux 的操作系统级别的虚拟化技术 LXC 实现;LXC 是通过 CGroup 实现了虚拟化资源管理,用来保证应用资源的隔离和应用系统资源的限制;服务器运行了多个服务,这些服务之间是可以互相影响的,其中的一个服务可以查看另外一个服务,这些是我们不愿意看到的,我们更希望同一台机器运行的服务能够完全隔离,互不影响就像运行在多台机器上一样。而 Linux 为我们提供了 NameSpac原创 2022-01-06 10:52:48 · 1281 阅读 · 0 评论 -
Kubernetes学习总结(16)—— Kubernetes 实战之部署 Redis 集群
一、问题分析本质上来说在 k8s 上部署一个 redis 集群和部署一个普通应用没有什么太大的区别,但需要注意下面几个问题: Redis 是一个有状态应用:这是部署 redis 集群时我们最需要注意的问题,当我们把 redis 以 pod 的形式部署在 k8s 中时,每个 pod 里缓存的数据都是不一样的,而且 pod 的 IP 是会随时变化,这时候如果使用普通的 deployment 和 service 来部署 redis-cluster 就会出现很多问题,因此需要改用 StatefulSet原创 2022-01-04 11:09:11 · 2633 阅读 · 5 评论 -
Kubernetes学习总结(15)—— Kubernetes 实战之部署 Mysql 集群
前言一般情况下 Kubernetes 可以通过 ReplicaSet 以一个 Pod 模板创建多个 pod 副本,但是它们都是无状态的,任何时候它们都可以被一个全新的 pod 替换。然而有状态的 pod 需要另外的方案确保当一个有状态的 pod 挂掉后,这个 pod 实例需要在别的节点上重建,但是新的实例必须与被替换的实例拥有相同的名称、网络标识和状态。这就是 Statefulset 管理 pod 的手段。对于容器集群,有状态服务的挑战在于,通常集群中的任何节点都并非100%可靠的,服务所需的资源也会动原创 2022-01-04 10:36:06 · 735 阅读 · 0 评论 -
Kubernetes学习总结(14)—— Kubernetes 实用命令总结
一、Pods1、 Get all pods in the current namespacekubectl get pods# Get pods in all namespaceskubectl get pods --all-namespaces# Get pods with more detailskubectl get pods -o wide# Get the yaml for a podkubectl get pod <pod> -o yaml# Inspect原创 2021-12-22 11:02:14 · 1322 阅读 · 0 评论 -
Kubernetes学习总结(13)—— Kubernetes 各个组件的概念
NodeNode 很好理解,就是服务实际运行的实例, 可以是一台物理机, 也可以是一台 VM 虚拟机。Poddocker 我们都知道是容器,而 Pod 其实就类似于 docker-composer , 多个的相关联的容器组成了一个 Pod. 比如有一个 nginx 容器和一个 php-fpm 的容器, 他们两个就可以组合为一个Pod。在同一个 Pod 中, 不同容器共享网络栈与存储卷。也就是说,nginx 访问 php-fpm 可以直接使用 localhost:9000 即可, 也就..原创 2021-12-14 13:44:06 · 284 阅读 · 0 评论 -
Kubernetes学习总结(12)—— 学习 kubernetes 的10个技巧或建议
一、学 GO 语言Kubernetes是基于 GO 编写的,所有的组件都是基于 GO 编写的,kubernetes甚至使用GO编写了一个客户端。学习使用 GO 语言编写的 Kubernetes 客户端并在 Kubernetes 中使用它,这是我对所以使用 Kubernetes 集群的朋友提出的最大的建议。二、使用探针来检测应用的状态在Kubernetes中支持配置探针。kubelet使用探针来确定pod和应用程序是否健康。这里提供了两种类型来实现这一功能,Readiness探针和Liveines原创 2021-12-09 10:17:43 · 436 阅读 · 0 评论 -
Kubernetes学习总结(11)—— Kubernetes Pod 到底是什么?
前言【译】What are Kubernetes Pods Anyway?最近看到了一条关于Kubernetes Pods的推特,来自了不起的Amy Codes(我真的希望这是她的真名):虽然不是100%准确(容器并不是一个真正的东西。我们将在稍后讨论这个东东)不过它确实指出了一个令人惊奇的事实。看来确实有必要探讨一下pod和容器到底是什么。关于Pods,Kubernetes文档提供了对Pods最好、最完整的解释,但它是用非常一般的意义编写的,使用了很多术语。但我还是建议你好好读读它,因为它比我转载 2021-12-09 09:57:22 · 327 阅读 · 0 评论 -
Kubernetes学习总结(10)—— 何为云原生,与 kubernetes 是什么关系
一、何为云原生1.1、云原生概念为什么会产生云原生?在传统的模式下,我们更多的是创建一个较大的应用,对于它的创建、运行、升级、维护都是比较痛苦的事情,而当下云计算或是云的概念大家都已经不再陌生(谁还没一台云主机服务器呀,用于创建自己的博客或是科学上网等等),因为现在有很多的机会让我们接触到公有云(阿里云/腾讯云等)或是私有云,那我们对于应用的管理方式是不是也应该有一种当下的方式,我们就称其为云原生的方式。因为云技术在不断发展的情况下,逐渐成熟,也促进很多的技术的商品化,层次化,我们不需要自建机房,可原创 2021-11-30 11:42:43 · 1106 阅读 · 0 评论 -
Kubernetes学习总结(9)—— 基础架构的未来是 K8s,那么 K8s 的未来在何方?
随着容器技术大行其道,应用的复杂性只增不减,开发者们开始广泛使用更先进的工具,比如 Kubernetes。目前 Kubernetes 已经不年轻了,逐渐开始 boring,你可能会想问 Kubernetes 之后还有什么令人兴奋的新技术。但云计算是一个快速发展的领域,不太容易精准预测下一个令人兴奋的新技术,不如我们将目光聚焦到目前云计算没有完全覆盖的细分领域。微型虚拟机 (MicroVM)在 Kubernetes 之后,有一个前景广阔的云技术可能会被广泛接受,即微型虚拟机 (MicroVM)。微型虚转载 2021-11-26 10:00:34 · 506 阅读 · 0 评论 -
Kubernetes学习总结(8)—— Kubernetes Pod 资源管理 和 Pod 服务质量
一、Pod 资源管理1.1、resource 的定义容器运行过程中需要分配所需的资源,如何与 cggroup 联动配合呢?答案是通过定义resource来实现资源的分配,资源的分配单位主要是 cpu 和 memory,资源的定义分两种:requests 和 limits,requests 表示请求资源,主要用于初始 kubernetes 调度 pod 时的依据,表示必须满足的分配资源;limits 表示资源的限制,即 pod 不能超过 limits 定义的限制大小,超过则通过 cggroup 限制.原创 2021-11-25 10:22:36 · 2506 阅读 · 0 评论 -
Kubernetes学习总结(7)——学习 Kubernetes 的 Pod
前言kubernetes中的基础概念概念和核心概念,基础概念包括:namespace,labels,annotations,pods,volumes等;核心概念包含kubernetes中各种controller,包含以下几种:应用副本控制器有:Deployments,ReplicaSets,DaemonSets,StatefulSets; 批处理任务控制器Jobs和CronJob 存储控制器PersistentVoloume,PersistentVolumeClaim,StorageClass原创 2021-11-24 15:34:31 · 897 阅读 · 0 评论