CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)

1、概述

Kubernetes 官方自己就提供了一个管理集群的 Dashboard 插件,可是官方的 Dashboard 插件仍是有一些局限性,近日360开源了内部使用的 Kubernetes Dashboard 插件:Wayne。 Wayne 是一个通用的、基于 Web 的 Kubernetes 多集群管理平台。经过可视化 Kubernetes 对象模板编辑的方式,下降业务接入成本, 拥有完整的权限管理系统,适应多租户场景,是一款适合企业级集群使用的发布平台。前端

Wayne 已大规模服务于 360 搜索,承载了公司绝大部分业务,稳定管理了上万个容器。python

命名的起源:360 搜索私有云团队多数项目命名都来源于 DC 漫画的角色,Wayne 也不例外,Wayne 是声名显赫的超级英雄蝙蝠侠 Bruce Wayne 的名字。mysql

架构设计

总体采用先后端分离的方案,其中前端采用 Angular 框架进行数据交互和展现,使用Ace编辑器进行 Kubernetes 资源模版编辑。后端采用 Beego 框架作数据接口处理,使用 Client-go 与 Kubernetes 进行交互,数据使用 MySQL 存储。linux

CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)

特性

  • 基于 RBAC(Role based access control)的权限管理:用户经过角色与部门和项目关联,拥有部门角色容许操做部门资源,拥有项目角色容许操做项目资源,更加适合多租户场景。
  • 简化 k8s 对象建立:提供基础 k8s 对象配置文件添加方式,同时支持高级模式直接编辑 Json/Yaml文件建立 k8s 对象。
  • LDAP/OAuth 2.0/DB 多种登陆模式支持:集成企业级 LDAP 登陆及 DB 登陆模式,同时还能够实现 OAuth2 登陆。
  • 支持多集群、多租户:能够同时管理多个 Kubernetes 集群,并针对性添加特定配置,更方便的多集群、多租户管理。
  • 提供完整审计模块:每次操做都会有完整的审计功能,追踪用于操做历史,同时支持用户自定义 webhook。
  • 提供基于 APIKey 的开放接口调用:用户可自主申请相关 APIKey 并管理本身的部门和项目,运维人员也能够申请全局 APIKey 进行特定资源的全局管理。
  • 保留完整的发布历史:用户能够便捷的找到任何一次历史发布,并可轻松进行回滚,以及基于特定历史版本更新 k8s 资源。
  • 具有完善的资源报表:用户能够轻松获取各项目的资源使用占比和历史上线频次(天级)以及其余基础数据的报表和图表。
  • 提供基于严密权限校验的 web shell:用户能够经过 web shell 的形式进入发布的 Pod 进行操做,自带完整的权限校验。
  • 提供站内通知系统:方便管理员推送集群、业务通知和故障处理报告等。

二 、Docker安装

# 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加Docker软件包源
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

# 更新yum包索引
yum makecache fast

# 安装Docker CE
yum install docker-ce
# 启动

systemctl start docker
systemctl enable docker

# 卸载
yum remove docker-ce
rm -rf /var/lib/docker

三 、docker-compose安装

yum install python-pip -y
pip install pip --upgrade
pip install docker-compose

4、wayne安装

git clone https://github.com/Qihoo360/wayne.git
cd wayne/
docker-compose up -d mysql
vim /app/wayne.conf
DBName = wayne
DBTns = tcp(172.16.8.200:3306)
DBUser = root
DBPasswd = root

docker run --rm  -e GOPATH=/go -v /app/wayne.conf:/opt/wayne/conf/dev.conf -p 8080:8080 360cloud/wayne /opt/wayne/backend apiserver

http://172.16.8.200:8080
用户/密码: admin/admin
CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)
在左侧菜单中点击集群 -> 列表 -> +建立集群,能够新建一个集群:
CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)
CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)
名字随便填写便可,Master填写集群的apiserver地址,而后下面的KubeConfig是最重要的,若是咱们常常使用 kubectl 工具的话就应该知道这个工具的配置文件其实就是一个KubeConfig,咱们只须要把须要管理的集群的KubeConfig文件复制到这里便可,默认路径是~/.kube/config文件,建立完成后就能够看到添加的集群信息了:
CentOS7.5 Qihoo360/wayne部署(Dashboard 管理K8S集群)git

相关文章
相关标签/搜索