天天看點

SREWorks v1.2 版本釋出 | 運維市場能力釋出

在v1.1版本釋出之後,SREWorks團隊開始了常态化的功能版本疊代,v1.1提供了元件插拔能力,v1.2更進一步,将會釋出規劃已久的運維市場,助力團隊構築運維生态,也會釋出諸多企業使用者關注的純内網源碼建構方案。

切入正題,下面是本次 v1.2 版本的新功能解讀。

1. 應用市場

SREWorks團隊參考helm/rpm等常見軟體倉庫模型,設計了SREWorks的市場分發機制如下圖所示:

SREWorks v1.2 版本釋出 | 運維市場能力釋出

該市場分發機制具有如下特點:

  • 公共市場理論上可以基于任何靜态存儲服務搭建,并且可以支援緩存加速,目前支援阿裡雲OSS,後續會支援 MinIO/S3 等常見存儲服務。
  • 支援多個SREWorks平台向同一個市場釋出包,也支援一個SREWorks平台同時訂閱多個市場。
SREWorks v1.2 版本釋出 | 運維市場能力釋出

SREWorks團隊歡迎使用者在應用市場之上建構自己公司内部的私有市場,後續也會在公共市場上線更多的運維應用,友善使用者開箱即用享受更多的功能和特性。

2. 純内網源碼建構部署

本次版本疊代,SREWorks團隊将源碼建構依賴資源進行了整理和分類,使用者可自行選擇或替換對應的資源,進行内網或特殊環境的源碼建構部署。

底座源碼建構

在執行 ​

​./build.sh​

​ 指令前可傳入下列的環境變量來改變資源位址,如不傳入則使用預設值

# 容器鏡像
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="http://mirrors.aliyun.com/pypi/simple"
export GOPROXY="https://goproxy.cn"
export MAVEN_SETTINGS_XML="https://sreworks.oss-cn-beijing.aliyuncs.com/resource/settings.xml"

# 二進制指令
export HELM_BIN_URL="https://abm-storage.oss-cn-zhangjiakou.aliyuncs.com/lib/helm"
export KUSTOMIZE_BIN_URL="https://abm-storage.oss-cn-zhangjiakou.aliyuncs.com/lib/kustomize"
export MINIO_CLIENT_URL="https://sreworks.oss-cn-beijing.aliyuncs.com/bin/mc-linux-amd64"

# SREWorks内置應用包
export SREWORKS_BUILTIN_PACKAGE_URL="https://sreworks.oss-cn-beijing.aliyuncs.com/packages"

...      

完整資源清單請通路 ​​https://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="https://sreworks.oss-cn-beijing.aliyuncs.com/resource/settings.xml" \
--set global.artifacts.npmRegistryUrl="https://registry.npmmirror.com" \
--set global.artifacts.pythonPip="http://mirrors.aliyun.com/pypi/simple" \

# 二進制指令
--set global.artifacts.minioClientUrl="https://sreworks.oss-cn-beijing.aliyuncs.com/bin/mc-linux-amd64" \

...      

完整資源清單請通路 ​​https://www.yuque.com/sreworks-doc/docs/mzz07m​​

3. 資料平台能力增強

名額采集能力增強

納管叢集通過metricbeat支援采集prometheus exporter能力,預設Pod(exporter)标簽滿足 sreworks-prometheus-scrape-metric: enable 和 sreworks-prometheus-io-scrape: enable 具備服務自動發現能力。

前序版本預設僅支援針對Service标簽滿足 ​

​sreworks-telemetry-metric: enable​

​ 具備服務自動發現和名額接口定時pull能力,考慮到Prometheus已經成為雲原生領域監控的事實标準,是以在v1.2版本中增強名額采集能力,即支援從使用者服務中主動pull名額資料,也支援主動從prometheus exporter pull名額資料。

資料消費能力增強

新增logstash資料服務元件,支援對運維資料多管道分發。

前序版本預設資料落地到Elasticsearch存儲,對資料加工處理主要依賴作業平台的資料處理任務,但作業平台對時序資料處理的時效性較弱。v1.2版本支援采集的使用者運維資料(主要指Metric資料)主動流入消息隊列服務Kafka,使用者可通過VVP平台對時序資料進行自定義加工處理。

SREWorks v1.2 版本釋出 | 運維市場能力釋出

4. 其他優化

  • 優化應用解除安裝時service未回收的問題
  • 優化代碼依賴,去除工程中對python2.7的依賴
  • 運維應用部署時支援命名空間(namespace)自定義
  • 站點搜尋服務支援執行個體詳情頁索引
  • 前端元件文檔補齊

如何從目前版本更新到v1.2

  • 更新包含底座,頁面可能會有5-10分鐘的不可通路,請注意。
  • 使用者自行開發的雲原生應用不會受影響(不重新開機),SREWorks網關到應用的流量會有中斷。
git clone http://github.com/alibaba/sreworks.git -b v1.2 sreworks

cd sreworks
./sbin/upgrade-cluster.sh --kubeconfig="****"      

如在使用過程中遇到問題,歡迎各位在GitHub中提出Issues或Pull requests。

SREWorks開源位址:​​https://github.com/alibaba/sreworks​​

同時也歡迎各位加入釘釘群或微信群分享和交流~