在 v1.1 版本发布之后,SREWorks 团队开始了常态化的功能版本迭代,v1.1 提供了组件插拔能力,v1.2 更进一步,将会发布规划已久的运维市场,助力团队构筑运维生态,也会发布诸多企业用户关注的纯内网源码构建方案。
切入正题,下面是本次 v1.2 版本的新功能解读。
1. 应用市场
SREWorks 团队参考 helm/rpm 等常见软件仓库模型,设计了 SREWorks 的市场分发机制如下图所示:
该市场分发机制具有如下特点:
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 平台对时序数据进行自定义加工处理。
4. 其他优化
如何从当前版本升级到 v1.2
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
同时也欢迎各位加入钉钉群或微信群分享和交流~
钉钉交流群二维码:
微信可添加 SREWorks 小助手进群:
评论