企业级Kubernetes管理平台Wayne功能特性介绍
作者:kl 发布时间:2021-11-05 08:58:33
前言碎语
今天博主分享一个Kubernetes集全管理软件,也就是Kubernetes web ui。是360团队开源的一款产品,Wayne 是一个通用的、基于 Web 的 Kubernetes 多集群管理平台。通过可视化 Kubernetes 对象模板编辑的方式,降低业务接入成本, 拥有完整的权限管理系统,适应多租户场景,是一款适合企业级集群使用的发布平台。Wayne已大规模服务于360搜索,承载了内部绝大部分业务,稳定管理了近千个业务,上万个容器,运行了两年多时间,经受住了生产的考验。
github:https://github.com/Qihoo360/wayne
Wayne功能特性
基于 RBAC(Role based access control)的权限管理:用户通过角色与部门和项目关联,拥有部门角色允许操作部门资源,拥有项目角色允许操作项目资源,更加适合多租户场景。
简化 Kubernetes 对象创建:提供基础 Kubernetes 对象配置文件添加方式,同时支持高级模式直接编辑 Json/Yaml文件创建 Kubernetes 对象。
LDAP/OAuth 2.0/DB 多种登录模式支持:集成企业级 LDAP 登录及 DB 登录模式,同时还可以实现 OAuth2 登录。
支持多集群、多租户:可以同时管理多个 Kubernetes 集群,并针对性添加特定配置,更方便的多集群、多租户管理。
提供完整审计模块:每次操作都会有完整的审计功能,追踪用于操作历史,同时支持用户自定义 webhook。
提供基于 APIKey 的开放接口调用:用户可自主申请相关 APIKey 并管理自己的部门和项目,运维人员也可以申请全局 APIKey 进行特定资源的全局管理。
保留完整的发布历史:用户可以便捷的找到任何一次历史发布,并可轻松进行回滚,以及基于特定历史版本更新 Kubernetes 资源。
具备完善的资源报表:用户可以轻松获取各项目的资源使用占比和历史上线频次(天级)以及其他基础数据的报表和图表。
提供基于严密权限校验的 Web shell:用户可以通过 Web shell 的形式进入发布的 Pod 进行操作,自带完整的权限校验。
提供站内通知系统:方便管理员推送集群、业务通知和故障处理报告等。
架构设计
整体采用前后端分离的方案,其中前端采用 Angular 框架进行数据交互和展示,使用Ace编辑器进行 Kubernetes 资源模版编辑。后端采用 Beego 框架做数据接口处理,使用 Client-go 与 Kubernetes 进行交互,数据使用 MySQL 存储。
Kubernetes方式安装注意点
Kubernetes方式安装文件:https://github.com/Qihoo360/wayne/tree/
1.如果是自由数据库,配置链接设置dbname就好,不需要自己创建数据库。如果是已存在的db,Wayne就不会给初始化数据了
2.configMap.yaml中的配置一点是全部配置,如果只配置部分自己的配置,wayne就不会读取你的配置,默认runmode就是dev,会抛如下异常:
来源:http://www.kailing.pub/article/index/arcid/223.html
猜你喜欢
- 一、实现方式@ConfigurationProperties 注解(最好加上前缀prefix=“person”,标明是和配置文件中哪个开头的
- 1.编写核心类MainApp:package com.yiidian.gson;import com.google.gson.Gson;im
- 本文实例展示了Activiti流程图查看的实现方法,具体步骤如下所示:1、测试用例查看图片代码如下:public void viewImag
- 问题情况:在使用 @TableId(type = IdType.AUTO)之后添加的id数字特别大原因:因为在第一次使用的时候没有加注解 所
- 本文主要介绍了spring-boot-maven-plugin报红解决方案,亲测有效,具体如下:<?xml version="
- 本文实例讲述了Java泛型的使用限制。分享给大家供大家参考,具体如下:一 什么情况下不能使用泛型1 不能使用泛型的形参创建对象。T o=ne
- spring-MVC实现简单的登录功能,供大家参考,具体内容如下今天我学习了spring-MVC实现简单的登录功能,本篇博客就讲解如何使用s
- 问题项目是springcloud项目,在maven install某一个项目时报错:程序包com.example.commons.appli
- 继承和多态派生类具有基类所有非私有数据和行为以及新类自己定义的所有其他数据或行为,即子类具有两个有效类型:子类的类型和它继承的基类的类型。对
- idea删除模块后重新创建显示该模块已经被注册原因:注册信息没有删除干净解决方案:找到gradle.xml,modules.xml,work
- Thumbnailator 是一个优秀的图片处理的Google开源Java类库。处理效果远比Java API的好。从API提供现有的图像文件
- 一、背景在开发过程中,我们的软件会面对不同的运行环境,比如开发环境、测试环境、生产环境,而我们的软件在不同的环境中,有的配置可能会不一样,比
- 第一节:服务端初始化首先看下在我们用户代码中netty的使用最简单的一个demo://创建boss和worker线程(1)EventLoop
- mybatis-plus 查询传入参数Map,返回List<Map>原因有时实体类属性不够用,又不想写自定义VO了,所以用map
- 一、负载均衡负载均衡(Load Balance): 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞
- 本文实例讲述了java实现递归文件列表的方法。分享给大家供大家参考。具体如下:FileListing.java如下:import java.
- 本文讲述了WinForm中实现拖拽效果的功能,即在WinForm中有一个Button,可以实现拖拽这个Button到目标位置后生成一个该控件
- JavaScript 一个最简单的事件模型,需要有事件绑定与触发,还有事件删除。var eventModel = { list: {}, b
- IDEA安装阿里巴巴编码规范插件的两种方式:在线安装和离线安装。1.在线安装:打开file-settings-Plugins.如图:搜索到点
- 事发地原默认的Feign是使用URLConnector进行通信的,当换为okhttp时,直接引入包及配置以下内容根本不生效,还是走原生的。f