Kubernetes的搭建与配置(二):部署 Wayne 用户界面
1、關于Wayne
簡介
GitHub:https://github.com/Qihoo360/wayne
Wayne是一個Kubernetes的可視化管理平臺,通過直觀的頁面操作便可完成Kubernetes中資源的創建、部署等操作。
采用微內核架構,通過插件化的方式將不同功能盡量的分離,更利于各種定制化功能的擴展。
在此基礎上,融入了部門、項目的概念,通過RBAC的方式細化了資源控制的權限,適合建立企業內部的私有云平臺。
功能特性
可視化操作:提供直觀、簡便的方式操作Kubernetes集群,減小學習成本,快速上線業務。
多樣的編輯模式:支持圖形化編輯,也支持Json、Yaml兩種高級定制化編輯模式。
微內核架構:采用可擴展的插件化方式開發,定制化選擇特性功能,更方便的集成符合企業需求的新功能。
多集群管理:可以同時管理多個Kubernetes集群,更方便地管理多個集群。
豐富的權限管理:將資源抽象化為部門、項目級別,角色的權限可以更細化的控制,適用于多部門、多項目的統一集中管理。
多種登錄模式:支持企業級LDAP登錄、支持OAuth2登錄,支持數據庫登錄多種模式。
完備的審計:所有操作都會有完整的審計功能,方便追蹤操作歷史。
開放平臺:支持APIKey開放平臺,用戶可自主申請相關APIKey并管理自己的項目。
多層次監控:提供多級別的監控統計信息,實時關注集群的運行狀態。
組件
Web UI: 提供完整的業務開發和平臺運維功能體驗。
Worker: 擴展一系列基于消息隊列的功能,例如 Audit 和 Webhooks 等審計組件。
項目依賴
Golang 1.9+(installation manual)
Docker 17.05+ (installation manual)
Bee (installation manual) (請務必使用鏈接版本,不要使用 beego 官方版本,存在一些定制)
Node.js 8+ and npm 5+ (installation with nvm)
MySQL 5.6+ (Wayne 主要數據都存在 MySQL 中)
RabbitMQ (可選,如需擴展審計功能,例如操作審計和 Webhooks 等,則需部署)
架構
項目整體采用前后端分離的方案實現。
前端采用Angular框架進行數據交互和展示,使用Ace編輯器進行Kubernetes資源模版編輯。
后端采用Beego框架做數據接口處理,持久層采用MySQL存儲,使用client-go與Kubernetes進行交互。
基于Kubernetes部署Wayne
安裝git
[root@k8s-master ~]# yum install -y git
安裝 docker-compose
[root@k8s-master ~]# yum -y install epel-release python-pip [root@k8s-master ~]# yum -y install pip install docker-compose
查看docker-compose版本
[root@k8s-master ~]# docker-compose --version
快速啟動
克隆代碼倉
[root@k8s-master ~]cd /etc/kubernetes
[root@k8s-master kubernetes]# git clone https://github.com/Qihoo360/wayne
啟動MySQL(可選)
如果沒有可用的 MySQL 服務,可以通過 docker-compose 快速創建:
[root@k8s-master wayne]# cd wayne/
[root@k8s-master wayne]# docker-compose up mysql
創建完成后,停止MySQL服務器,創建配置文件:
[root@k8s-master ~]# cd src/backend/conf && touch dev.conf
編輯 dev.conf ,寫入數據庫相關配置(請修改為數據庫實際地址)
[root@k8s-master conf]# vim dev.conf
DBName = wayne # MySQL address,請修改為實際IP DBTns = tcp(192.168.90.80:3306) DBUser = root DBPasswd = root
數據未進行持久化,生產環境一定要做數據持久化,避免數據丟失 。可修改 wayne 目錄下的docker-compose.yaml 文件實現,詳細請了解 dockervolumes的應用。
進入Wayne根目錄,后臺啟動MySQL服務
[root@k8s-master conf]# cd /etc/kubernetes/wayne && docker-compose up -d mysql
啟動Wayne服務
修改 Wayne 訪問端口為8081,默認端口已被 8080 已被 kubernetes apiserver 占用
[root@k8s-master kubernetes]#vim /etc/kubernetes/wayne/src/backend/conf/app.conf appname = wayne httpport = 8081 runmode = prod autorender = false copyrequestbody = true EnableDocs = true EnableAdmin = true StaticDir = public:static ......
進入 Wayne 跟目錄,啟動 Wayne 服務
[root@k8s-master kubernetes]# cd wayne && docker-compose up wayne
后臺啟動,docker-compose up -d 服務名稱
“ Wayne配置文件路徑:/etc/kubernetes/wayne/src/backend/conf ”
Wayne啟動后,可以通過 http://192.168.90.82:8080/admin 訪問本地 Wayne, 默認管理員賬號 admin:admin
擴展應用
將wayne和mysql服務設置為開機啟動
賦予 /etc/rd.d/rc.local執行權限
[root@k8s-master ~]# chmod +x /etc/rc.d/rc.local
添加啟動腳本
[root@k8s-master ~]# vim /etc/rc.d/rc.local #!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # # It is highly advisable to create own systemd services or udev rules # to run scripts during boot instead of using this file. # # In contrast to previous versions due to parallel execution during boot # this script will NOT be run after all other services. # # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure # that this script will be executed during boot. touch /var/lock/subsys/local cd /etc/kubernetes/wayne && docker-compose up -d mysql cd /etc/kubernetes/wayne && docker-compose up -d wayn
總結
以上是生活随笔為你收集整理的Kubernetes的搭建与配置(二):部署 Wayne 用户界面的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 镜面屏与雾面屏
- 下一篇: howto:vaadin简短教程