当前位置: 移动技术网 > IT编程>开发语言>Java > kubernetes初识

kubernetes初识

2020年07月19日  | 移动技术网IT编程  | 我要评论


       最近项目中使用到了kubernetes,把自己在使用的过程遇到的问题以及kubernetes相关组件的使用整理一下,争取每周分享一篇博客。同时也希望大佬们对文档的错误地方和不足之处,给出批评和建议。

1. kubernetes概述

         kubernetes是一个容器编排工具,相当于是管理容器的上层应用。像docker容器都是运行在物理机器或者虚拟机上的。对容器的管理需要人为管理,这样既不方便也不能充分的利用机器的资源,不能够物尽其用。而kubernetes可以更好的管理容器,合理的分配机器资源。

           一个K8s集群是由分布式存储(etcd)、服务节点和控制节点(Master)构成的。所有的集群状态都保存在etcd中,Master节点上则运行集群的管理控制模块。Node节点是真正运行应用容器的主机节点,在每个node节点上都会运行一个Kubelet代理,控制该节点上的容器、镜像和存储卷等

1.1 kubernetes核心组件

  • etcd:保存了整个集群的状态
  • apiserver:提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制
  • controller manager:负责维护集群的状态,比如故障检测、自动扩展、滚动更新等
  • scheduler:负责资源的调度,按照预定的调度策略将Pod调度到相应的机器上
  • kubelet:负责维护容器的生命周期,同时也负责Volume(CVI)和网络(CNI)的管理
  • Container runtime:负责镜像管理以及Pod和容器的真正运行(CRI)
  • kube-proxy:负责为Service提供cluster内部的服务发现和负载均衡
  • kube-dns:负责为整个集群提供DNS服务,进行服务发现
  • Ingress Controller:为服务提供外网入口
  • Heapster:提供资源监控
  • Dashboard:提供GUI

2. kubernetes简单架构图

      下面我简单的看一下kubernetes一个简单的架构图
在这里插入图片描述

master和node都是对应的物理机或者虚拟机

  • master

    master是kubernetes的管理者,相当于是整个集群的大脑。集群的所有操作都通过master来完成。master进行node的管理,监视每一个node的资源使用情况,根据资源的情况,对node上的容器进行管理。

  • node

    node是集群中启动容器的节点。一个node对应一个物理机或者虚拟机。每一个node上启动的容器都是通过master来调度的。

3. 使用kubernetes的优缺点

3.1 优点

  • 故障迁移:当某一个node节点关机或挂掉后,node节点上的服务会自动转移到另一个node节点上,这个过程所有服务不中断。这是docker或普通云主机是不能做到的

  • 资源调度:当node节点上的cpu、内存不够用的时候,可以扩充node节点,新建的pod就会被kube-schedule调度到新扩充的node节点上

  • 资源隔离:创建开发、运维、测试三个命名空间,切换上下文后,开发人员就只能看到开发命名空间的所有pod,看不到运维命名空间的pod,这样就不会造成影响,互不干扰。传统的主机或只有docker环境中,登录进去就会看到所有的服务或者容器,因为采用容器,进程之间互不影响。

  • 安全:不同角色有不同的权限,查看pod、删除pod等操作;RBAC认证增加了k8s的安全

  • 负载均衡:k8s可以更快的更新新版本,打包应用,更新的时候可以做到不用中断服务,服务器故障不用停机,从开发环境到测试环境到生产环境的迁移极其方便。

3.2 缺点

以下缺点是在实际使用中遇到的

  • 资源消耗严重:如果使用集群,势必需要多个物理机或者虚拟机,至少需要三个以上的机器(8c,16g),如果机器过少,部署kubernetes集群就需要耗掉的大半的资源。
  • 网络复杂:使用kubernetes,如果需要集群外部访问时,需要拥有一定的网络技术基础,才能够使网络通信达到最优。对于tcp长连接通信支持不是很友好。

4. 参考文档

https://www.cnblogs.com/cnblx/p/11653152.html.

https://kubernetes.io/zh/docs/home/.

本文地址:https://blog.csdn.net/youngZ_H/article/details/107427789

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网