Wayne是筆者無意之間刷文章瞭解到的,簡單使用之後發現能解決當前眼下諸多問題,出於推動公司容器化進程的原因選擇開始使用,當前所有環境都已經在使用中。藉助官方的介紹Wayne 是一個通用的、基於 Web 的 Kubernetes 多集羣管理平臺。通過可視化 Kubernetes 對象模板編輯的方式,降低業務接入成本,擁有完整的權限管理系統,適應多租戶場景,是一款適合企業級集羣使用的發佈平臺。
附上:
喵了個咪的博客:w-blog.cn
wayne官方Git地址:https://github.com/Qihoo360/wayne/blob/master/README-CN.md
PS:當前最新版本 v1.8.6,官方暫時不支持版本升級能力,不要輕易嘗試版本升級;
Wayne 已大規模服務於 360 搜索,承載了內部絕大部分業務,穩定管理了近千個業務,上萬個容器,運行了兩年多時間,經受住了生產的考驗。
一、Wayne配置Kubernetes
Wayne分爲前臺和後臺,首先使用管理員賬號進入後臺
在集羣頁面關聯集羣
填寫你的kubeconfig配置
創建集羣后接下來創建命名空間
這裏就需要配置分配資源和在拉去鏡像時使用的鏡像倉庫的secret:
切換到前臺,選擇我們剛剛創建的命名空間
創建第一個項目
首先需要創建私有倉庫密鑰
但是這裏有個問題,在項目裏面創建的加密字典會默認加上項目名的前綴,筆者都是把鏡像的Secret和PV/PVC提前創建好,名字統一
kind: Secret
apiVersion: v1
metadata:
name: vpcregsecret
namespace: core
selfLink: /api/v1/namespaces/core/secrets/vpcregsecret
uid: e8d6ef47-ce0c-11e9-9c16-00163e089310
resourceVersion: '31550513'
creationTimestamp: '2019-09-03T05:37:25Z'
data:
.dockerconfigjson: >-xxxxx
如果還是使用前臺創建的配置,可以進入後臺編輯命名空間默認Secret名稱
後面創建容器就不需要指定鏡像倉庫密鑰了,在同一個命名空間下也不需要建多份密鑰,如果需要多份密鑰只需要在創建容器的時候指定這裏配置的相當於默認值
二、創建部署(deployment)
然後就可以創建容器了
發佈成功之後就可以實時看到具體的狀態了,也可以使用web shell、在線查看日誌
更新版本
修改鏡像,每次更新都需要填寫發佈說明
發佈即可, 每一次發佈都有記錄
三、通過OpenApi來控制
默認API是不具備更新鏡像的權限的需要單獨增加權限
主要需要的是 OPENAPI_UPGRADE_DEPLOYMENT 權限
搜索賦予權限
API文檔:wayne/openapi.swagger.json at master · Qihoo360/wayne · GitHub
通過OpenApi觸發的更新都會有對應的更新說明:
本文由博客一文多發平臺 OpenWrite 發佈!