在v1.1版本公布之后,SREWorks团队开始了常态化的性能版本迭代,v1.1提供了组件插拔能力,v1.2更进一步,将会公布布局已久的运维市场,助力团队构筑运维生态,也会公布诸多企业用户关注的纯内网源码构建计划。

切入正题,上面是本次 v1.2 版本的新性能解读。

1. 利用市场

SREWorks团队参考helm/rpm等常见软件仓库模型,设计了SREWorks的市场散发机制如下图所示:

该市场散发机制具备如下特点:
● 公共市场实践上能够基于任何动态存储服务搭建,并且能够反对缓存减速,以后反对阿里云OSS,后续会反对 MinIO/S3 等常见存储服务。
● 反对多个SREWorks平台向同一个市场公布包,也反对一个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"...

残缺资源清单请拜访 2.1源码构建装置

运维利用源码构建

在执行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" \...

残缺资源清单请拜访 2.2源码构建装置

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. 其余优化

● 优化利用卸载时service未回收的问题
● 优化代码依赖,去除工程中对python2.7的依赖
● 运维利用部署时反对命名空间(namespace)自定义
● 站点搜寻服务反对实例详情页索引
● 前端组件文档补齐

如何从以后版本升级到v1.2

● 降级蕴含底座,页面可能会有5-10分钟的不可拜访,请留神。
● 用户自行开发的云原生利用不会受影响(不重启),SREWorks网关到利用的流量会有中断。

git clone http://github.com/alibaba/sreworks.git -b v1.2 sreworkscd sreworks./sbin/upgrade-cluster.sh --kubeconfig="****"

如在应用过程中遇到问题,欢送各位在GitHub中提出Issues或Pull requests。
SREWorks开源地址:https://github.com/alibaba/sr...

同时也欢送各位退出钉钉群分享和交换~

钉钉交换群群号:35853026