文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

阿里开源的一站式运维SaaS应用套件和云原生运维开发平台 - SREWorks

2024-12-01 18:39

关注

SREWorks 是阿里巴巴大数据 SRE 团队云原生运维平台,沉淀了团队近 10 年经过内部业务锤炼的 SRE 工程实践,秉承“数据化、智能化”运维思想,帮助运维行业更多的从业者采用“数智”思想做好高效运维。专注于以应用为中心的一站式“云原生”、“数智化”运维 SaaS 管理套件。提供企业的应用&资源管理及运维开发两大核心能力,帮助企业实现云原生应用&资源的交付运维。

SREWorks 是什么?

谷歌在 2003 年提出了一种岗位叫做 SRE (Site Reliability Engineer,站点可靠性工程师),它是软件工程师和系统管理员的结合,重视运维人员的开发能力,要求运维日常琐事在 50% 以内,另外 50% 精力开发自动化工具减少人力需求。

SREWorks 作为阿里云大数据 SRE 团队对 SRE 理念的工程实践,专注于以应用为中心的一站式“云原生”、“数智化”运维 SaaS 管理套件,提供企业应用&资源管理及运维开发两大核心能力,帮助企业实现云原生应用&资源的交付运维。

阿里云大数据 SRE 团队天然靠近大数据和 AI,对大数据&AI 技术非常熟悉,且具有随取随用的大数据&AI 算力资源,一直努力践行“数据化”、“智能化”的运维理念,行业里的 DataOps(数据化运维)最早由该团队提出。SREWorks 中有一套端到端的 DataOps 闭环工程化实践,包括标准的运维数仓、数据运维平台、运营中心等。

传统 IT 运维领域已经有大量优秀的开源运维平台,反观云原生场景,目前还缺乏一些体系化的运维解决方案。随着云原生时代大趋势的到来,阿里云大数据 SRE 团队将 SREWorks 运维平台开源,希望为运维工程师们提供开箱即用的运维平台。

SREWorks 有什么优势?

回归到运维领域的需求,无论上层产品和业务形态怎么变化,运维本质上解决的还是“质量、成本、效率、安全”相关需求。SREWorks 用一个运维 SaaS 应用界面来支撑上述需求,同时以“数智”思想为内核驱动 SaaS 能力,具体包括交付、监测、管理、控制、运营、服务六部分。

安装

首先需要有一个大于等于 1.20 版本的 Kubernetes 集群。

这里我们使用 Helm 的方式来安装 SREWorks。

采用 Ingress 方式访问

SREWorks 的部署必须指定 ingress 的域名,阿里云 ACK 集群的域名在【基本信息】中可以找到,例如 http://*.ceea604.cn-huhehaote.alicontainer.com ,* 部分用户可以自行填写,比如 http://sreworks.c34a60e3c93854680b590b0d5a190310a.cn-zhangjiakou.alicontainer.com ,在安装时传入 appmanager.home.url 参数即可。

首先下载 sreworks 代码到本地。

$ git clone http://github.com/alibaba/sreworks.git -b v1.2 sreworks
$ cd sreworks/chart/sreworks-chart

然后使用下面的命令一键安装即可。

# 安装SREWorks
$ helm upgrade --install sreworks ./ \
--kubeconfig="****" \
--create-namespace --namespace sreworks \
--set appmanager.home.url="https://your-website.***.com" \
--set global.storageClass="alicloud-disk-available" \
--set appmanagerbase.openebs.enabled=false

采用 NodePort 方式访问

在云厂商购买虚机,运行 NodePort 模式需要注意被访问节点(NODE_IP)的网络安全组或防火墙,打开该端口(30767)的公网被访问限制。

同样先下载 sreworks 代码到本地。

$ git clone http://github.com/alibaba/sreworks.git -b v1.2 sreworks
$ cd sreworks/chart/sreworks-chart

然后使用下面的命令安装 sreworks,替换 NODE_IP 为某个节点的 IP。

$ helm upgrade --install sreworks ./ \
--kubeconfig="****" \
--create-namespace --namespace sreworks \
--set global.accessMode="nodePort" \
--set appmanager.home.url="http://NODE_IP:30767"

注意: 默认的 storageClass: sreworks-hostpath 是由 OpenEBS 的 LocalPV 方案实现的,仅能用于开发测试环境,如需用于生产,建议使用符合 Kubernetes 要求的持久化存储,如 GlusterFS、Ceph 等分布式存储,或云服务上上的块存储。

Kubesphere 单机快速部署

# 下载并安装kk工具
curl -sfL https://get-kk.kubesphere.io | VERSION=v2.0.0 sh -
# 通过kk工具部署k8s集群
./kk create cluster --with-kubernetes v1.21.5 --with-kubesphere v3.2.1
# 下载sreworks到本地
git clone http://github.com/alibaba/sreworks.git -b v1.2 sreworks
cd sreworks/chart/sreworks-chart
# 安装SREWorks
# 替换NODE_IP为某个节点的浏览器可访问IP
helm upgrade --install sreworks ./ \
--create-namespace --namespace sreworks \
--set global.accessMode="nodePort" \
--set appmanager.home.url="http://NODE_IP:30767" \
--set global.storageClass="local" \
--set appmanagerbase.openebs.enabled=false

验证安装

在浏览器中输入上个步骤的域名或者 IP,如果能够看到页面,说明已经安装完成(大约需等待 5 分钟左右),注册并开始使用 SREWorks。默认账号为 admin,默认密码为 12345678。

卸载

请务必遵循下面顺序执行,否则可能会导致各种 crd 变成脏数据残留在集群!

$ helm uninstall sreworks -nsreworks
$ kubectl delete namespace sreworks

实践

接下来我们在 SREWorks 中,从 0 到 1 建立一个 Flink 云原生应用定义,发布 Flink 应用到市场,并交付部署 Flink 应用的完整过程。

1、新建 Flink 应用

登录 SREWorks 后,进入“交付/应用管理-应用开发”页面,点击“新建云原生应用”,在滑出的表单中输入 Flink 应用定义相关信息,完成 Flink 应用模板定义。

在应用开发模板列表下,点击应用定义名称,进入应用开发页面。

2、添加 Flink 应用组件

进入 Flink 应用模板后,在应用组件中添加“Helm”组件类型,将 Flink 中的 VVP 组件添加进来。

3、Flink 应用构建

在完成组件添加后,可以在“应用构建”页面进行一键构建,当前一键构建会自动计算版本,创建构建任务后,在构建列表中可查看刚刚提交的构建任务。

构建完成后,即可在构建列表中展示当前构建的应用及组件构建状态,同时可以在操作中一键部署测试和上架市场。

4、Flink 应用测试部署

应用测试实例支持多套部署,并会自动生成全局唯一的实例名,规则为“应用名-uid”。该实例被部署在同名的 namespace 下。

用户可自行对应用进行测试,测试通过后,可选择一键发布到市场的操作将应用版本发布到市场中。

5、Flink 应用发布上架

通过构建列表中指定构建任务的“上架市场”操作完成应用到市场的发布。

6、Flink 应用部署

在市场中可以指定应用一键部署,当前默认部署应用的最新版本。

7、Flink 应用实例管理

应用实例列表展示当前部署在 prod 的企业应用生产实例,并提供升级、回滚、卸载操作。

Git 仓库:https://github.com/alibaba/SREWorks。

来源:Github爱好者内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