#yyds干货盘点#k8s进阶知识概述

Posted 极客开发者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#k8s进阶知识概述相关的知识,希望对你有一定的参考价值。

1. 概述

在前面的文章中,我们已经快速入门了 k8s 的集群的基础知识,并且基于 kubeadm 工具搭建了虚拟的 k8s 集群,但对于强大的 k8s 来说,知识冰山一角,在本系列中我们将继续探讨 k8s 集群的进阶知识。

2. 为什么要用 k8s ?

docker 容器封装应用程序的意义在于:docker引擎统一了基础的设施环境、统一了程序打包(装箱)的方式,也统一了部署(运行)的方式。从程序开发到上线,开发者不再关注基础环境的差异,使得开发者可以将更多的时间花在业务逻辑上。

不过,单独使用docker,你会发现存在以下问题:

  • 单机使用,无法有效集群

  • 随着容器数量上升,管理成本攀升

  • 没有有效的容灾/自愈机制

  • 没有预设编排模板,无法实现快速、大规模的容器编排

  • 没有统一的配置中心管理中心工具

  • 没有容器生命周期的管理工具

  • 没有图形化运维管理工具

......

因此,我们需要一套高效的容器编排的工具,基于Docker容器引擎的开源容器编排工具目前市场上主要有:docker-compose、docker-swarm、kubernetes(k8s),由于k8s强大的容器编排功能,以及活跃的社区支持,k8s已经成为了docker官方推荐的容器编排工具。当我们使用k8s来部署服务,就能做到以下的效果

  • 环境稳定:k8s有自动修复的功能,发现某些服务不正常,它会尝试自启
  • 服务不间断:及时是只运行的服务只有一个副本,在更新服务的时候,k8s也会新起好新的服务才会踢出旧版本的服务
  • 一次构建,多环境运行:只需要打包一次镜像,在多个环境不需要重新构建

3. 目标

本系列,我们的目标是抛弃 kubeadm 工具,手动从零 开发搭建 k8s 集群,并更系统地地深入学习 k8s 知识!

我们将部署5台主机,IP规划如下:

  • 10.4.7.200: 运维主机,Docker的私有仓库、k8s资源配置清单仓库、提供共享存储(NFS)、签发证书

  • 10.4.7.11: Proxy的L4、L7代理

  • 10.4.7.12: Proxy的L4、L7代理

  • 10.4.7.21: 控制节点、工作节点

  • 10.4.7.22: 控制节点、工作节点

实际上,k8s常见有三种部署方式

  • minikube 但节点微型k8s,一般仅仅用于学习、预览使用

  • 二进制安装部署,也是首选的安装方式

  • 使用kubeadm 进行部署,kubeadm 是k8s的快熟部署工具,操作简单快捷,建议你非常熟悉k8s的提前下使用这种方式

持续更新中,欢迎关注!

以上是关于#yyds干货盘点#k8s进阶知识概述的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#k8s资源清单常用参数

#yyds干货盘点#k8s中的核心组件

微服务架构 | 1. 微服务相关基础知识 #yyds干货盘点#

#yyds干货盘点#--k8s-存储

高频面试java高级进阶之锁?与CAS详解#yyds干货盘点#

#yyds干货盘点#快速搭建k8s集群