今天,我们高兴地宣布云原生统一应用平台 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. 静态vlan的划分实验

    静态vlan的划分 1,toupu图 2,配置id与子网掩码 2.1,pc,server的ip与子网配置 pc5 pc6 pc7 pc8 server1 server2 3,vlan的静态划分 1,v ...

  2. linux基础:编译

    程序编译 在linux中,gnu项目提供了gcc编译器.g++编译器和gdb调试器. C和C++语言正在不断发展,为了保持兼容程序语言的最新特性,开发者通常选择GCC来编译C语言编写的源代码,选择G+ ...

  3. 聊聊 RocketMQ 名字服务

    NameServer 是专为 RocketMQ 设计的轻量级名字服务,它的源码非常精简,八个类 ,少于1000行代码. 这篇文章, 笔者会从基础概念.Broker发送心跳包.NameServer 维护 ...

  4. [golang]使用gocron编写定时任务

    前言 linux自带的crontab默认情况下只能精确到分钟,没法执行秒级任务.当然,也不是不行,比如: * * * * * for i in $(seq 1 11);do echo hello &g ...

  5. [ABC142E] Get Everything

    2023-02-18 题目 题目传送门 翻译 翻译 难度&重要性(1~10):5 题目来源 AtCoder 题目算法 状压dp 解题思路 我们令 \(S\) 表示当前箱子状态,\(P_i\) ...

  6. Ds100p -「数据结构百题」41~50

    41.P3590 [POI2015]TRZ 给定一个长度为n的仅包含'B'.'C'.'S'三种字符的字符串,请找到最长的一段连续子串,使得这一段要么只有一种字符,要么有多种字符,但是没有任意两种字符出 ...

  7. ⭐volatile⭐ 用volatile关键字则会从内存中直接读取变量的值

  8. Hosts映射

    Hosts映射 思考:如何通过主机名能够找到(ping)某个linux系统? 前言 Hosts:是一个文本文件,用来记录IP和Hostname的映射关系 DNS:是互联网上作为域名和IP地址映射的一个 ...

  9. macbook-键盘连击问题001

    最近一段时间,我的笔记本(17年款 macbook pro 13寸)经常出现键盘连击问题. 最大的表现是 e/n/i 这几个按键,按下的时候,会有概率的出现两个或三个. 这不是个案 搜索了一下,有不少 ...

  10. 【图像处理】如何使用matplotlib 库显示灰度图像为自定义颜色

    项目场景 我这里有一张名为airplane.jpg的灰度图像灰度图像 使用 matplotlib 库读取并显示: import matplotlib.pyplot as plt root=" ...