今天,我们高兴地宣布云原生统一应用平台 Walrus 0.4 正式发布,这是一个里程碑式的版本更新。新版本采用了全新的应用模型——仅需进行单一配置,即可在多种模态的基础设施及环境中运行包括应用服务及周边依赖资源在内的完整应用系统。“You build it, you run it”在这一版本中成为现实。

此外,Walrus 0.4 还集成 Argo Workflows 作为工作流引擎,提供应用环境分类、动态 UI Schema、闲时服务停止及环境资源释放、项目层级的 Catalog/模板管理等特性,并丰富了内置模板生态,进一步简化应用部署及交付流程。

Gartner 已连续两年将平台工程列为年度10大战略技术趋势之一,并预计未来三年内全球80%的软件工程组织将设立平台团队。”Seal 联合创始人及 CEO 秦小康说道,“Walrus 0.4 的全新设计则为平台工程落地提供了全新动力。通过采用更灵活的上层抽象、降低复杂度,分离运维团队与产品团队的关注点,从而提供绝佳的应用部署和管理体验。”

Walrus GitHub 主页:

https://github.com/seal-io/walrus

Walrus 在线文档:

https://seal-io.github.io/docs/zh/

屏蔽 K8s 及基础设施复杂度加速云原生采纳

应用模型全新升级,实现基础设施无感知

在软件开发及交付的过程中,为适配每个开发阶段的不同目的通常会涉及多种不同类型的环境,每类环境配置不同的底层基础设施。

在过去,运维团队需要根据各类环境的不同基础设施分别为应用系统进行配置,例如,在开发测试环境中提供容器化的 MySQL 数据库供测试使用,在生产环境中提供生产级别的虚拟机数据库部署或者云 RDS 服务。

在 Walrus 0.4 中,我们引入了 Resource 和 ResourceDefinition 两类 API 对象,运维团队只需配置一次,即可支持产品团队以自服务方式在各类环境中以多种模态(即多态)创建并使用相关资源,同时确保满足企业内部最佳实践与合规等需求。

在 Walrus 平台上,运维团队可以通过 ResourceDefinition 声明提供的 Resource(资源)类型以及实际部署资源的底层模板,不同的资源部署模板可以通过自定义规则应用到不同类型的环境、项目等。

研发人员无需关注底层具体实现方式,通过创建 Resource 对象声明需要使用的资源类型及基本信息,可以灵活地在各种环境中自动化创建所需资源并使用。

这一全新的应用模型灵活实现了研发与运维关注点分离和自动化协作,进而屏蔽各类环境中基础设施的复杂度,降低研发人员的认知负担,进一步落地平台工程理念。

统一编排应用系统发布流程

与市面上其他应用平台相比,Walrus 支持从底层基础设施资源(计算、网络、存储等)到应用层服务(容器及非容器)的自动化创建、配置及部署管理,实现完整应用系统各种服务模块和依赖资源模块的统一编排。

统一编排能力在 Walrus 0.4 中得到进一步增强。通过集成 Argo Workflows 作为工作流引擎,Walrus 打通多个应用交付环节,实现一站式应用编排发布

具体而言,Walrus 可以将基础设施自动化和 PaaS 服务自动化的能力集成到企业现有的 DevOps 流水线当中,赋能产品团队自助服务。同时支持与企业当前的审批流程相结合,并兼容企业现有变更流程的管控规范,实现流程审批和卡点。

应用环境随时启停,助力企业降本增效

随着云原生技术的发展、微服务架构的普及,应用系统的服务及依赖资源的数量迅猛增长。在应用环境管理自动化程度不高的情况下,繁琐的环境部署配置工作使得大量研发测试环境即便空闲时段也处于运行状态,资源长期占用不释放,导致不必要的开销。因此,研发测试环境的资源治理是在降本增效大背景下一项艰巨的任务

Walrus 支持对全套应用系统的统一编排,并在最新版本中提供环境随时启停的特性。用户可以在闲时停止整个应用环境,回收底层运行的服务和环境资源。在环境停止期间,Walrus 保留整个应用系统的配置数据,便于下次重启时,应用环境中的所有服务和资源可以轻松回到停止前的状态,极大降低资源消耗成本,实现研发测试环境资源的有效治理。

