企业级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
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
springboot集成redis并使用redis生成全局唯一索引ID
![](https://img.aspxhome.com/file/2023/0/59020_0s.jpg)
java基于递归算法实现汉诺塔问题实例
Java设计模式之享元模式
Java实现新建有返回值的线程的示例详解
![](https://img.aspxhome.com/file/2023/0/61420_0s.jpg)
springSecurity之AuthenticationProvider用法解析
![](https://img.aspxhome.com/file/2023/9/64429_0s.png)
Java ==,equals()与hashcode()的使用
浅谈Spring @Async异步线程池用法总结
spring多数据源配置实现方法实例分析
使用EasyPoi轻松导入导出Excel文档的方法示例
![](https://img.aspxhome.com/file/2023/8/92638_0s.png)
手写redis@Cacheable注解 参数java对象作为key值详解
![](https://img.aspxhome.com/file/2023/8/83458_0s.png)
C#中使用强制类型实现字符串和ASCII码之间的转换
java迭代器原理及迭代map的四种方式
如何在IDEA中对 hashCode()和 equals() 利用快捷键快速进行方法重写
![](https://img.aspxhome.com/file/2023/5/91085_0s.png)
Java使用HttpUtils实现发送HTTP请求
![](https://img.aspxhome.com/file/2023/4/61034_0s.jpg)
C#中使用HttpPost调用WebService的方法
Spring SpringMVC在启动完成后执行方法源码解析
Winform跨线程操作的简单方法
Java如何在 Word 中设置上、下标
![](https://img.aspxhome.com/file/2023/2/77972_0s.png)
Java中比较抽象类与接口的异同
C#中添加窗口的步骤详解
![](https://img.aspxhome.com/file/2023/6/91256_0s.jpg)