etcd-operator快速入门完全教程

  

操作符是指一类基于Kubernetes自定义资源对象(CRD)和控制器(控制器)的云原生拓展服务,其中CRD定义了每个运营商所创建和管理的自定义资源对象,控制器则包含了管理这些对象所相关的运维逻辑代码。

  

,

  

对于普通用户来说,如果要在k8集群中部署一个高可用的etcd集群,那么不仅要了解其相关的配置,同时又需要特定的etcd专业知识才能完成维护仲裁,重新配置集群成员,创建备份,处理灾难恢复等等繁琐的事件。
,

  

而在运营商这一类拓展服务的协助下,我们就可以使用简单易懂的YAML文件(同理参考部署)来声明式的配置,创建和管理我们的etcd集群、下面我们就来一同了解下etcd-operator这个服务的架构以及它所包含的一些功能。
,
 etcd-operator快速入门完全教程

  

,

  

目标

  

,

  
      <李>   

    了解etcd-operator的架构与CRD资源对象

      李   <李>   

    部署etcd-operator   李   <李>   

    使用etcd-operator创建etcd集群

      李   <李>基于etcd-operator备份和恢复etcd集群
    ,   

    服务架构

      
  

,

  

etcd-operator的设计是基于美丽的API扩展机制来进行拓展的,它为用户设计了一个类似于部署的控制器,只不过这个控制器是用来专门管理etcd这一服务的。

  

,

  

用户默认还是通过kubectl或UI来与美丽的API进行交互,只不过在这个k8集群中多了一个用户自定义的控制器(自定义控制器)、操作员控制器的服务是以Pod的方式运行在k8集群中的,同时这个服务也需要配置所需的RBAC权限(比如对吊舱,部署、体积等使用到的资源进行增删改查的操作),下面我们用一个简单的架构图来进行阐述:
,
 etcd-operator快速入门完全教程”> <br/>, </p>
  <h3> etcd-operator的自定义资源对象(CRD) </h3>
  <p>, </p>
  <p>在美丽中,所有自定义的控制器和其自定义的资源对象(CRD)都必须满足k8 API的规范(参考下图):</p>
  <p>, </p>
  <ul>
  <李>
  <p> <代码> apiVersion </代码>描述了当前自定义资源对象的版本号</p>
  李</>
  <李>
  <p> <代码> </代码>表类型示自定义资源对象的名称,用户可通过执行<代码> kubectl美元KIND_NAME> </代码来获取所创建的CRD对象</p>
  李</>
  <李>
  <p> <代码> </元数据代码>继承了原生美丽的元数据,用于添加标签,注释等元数据</p>
  李</>
  <李>
  <p> <代码>规范> </代码是用户可自定义设计的服务配置参数,如镜像版本号,节点数量,资源配置等等. . </p>
  李</>
  <李> <代码> </代码>状态包含了当前资源的的相关状态,每个操作员控制器可自定义地位所包含的信息,一般会选择添加如条件,updateTime和消息等一类的信息。<br/>, <br/> <img src=“   路径:& lt; full-oss-path>   ossSecret: & lt; oss-secret>   #区域和端点的细节,请参见https://www.alibabacloud.com/help/doc-detail/31837.htm   端点:& lt; endpoint>   

,

  

3 <强> EtcdRestore :<代码> EtcdRestore> etcdbackup 服务所创建的备份恢复到一个指定的etcd的集群。

etcd-operator快速入门完全教程