除此之外,利用 Walrus 0.4 中提供的服务/资源草稿(Services/Resources Draft)功能和服务/资源/环境启停和克隆功能,可以在资源有限的情况下一键启停切换多套测试环境,以快速进行测试验证工作,在增加资源利用率的同时提升部署效率并节省成本,切实助力企业降本增效。

其他功能特性一览

环境分类与项目模板库 & 模板

为了增加部署的可控性和灵活性,Walrus 0.4 提供了环境分类以及可供项目单独使用的项目模板库和模板功能,并为产品团队设置模板使用权限。运维团队可以将环境分为开发(Development)、预发布(Staging)以及生产(Production)类型,并为不同类型的环境配置相应的底层基础设施资源。

基于此,运维团队可以细粒度地管理各种类型的环境,分隔 Dev 与 Ops 在同个应用系统(项目)下对不同环境的权限,加强 Dev 与 Ops 在同个项目下的自动化协作能力和关注点与权限分离能力。

动态 UI Schema

由于企业内部各个团队之间技能水平、配置需求各异,用户可以通过 UI Schema 按需定制模板的 UI 表单,例如模板参数的默认值、可选项、参数隐藏、参数分组等。通过统一的定义,对平台用户屏蔽了应用服务与基础设施资源的配置细节,同时解决了静态 UI 僵化的配置参数导致的不良使用体验及额外的使用负担。

丰富内置模板生态

模板是 Walrus 的重要功能之一,它可以将各种基础设施能力、云服务和应用服务封装成可复用的能力模板,帮助用户简化服务和资源的部署。

在 Walrus 0.4 中,我们添加了更多内置模板,如增强的容器化服务与容器化任务模板、PostgreSQL、Redis、Kafka等多云中间件/数据库模板、传统主机部署模板和各种静态模板,可将外部的 MySQL、PostgreSQL、Redis、Kafka等注册成静态服务/静态资源,提升产品易用性。

完全开源,轻松上手

Seal 团队秉持着一以贯之的开源理念和开箱即用的产品设计思路,Walrus 基于 Apache 2.0 许可完全开源,并且仅需一行命令您就可以在已安装 Docker 的电脑上部署 Walrus:

sudo docker run -d --privileged --restart=always -p 80:80 -p 443:443 --name walrus sealio/walrus:v0.4.0

如果您喜欢这个项目,欢迎在 Github 上为我们点亮

  • Walrus GitHub 主页:

https://github.com/seal-io/walrus

  • Walrus 在线文档:

https://seal-io.github.io/docs/zh/

