美文网首页
Kubernetes概述

Kubernetes概述

作者: reco171 | 来源:发表于2022-02-25 09:52 被阅读0次

     K8S是基于容器的集群管理平台,它的全称,是Kubernetes 。Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化服务发现和负载均衡、存储编排、自动部署和回滚、自动完成装箱计算、自我修复、密钥与配置管理。

    1. 与容器关系
       将Docker应用于具体的业务实现,存在容器编排、管理和调度等各个方面实现复杂。迫切需要一套管理系统,对Docker及容器进行更高级更灵活的管理。

    2. K8S主要有Master和Node节点组成。
      k8s集群组成图如下:


      image.png

      (1)Master(主节点): 控制 Kubernetes 节点的机器,也是创建作业任务的地方,包括Controller manager、Scheduler、API Server。
      1)Kubernetes Controller Manager(kube-controller-manager):Kubernetes里所有资源对象的自动化控制中心。内容包括Replication controller(复制控制器)等,其中Replication controller控制一个 pod 在集群上运行的实例数量。
      2)Kubernetes API Server(kube-apiserver):提供HTTP Rest接口的关键服务进程,是Kubernetes里所有资源的增、删、改、查等操作的唯一入口,也是集群控制的入口进程。
      3)Kubernetes Scheduler(kube-scheduler):负责资源调度(Pod调度)的进程。
      4)etcd是一个非常可靠的kv存储系统,常在分布式系统中存储着关键的数据。常见应用场景: 配置中心、分布式锁、 leader选举组件、服务注册与服务发现、消息订阅和发布。
      (2)Node(节点): 这些机器在 Kubernetes 主节点的控制下执行被分配的任务。
      1)Kubelet: 这个守护进程运行在各个工作节点上,负责获取容器列表,保证被声明的容器已经启动并且正常运行。
      2)Pod: 由一个或多个容器构成的集合,作为一个整体被部署到一个单一Node节点。同一个 pod 中的容器共享 IP 地址、进程间通讯(IPC)、主机名以及其它资源。Pod 将底层容器的网络和存储抽象出来,使得集群内的容器迁移更为便捷。
      3)Service(服务): 将服务内容与具体的 pod 分离。Kubernetes 服务代理负责自动将服务请求分发到正确的 pod 处,不管 pod 移动到集群中的什么位置,甚至可以被替换掉。

    3. 命令行配置工具
      kubectl: 这是 Kubernetes 的命令行配置工具。
      常用命令如下:

    #必须得指定namespace,因为系统中存在多个namespace
    #获取namespace下的pod列表,prophecis是namespace名
    kubectl get -n prophecis pod
    #查看所有服务是否正常Running,若异常通过kubectl describe及kubectl log查看异常原因
    #描述pod,metacontroller-0是pod名
    kubectl describe pod metacontroller-0 -n prophecis
    #获取pod日志,controlcenter-go-deployment-69d44b79cc-6fzhq是pod名
    kubectl logs controlcenter-go-deployment-69d44b79cc-6fzhq -n prophecis
    

    参考
    Kubernetes 是什么?
    10分钟看懂Docker和K8S

    相关文章

      网友评论

          本文标题:Kubernetes概述

          本文链接:https://www.haomeiwen.com/subject/xwsnhrtx.html