zoukankan      html  css  js  c++  java
  • docker集群管理之kubernetes

    一、简介

      kubernetes又叫做k8s,是Google开发的一款开源的docker集群管理工具,在这里对它的“发家史”,我不做过多的阐述,有时间大家可以自己去百度一下;

      下面我要讲的就是容易混淆的部分(当然搭建的过程也会简单的阐述),我研究的就是一个单间的集群环境,如果大家想变成高可用的话,请百度^_^

    二、集群的搭建

      我使用的二进制包进行的安装,前提是需要去官网上下载二进制包,下载的包名称以及地址截图如下(下载那一个包就OK了):

      部署分布如下:

    manager kube-apiserver、kube-controller-manager、kube-scheduler、etcd 192.168.112.116
    node1 kubelet、kube-proxy 192.168.112.117
    node2 kubelet、kube-proxy 192.168.112.118

      

      1、manager端的安装(kube-apiserver、kube-controller-manager、kube-scheduler、etcd)

       kube-apiserver: 入口接口,node节点的kubelet和kube-proxy直接连接这个服务监听的IP和端口

          kube-scheduler: 先看这个服务,它的作用是调度,顾名思义就是创建容器、删除容器时使用的

       kube-controller-manager: 这个是管理服务,创建好容器之后,需要管理,就是它来做了

          etcd:  你创建的容器或者其它的一些信息、数据、以及调度的信息都是存放在这个服务下的,你可以把它当做一个数据库

          好了,基本的概念都懂了,那就开始安装吧!

       我以kube-apiserver为例,其它的都是大同小异,最终服务用systemd去管理,我把二进制包和配置文件都放在了/opt/kubernetes/{bin,cfg}目录下了,请看截图:

           

      

       2、node端的安装(kubelet、kube-proxy)

          以kubelet为例,截图如下:

            

      

    三、成功的标志

      搭建成功之后,在manager端可以通过kubectl get node查看集群状态,截图如下:

      

    四、易混淆点

      先说k8s里面有几个名称概念,分别为rc、rs、deployment、pod、container;

      pod: 它的作用是管理容器container

      rc: 全称叫做Replication Controller;它的主要作用就是管理一组相关联的pod,意思就是说管理你在rc的yaml文件中定义的

         replicas副本数量,也就是replicas个pod

      rs: 全称叫做replica set,它是rc的升级版,主要就是升级了selector,可以以集合的形式书写

      deployment: 它也是用以管理pod的,这个做的更改就比较大了,其中对我来说比较有用的是哪个回滚操作,对于rc来说,如果

        部署完毕是没法回滚的,但是deployment缺可以;使用rollout undo去完成

    五、日志和持久化

      我感觉对于运维来说搭建好容器之后,容器里面的数据持久化和采集容器内的日志是两个点,采集日志的话,大家可以参考网上

      的EFK实例,后期我也会搭建一套,到时候再写博客,持久化那块大家可以使用集中式存储,然后挂载到本地系统,运行容器的时候

      加上-v再挂载到容器内部,当然了,k8s在运行pod的时候,就可以在yaml文件中加上这一项

    六、给出一张最近研究的最近k8s架构图(后续会慢慢讲解)

      

     七、几种service访问形式

      

    八、总结

      说到这里,想必大家对k8s应该有个概括性的认识了,可以确定的是,在企业中,k8s用到比较多,swarm集群管理基本上没有人用了

      生产环境的话,我们需要搭建高可用、分布式的集群环境,这样才能保证安全性,后面有时间的话,我会研究一下k8s HA,跟大家一块再探讨!

      

      

      

  • 相关阅读:
    激活
    年龄校验,精确到日
    腾讯消息队列CMQ一键化部署脚本
    腾讯消息队列CMQ部署与验证
    蓝鲸6.0.1部署
    docker离线安装
    蓝鲸平台开启consul.conf UI界面
    基于docker一键化部署LNMP环境
    阿里云镜像上传打包
    腾讯蓝鲸平台部署[5.1.29版本]
  • 原文地址:https://www.cnblogs.com/madq-py/p/9305327.html
Copyright © 2011-2022 走看看