Walrus 0.4发布:单一配置、多态运行,体验下一代应用交付模型的更多相关文章

  1. Android SDK 4.0.3 开发环境配置及运行

    最近又装了一次最新版本的ADK环境 目前最新版是Android SDK 4.0.3 本文的插图和文本虽然是Android2.2的 步骤都是一样的,如果安装的过程中遇到什么问题,可以留言,我会尽快回复! ...

  2. debian下 Hadoop 1.0.4 集群配置及运行WordCount

    说明:我用的是压缩包安装,不是安装包 官网安装说明:http://hadoop.apache.org/docs/r1.1.2/cluster_setup.html,繁冗,看的眼花...大部分人应该都不 ...

  3. [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  4. [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  5. Clusternet v0.5.0 重磅发布: 全面解决多集群应用分发的差异化配置难题

    作者 徐迪,腾讯云容器技术专家. 汝英哲,腾讯云高级产品经理. 摘要 在做多集群应用分发的时候,经常会遇到以下的差异化问题,比如: 在分发的资源上全部打上统一的标签,比如 apps.my.compan ...

  6. iis7.0上发布mvc4.0网站

    步骤如下: 1.右击需要发布的项目,在弹出的菜单中选择“发布...”选项 2.在“发布web”对话框中进行设置,配置文件名称默认为“配置文件1”可以修改为需要的名字,以便识别,也可以不改.发布方法选择 ...

  7. .net妹纸转Java---java环境的搭建,myeclipse10.0 的安装环境变量配置和破解

    啦啦啦 ,因为公司项目需要,从我大火炉--大武汉被拖到了更大的火炉--大广西  其实一开始 我的内心是拒绝的. 但是我在大武汉呆了近2年木有出过远门,对, 生活除了眼前的苟且,还有远方的苟且.怀揣这样 ...

  8. GJM : Taurus.MVC 2.0 开源发布:WebAPI开发教程 [转载]

    Taurus.MVC 2.0 开源发布:WebAPI开发教程 转载自http://www.cnblogs.com/cyq1162/p/6069020.html 因是新手  粘贴时有一个版权问题 本文原 ...

  9. AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(三):配置ActiveXForm运行环境

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  10. MVC4.0网站发布和部署到IIS7.0上的方法

    最近在研究MVC4,使用vs2010,开发的站点在发布和部署到iis7上的过程中遇到了很多问题,现在将解决的过程记录下来,以便日后参考,整个过程主要以截图形式呈现 vs2010的安装和mvc4的安装不 ...

随机推荐

  1. 秋叶整合包如何安装Python包

    前几天写了一篇<手把手教你在本机安装Stable Diffusion秋叶整合包>的文章,有同学运行时遇到缺少Python Module的问题,帮助他处理了一下,今天把这个经验分享给大家,希 ...

  2. NOI2023 题解

    打的太 shaber 了,于是补补题. D1T1 扫描线. 首先我们可以容斥一下,答案为被一种操作覆盖到的减去被两种操作覆盖到的加上被三种操作覆盖到的. 首先考虑只被一种操作覆盖到的,这很简单,直接上 ...

  3. Cilium系列-15-7层网络CiliumNetworkPolicy简介

    系列文章 Cilium 系列文章 前言 今天我们进入 Cilium 安全相关主题, 介绍 CiliumNetworkPolicies 相比于 Kubernetes 网络策略最大的不同: 7 层网络策略 ...

  4. Java源代码是如何编译,加载到内存中的?

    1.前言 相信许多开发同学看过<深入理解java虚拟机>,也阅读过java虚拟机规范,书籍和文档给人的感觉不够直观,本文从一个简单的例子来看看jvm是如何工作的吧. 本文所有操作均在mac ...

  5. pyqt5学习日记

    前提需要pip安装PyQt5与PyQt5-tools 安装后会有qtdesigner.exe和pyuic5.exe,用everything直接可以搜索到 qtdesigner.exe是来设计ui的 p ...

  6. 【pandas小技巧】--统计值作为新列

    这次介绍的小技巧不是统计,而是把统计结果作为新列和原来的数据放在一起.pandas的各种统计功能之前已经介绍了不少,但是每次都是统计结果归统计结果,原始数据归原始数据,没有把它们合并在一个数据集中来观 ...

  7. DP模拟题

    Smiling & Weeping ----寒灯纸上,梨花雨凉,我等风雪又一年 # [NOIP2007 普及组] 守望者的逃离 ## 题目背景 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深 ...

  8. 使用TorchLens可视化一个简单的神经网络

      TorchLens:可用于可视化任何PyTorch模型,一个包用于在一行代码中提取和映射PyTorch模型中每个张量运算的结果.TorchLens功能非常强大,如果能够熟练掌握,算是可视化PyTo ...

  9. 位图(bitmap)原理以及实现

    大家好,我是蓝胖子,我一直相信编程是一门实践性的技术,其中算法也不例外,初学者可能往往对它可望而不可及,觉得很难,学了又忘,忘其实是由于没有真正搞懂算法的应用场景,所以我准备出一个系列,囊括我们在日常 ...

  10. Blazor Server 发起HttpPost请求,但是多参数

    一.介绍 今天突然想起之前工作上遇到的一个问题,在做Blazor 开发时后端给的一个接口请求方式是Post ,但是他需要携带多个参数,新建一个公共类又觉得麻烦,我就尝试着怎么在Post请求中携带多个参 ...