KubeOperator - 从这里开启您的 Kubernetes 之旅

发布时间:2020-08-01 22:59:26 作者:wx59a2c7470be97
来源:网络 阅读:258

项目地址 https://github.com/KubeOperator/KubeOperator

KubeOperator简介

什么是 KubeOperator?

KubeOperator 是一个开源项目,在离线网络环境下,通过可视化 Web UI 在 VMware、Openstack 或者物理机上规划、部署和运营生产级别的 Kubernetes 集群。KubeOperator 是 Jumpserver 明星开源团队在 Kubernetes 领域的的又一全新力作。

KubeOperator - 从这里开启您的 Kubernetes 之旅

注: KubeOperator 已通过云原生基金会(CNCF)的 Kubernetes 软件一致性认证。

KubeOperator 的整体架构

KubeOperator 使用 Terraform 在 IaaS 平台上自动创建主机(用户也可以自行准备主机,比如物理机或者虚机),通过 Ansible 完成自动化部署和变更操作,支持 Kubernetes 集群 从 Day 0 规划,到 Day 1 部署,到 Day 2 运营的全生命周期管理。

KubeOperator - 从这里开启您的 Kubernetes 之旅

KubeOperator 的技术优势

KubeOperator 的功能列表

KubeOperator - 从这里开启您的 Kubernetes 之旅

具体版本路线图请参考:Roadmap

KubeOperator 的主要概念

部署模型

KubeOperator 支持两种类型的 K8s 集群部署,一种是一主多节点类型,另外一种是多主多节点类型。

一主多节点类型适用于开发和测试环境,生产环境请使用多主多节点类型。

部署模式

KubeOperator 支持两种部署模式,一种是手动部署,一种是自动部署。

部署计划(Deploy Plan)

在自动部署模式下,部署计划定义了 K8s 集群的部署细节,包括其部署模型、集群所在的区域、可用区、节点大小类型等。

区域(Region)和可用区(AZ)

区域(Region)和可用区(AZ)这两个术语来自公有云。每个区域完全独立。每个可用区完全隔离,但同一个区域内的可用区之间使用低时延链路相连。区域和可用区之间的关系如下图所示。

KubeOperator - 从这里开启您的 Kubernetes 之旅

对于公有云厂商提供的K8s 服务,master 节点由公有云厂商管理并维护,其 3 个master 节点会分布在同个区域下面的 3 个不同可用区上面,实现真正的高可用。

KubeOperator 借鉴公有云厂商的思路和概念,并应用到 VMware 和 Openstack 等私有云平台上面。例如,在 VMware 云平台下,区域对应为 Datacenter,可用区对应于 cluster,或者 cluster 下面的 resource pool。

注:vSAN 集群不能被多个 vSphere 集群共享,所以 3 个 vSphere 集群,持久化存储仅支持集中存储。 具体请参考:https://docs.vmware.com/en/VMware-Enterprise-PKS/1.5/vmware-enterprise-pks-15/GUID-vsphere-persistent-storage.html

Kubernetes 离线安装包

KubeOperator 提供完整的离线 Kubernetes 安装包,每个安装包会被构建成一个独立容器镜像供 KubeOperator 使用,离线安装包中包括以下三种内容:

Kubernetes 离线安装包具体信息请参考工程:K8s-package。以 Kubernetes 离线包 v1.15.4 为例,其包括的内容如下:

Kubenetes 核心组件

分类 组件名称 版本
核心 kubernetes 1.15.4
核心 etcd 3.3.10
核心 docker docker-ce-18.09.9

Kubenetes 附属组件(镜像)

分类 组件名称 版本
网络 quay.io/coreos/flannel v0.11.0-amd64
网络 calico/node v3.7.3
网络 calico/cni v3.7.3
网络 calico/kube-controllers v3.7.3
网络 docker.io/coredns/coredns 1.6.0
网络 docker.io/traefik v1.7.11
网络 f5networks/K8s-bigip-ctlr 1.9.2
存储 quay.io/external_storage/nfs-client-provisioner v3.1.0-K8s1.11
监控 docker.io/grafana/grafana v1.7.11
监控 quay.io/prometheus/alertmanager v0.15.2
监控 quay.io/prometheus/node-exporter v1.7.11
监控 quay.io/prometheus/prometheus v2.4.3
监控 quay.io/prometheus/pushgateway v0.5.2
监控 quay.io/coreos/kube-state-metrics v1.4.0
Dashboard kubernetesui/dashboard v2.0.0-beta4
Dashboard kubernetesui/metrics-scraper v1.0.1
工具 gcr.io/google-containers/pause-amd64 3.1
工具 docker.io/registry 2
工具 docker.io/konradkleine/docker-registry-frontend v2
工具 gcr.io/kubernetes-helm/tiller v2.15.0
工具 quay.io/coreos/configmap-reload v0.0.1
工具 docker.io/appropriate/curl edge
工具 weaveworks/scope 1.11.5
工具 quay.io/comcast/kuberhealthy v1.0.2

RPM 包(基于 CentOS 7.6 Minimal 及以上)

分类 组件名称
RPM dnsmasq
RPM chrony
RPM ntpdate
RPM nfs-utils
推荐阅读:
  1. PyQt5——窗口绘图类控件
  2. python 爬虫如何使用代理IP

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

kubeoperator k8s kubernetes

上一篇:Idea+Centos+hadoop-2.7.3源码环境搭建

下一篇:soot——相关资源

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》