5 个重要的 Kubernetes 概念让学习变得简单

开始使用 Kube.NETes 并不容易 。本文将帮助您了解 Kubernetes 的一些最重要的概念 。每日分享最新,最流行的软件开发知识与最新行业趋势,希望大家能够一键三连,多多支持,跪求关注,点赞,留言 。
Kubernetes 是最流行的开源容器编排解决方案 。
开始使用 Kubernetes并不容易 。
本文将帮助您了解 Kubernetes 的一些最重要的概念 。
 

  1. 为什么我们需要容器编排?
  2. 什么是容器编排?
  3. 什么是 Kubernetes?
  4. Kubernetes 最重要的概念是什么?
    1. 什么是集群?
    2. 让我们部署一个微服务
    3. 什么是 Pod?
    4. 什么是副本集?
    5. 什么是部署?
    6. 快速回顾 - 部署与副本集
    7. 什么是服务?
  5. 下一步
1:为什么我们需要容器编排? 
大多数企业都在采用微服务架构 。
微服务提供了创新的灵活性 。
【5 个重要的 Kubernetes 概念让学习变得简单】然而,微服务并不是免费的 。我们没有部署几个应用程序,而是部署了数百个微服务 。这导致复杂性增加 。
容器可以帮助简化您的部署和可观察性挑战 。但是,在管理基础架构和部署方面仍然存在挑战 。示例:我想要 10 个微服务 A 容器实例,15 个微服务 B 容器实例,......等等多个微服务 。此外,我的微服务还需要一些其他功能 。一些典型特征包括:
 
  1. Auto Scaling - 根据需求扩展容器
  2. 服务发现- 帮助微服务找到另一个
  3. 负载均衡器- 在微服务的多个实例之间分配负载
  4. 自我修复- 进行健康检查并替换失败的实例
  5. 零停机部署- 无需停机即可发布新版本
2:什么是容器编排? 
容器编排解决方案提供了微服务架构所需的大部分技术特性 。您将能够创建一个包含多个 VM 实例的集群并将微服务部署到该集群 。容器编排解决方案将管理集群和部署 。
5 个重要的 Kubernetes 概念让学习变得简单

文章插图
3:什么是 Kubernetes?
有许多容器编排平台:Docker Swarm、Mesosphere 和 Kubernetes 等 。在过去的几年里,Kubernetes 已经成为容器编排领域的赢家 。
4:什么是最重要的 Kubernetes 概念?
假设您想使用 Kubernetes 建立一个微服务架构 。以下是工作流程的样子:
 
  1. 第 1 步:创建具有多个节点(或虚拟机)的容器编排的 Kubernetes 集群
  2. 第 2 步:部署和配置您的第一个微服务
  3. 第 3 步:部署和配置您的第二个微服务
 
现在让我们深入研究其中的每一个 。
4.1:什么是集群?
集群是一组虚拟机 。在集群中,有两种类型的节点:
 
  1. 主节点- 管理集群 。您将所有部署指令发送到主节点 。
  2. 工作节点- 所有微服务都在工作节点上运行 。
 
以下是一些重要的主节点(控制平面)组件:
 
  1. API Server - 处理 K8S 集群的所有通信(来自节点和外部)
  2. 调度程序- 决定 pod 的位置
  3. 控制管理中心- 管理部署和副本集
  4. etcd - 存储集群状态的分布式数据库
 
工作节点的工作是运行您的微服务 。此外,一个名为 Kubelet 的 Kubernetes 组件在每个 pod 上运行 。Kubelet 使工作节点能够与主节点通信 。
4.2:让我们部署一个微服务
假设我要部署微服务 A 的 V1 的 5 个实例 。发出创建部署并为其设置多个实例的命令类似于您在下面看到的:
**create deployment** hello-world-rest-api --image=in28min/hello-world-rest-api:0.0.1.RELEASE
scale deployment hello-world-rest-api --replicas=5
这会将具有 5 个实例的微服务 A 的 v1 部署到 Kubernetes 集群 。
在内部,Kubernetes 将创建
 
  1. 部署
  2. 一个 ReplicaSet 和
  3. 5个豆荚
 
为什么 Kubernetes 会这样做?
让我们深入挖掘 。
4.3: 什么是 Pod?
Pod 是 Kubernetes 中最小的可部署单元 。一个 pod 代表你的微服务的一个实例 。每个 Pod 都分配有一个临时IP 地址 。
如果我在 Kubernetes 集群中运行 10 个微服务 A 实例和 12 个微服务 B 实例,那么我总共将运行 10 + 12 = 22 个 Pod 。


推荐阅读