" name="sm-site-verification"/>
侧边栏壁纸
博主头像
PySuper 博主等级

千里之行,始于足下

  • 累计撰写 206 篇文章
  • 累计创建 14 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Kubernetes入门(一)-- 基本概念

PySuper
2020-06-07 / 0 评论 / 0 点赞 / 29 阅读 / 0 字
温馨提示:
本文最后更新于2024-05-28,若内容或图片失效,请留言反馈。 所有牛逼的人都有一段苦逼的岁月。 但是你只要像SB一样去坚持,终将牛逼!!! ✊✊✊

Kubernetes,简称K8S(K-8个字母-S)

Kubernetes系统架构

Kubernetes概念

  • 什么是k8s:
    • 一组服务器集群
    • k8s管理的是集群节点上的容器
  • k8s功能:
    • 自我修复:当某个服务器或容器出现故障无法运行时,自动的再其他节点上创建新的容器
    • 弹性伸缩:实时根据服务器的并发情况,增加或缩减容器数量
    • 自动部署:利用yaml文件实现自动部署
    • 回滚:出现故障时,很方便的回滚到上一个版本
    • 服务发现和负载均衡:自动就实现了负载均衡
    • 机密和配置共享管理:
    • 存储编排:
    • 批处理:
  • k8s集群分为两类节点
    • master node:主节点
    • worker node:工作节点
  • master 节点上的组件
    • apiserver:接收客户端操作k8s的指令
    • schduler:从多个worker node中选取一个来启动服务
    • controller manager:向worker node的kubelet发送指令的
  • node节点上的组件
    • kubelet:向docekr发送指令,管理docker容器
    • kubeproxy:管理docker容器的网络
  • etcd数据库
    • k8s的数据库
    • 用来注册节点、服务、记录账户…
    • 可更换其他数据库(MySQL),需要额外配置

Kuberbnetes 核心概念

  • Pod(容器组)
    • 最小部署单元
    • 一组容器的组合
      • 一个pod中可以有一个或多个容器
      • pod又称为容器组
    • 一个pod中的容器共享网络命名空间
    • pod是短暂的
  • Controllers(控制器):控制pod,启动、停止、删除、、、
    • ReplicaSet:确保预期的pod副本数量
    • Deployment:无状态应用部署
    • StatefulSet:有状态应用部署
    • DaemonSet:确保所有Node运行同一个pod
    • Job:一次性任务
    • Cronjob:定时任务
  • service(服务)
    • 将一组pod关联起来,提供一个统一的入口
    • 即使pod地址发生改变,这个同意入口也不会变化,可以保证用户访问不受影响
    • 防止pod失联
    • 定义一组pod的访问策略
  • Label(标签)
    • 一组pod有一个统一的标签
    • service是通过标签和一组pod进行关联的
  • Namespace(名称空间)
    • 用来隔离pod的运行环境(默认情况下,pod是可以互相访问的)
    • 使用场景
      • 为不同的公司提供隔离的pod运行环境
      • 为开发环境、测试环境、生产环境分别准备不同的名称空间,进行业务隔离

K8S中启动一个容器的步骤

不是直接一条命令就结束的!

  • apiserver
  • kubelet
  • master
  • worker
  • pod
  • docker
0

评论区