K8S 入门

简介:K8S(Kubernetes)是Google使用GO语言开发的一个开源容器集群管理系统,用于管理云平台中多个主机上的容器化应用,部署应用简单且高效,它提供了资源调度、部署管理、服务发现、扩容缩容、监控及维护等一些列功能,支持一系列容器工具,如Docker。

1. 基本概念

  A. Pod:最小部署单元,一个Pod由一个或多个容器构成,Pod中容器共享存储和网络,在同一台Docker主机上运行,每个Pod都会包含一个"根容器",还会包含一个或者多个紧密相连的业务容器;

  B. Service:是一个应用服务抽象,定义了Pod逻辑集合和访问这个Pod集合的策略,Service代理Pod集合对外表现是为一个访问入口,分配一个集群IP地址,来自这个IP的请求将负载均衡转发后端Pod中的容器;

  C. Deployment:是一个更高层次的API对象,它管理ReplicaSets和Pod,并提供声明式更新等功能;

 

2. K8S架构

  A. K8S由Master节点和Node节点构成;

    master节点:是指集群控制节点,所有执行命令都是master节点上运行的,类似docker swarm中manager节点;

    node节点:是指集群工作负载节点,每一个node都会被master分配一些工作负载,当某个node宕机时,其上的工作负载会被master自动转移到其他节点上,类似docker swarm中worker节点;

  B. master节点:实现pod调度、弹性伸展、安全控制和系统监控及纠错等管理功能;

    kube-apiserver:提供http reset接口的服务进程,是k8s里所有资源CURD操作的唯一入口,也是集群控制的入口进程;

    kube-controller-manager:所有资源对象的自动化控制中心;

    kube-scheduler:负责Pod资源调度的进程;

  C. node节点:负责pod的创建、启动、监控、重启和销毁及负责均衡等

    kubelet:负责pod对应的容器的创建、启停等任务,同时配合master节点实现集群管理的功能;

    kube-proxy:实现K8S Service的通信与负载均衡机制;

    docker:docker引擎,负责本机的容器创建和管理工作;

 

可参考:Kubernetes官方文档

posted @ 2022-07-19 10:10  如幻行云  阅读(145)  评论(0编辑  收藏  举报