SREWorks v1.2 版本發佈 | 運維市場能力發佈
在v1.1版本發佈之後,SREWorks團隊開始了常態化的功能版本迭代,v1.1提供了組件插拔能力,v1.2更進一步,將會發佈規劃已久的運維市場,助力團隊構築運維生態,也會發佈諸多企業用戶關注的純內網源碼構建方案。
切入正題,下面是本次 v1.2 版本的新功能解讀。
1. 應用市場
SREWorks團隊參考helm/rpm等常見軟件倉庫模型,設計了SREWorks的市場分發機制如下圖所示:

該市場分發機制具有如下特點:
- 公共市場理論上可以基於任何靜態存儲服務搭建,並且可以支持緩存加速,當前支持阿里雲OSS,後續會支持 MinIO/S3 等常見存儲服務。
- 支持多個SREWorks平台向同一個市場發佈包,也支持一個SREWorks平台同時訂閱多個市場。

SREWorks團隊歡迎用戶在應用市場之上構建自己公司內部的私有市場,後續也會在公共市場上線更多的運維應用,方便用戶開箱即用享受更多的功能和特性。
2. 純內網源碼構建部署
本次版本迭代,SREWorks團隊將源碼構建依賴資源進行了整理和分類,用戶可自行選擇或替換對應的資源,進行內網或特殊環境的源碼構建部署。
底座源碼構建
在執行 <span class="ne-text">./build.sh</span 命令前可傳入下列的環境變量來改變資源地址,如不傳入則使用默認值
# 容器鏡像
export SW_PYTHON3_IMAGE="python:3.9.12-alpine"
export MIGRATE_IMAGE="migrate/migrate"
export MAVEN_IMAGE="maven:3.8.3-adoptopenjdk-11"
export GOLANG_IMAGE="golang:alpine"
export GOLANG_BUILD_IMAGE="golang:1.16"
export DISTROLESS_IMAGE="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/distroless-static:nonroot"
# 軟件倉庫
export APK_REPO_DOMAIN="mirrors.tuna.tsinghua.edu.cn"
export PYTHON_PIP="//mirrors.aliyun.com/pypi/simple"
export GOPROXY="//goproxy.cn"
export MAVEN_SETTINGS_XML="//sreworks.oss-cn-beijing.aliyuncs.com/resource/settings.xml"
# 二進制命令
export HELM_BIN_URL="//abm-storage.oss-cn-zhangjiakou.aliyuncs.com/lib/helm"
export KUSTOMIZE_BIN_URL="//abm-storage.oss-cn-zhangjiakou.aliyuncs.com/lib/kustomize"
export MINIO_CLIENT_URL="//sreworks.oss-cn-beijing.aliyuncs.com/bin/mc-linux-amd64"
# SREWorks內置應用包
export SREWORKS_BUILTIN_PACKAGE_URL="//sreworks.oss-cn-beijing.aliyuncs.com/packages"
...
完整資源清單請訪問 //www.yuque.com/sreworks-doc/docs/mzz07m
運維應用源碼構建
在執行helm install/upgrade 命令的時候,可以選擇性傳入以下參數,使得運維應用可以在內網進行構建及部署。
# 容器鏡像
--set global.artifacts.mavenImage="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/maven:3.8.3-adoptopenjdk-11" \
--set global.artifacts.openjdk8Image="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/openjdk8:alpine-jre" \
--set global.artifacts.openjdk11Image="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/openjdk:11.0.10-jre" \
--set global.artifacts.openjdk11AlpineImage="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/openjdk11:alpine-jre" \
--set global.artifacts.alpineImage="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/alpine:latest" \
--set global.artifacts.nodeImage="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/node:10-alpine" \
--set global.artifacts.migrateImage="sw-migrate" \
--set global.artifacts.postrunImage="sw-postrun" \
--set global.artifacts.python3Image="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/python:3.9.12-alpine" \
--set global.artifacts.bentomlImage="sreworks-registry.cn-beijing.cr.aliyuncs.com/mirror/bentoml-model-server:0.13.1-py37" \
# 軟件倉庫
--set global.artifacts.apkRepoDomain="mirrors.tuna.tsinghua.edu.cn" \
--set global.artifacts.mavenSettingsXml="//sreworks.oss-cn-beijing.aliyuncs.com/resource/settings.xml" \
--set global.artifacts.npmRegistryUrl="//registry.npmmirror.com" \
--set global.artifacts.pythonPip="//mirrors.aliyun.com/pypi/simple" \
# 二進制命令
--set global.artifacts.minioClientUrl="//sreworks.oss-cn-beijing.aliyuncs.com/bin/mc-linux-amd64" \
...
完整資源清單請訪問 //www.yuque.com/sreworks-doc/docs/mzz07m
3. 數據平台能力增強
指標採集能力增強
納管集群通過metricbeat支持採集prometheus exporter能力,默認Pod(exporter)標籤滿足 sreworks-prometheus-scrape-metric: enable 和 sreworks-prometheus-io-scrape: enable 具備服務自動發現能力。
前序版本默認僅支持針對Service標籤滿足 <span class="ne-text">sreworks-telemetry-metric: enable</span** 具備服務自動發現和指標接口定時pull能力,考慮到Prometheus**已經成為雲原生領域監控的事實標準,因此在v1.2版本中增強指標採集能力,即支持從用戶服務中主動pull指標數據,也支持主動從prometheus exporter pull指標數據。
數據消費能力增強
新增logstash數據服務組件,支持對運維數據多管道分發。
前序版本默認數據落地到Elasticsearch存儲,對數據加工處理主要依賴作業平台的數據處理任務,但作業平台對時序數據處理的時效性較弱。v1.2版本支持採集的用戶運維數據(主要指Metric數據)主動流入消息隊列服務Kafka,用戶可通過VVP平台對時序數據進行自定義加工處理。

4. 其他優化
- 優化應用卸載時service未回收的問題
- 優化代碼依賴,去除工程中對python2.7的依賴
- 運維應用部署時支持命名空間(namespace)自定義
- 站點搜索服務支持實例詳情頁索引
- 前端組件文檔補齊
如何從當前版本升級到v1.2
- 升級包含底座,頁面可能會有5-10分鐘的不可訪問,請注意。
- 用戶自行開發的雲原生應用不會受影響(不重啟),SREWorks網關到應用的流量會有中斷。
git clone //github.com/alibaba/sreworks.git -b v1.2 sreworks
cd sreworks
./sbin/upgrade-cluster.sh --kubeconfig="****"
如在使用過程中遇到問題,歡迎各位在GitHub中提出Issues或Pull requests。
SREWorks開源地址://github.com/alibaba/sreworks
同時也歡迎各位加入釘釘群或微信群分享和交流~
釘釘交流群二維碼:




