基于平台工程理念的利用治理平台 Walrus 已于上月正式开源,目前在 GitHub 已播种 177 颗星🌟
Walrus 心愿打造简洁清新的利用部署与治理体验,帮忙研发与运维团队缩小“内耗”工作,晋升开发体验。
咱们十分重视 Walrus 用户的体验与反馈,并心愿与每位用户分享 Walrus 的产品动静。正式开源一周内,咱们就迎来了社区首个内部 PR,尔后陆陆续续收到了来自社区用户提交的 Bug 和 Issue。这里,咱们将详细描述目前已修复的两个问题及其具体修复和优化过程。
用户信息资源权限的统计体验优化
问题形容
在 0.3.0
的版本中资源权限的表格中统计各个资源的动作权限的数量作为汇总,然而理论局部页面的设计并没有相干的动作,造成同一资源各个动作的汇总不统一,使得用户无奈直观地了解表格的含意。
优化形式
这里咱们去掉表格中“资源”一列,将相干的资源显示在对应的我的项目或者分组模块下。
去掉权限数量的汇总数字,将汇总的后果通过三种不同的色彩出现,即红色代表所有资源没有权限,黄色示意局部资源有权限,绿色则示意所有资源有权限。如下图所示:
相干 issue 详情查看此链接:https://github.com/seal-io/walrus/issues/1266
内置模板资源的更新反对
性能解析
Walrus 内置了一些罕用操作的模板,其中包含 deploy-source-code
模板,用于从源码构建镜像并将其部署到 Kubernetes 集群中。应用该模板的步骤如下:
- 首先,创立一个类型为 Kubernetes 的连接器。无关详细信息,请参考 Walrus 文档中的连接器创立指南。
- 创立一个新的环境,并将步骤 1 中创立的连接器增加到该环境中。
- 创立一个服务,并抉择
deploy-source-code
模板的最新版本。 - 在配置服务时,在
Build
局部输出 GitHub 仓库信息、镜像信息、密钥等配置。在Deploy
局部输出正本数、所需资源、端口等相干信息。 - 实现配置后,保留即可进入打包部署流程。
这些步骤将帮忙您应用 Walrus 疾速进行源码构建并部署成可用的 Kubernetes 服务。
问题形容
在 Walrus 提供的内置模板 deploy-source-code
中定义了 image
资源,该资源代表容器镜像资源。然而,在模板版本 0.0.1
中,没有提供该资源的更新反对。因而,应用该模板的服务构建部署实现后,再次更新降级将呈现谬误,导致更新失败。
能够在 issue 中(链接:https://github.com/seal-io/walrus/issues/998)找到具体的问题复现过程。
修复过程
Walrus 基于容器镜像构建工具 Kaniko
开发了 Terraform Provider terraform-provider-kaniko
,image
资源来自于 Provider 中定义的,用于从源代码构建容器镜像,并推送到容器镜像仓库中。
在模板 deploy-source-code
0.0.1
版本中应用的 Provider 版本尚未反对 image
资源的更新操作。但在该 Provider 的最新版本中,咱们增加了对此性能的反对,并引入了更多优化,以确保即便在 Provider 参数不变的状况,源代码仓库有了新内容,该 Provider 也能进行更新和降级。咱们在的 deploy-source-code
模板的 0.0.4
版本中降级了 Provider,应用修复后的版本。
要解决这个问题,用户能够应用修复后的 deploy-source-code
模板,即 0.0.4
版本。最新部署的 sealio/walrus:v0.3.0
镜像中曾经蕴含了 deploy-source-code
的最新版本,能够间接应用。
已运行的 Walrus,Walrus 默认会每天同步最新的模板,用户可查看 Walrus 是否已同步了最新版本,如已同步可间接应用 deploy-source-code
的最新版本。
也可进行手动同步,进入 运维核心
,而后导航到模板 deploy-source-code
,并点击刷新以获取最新版本。这样就能够应用修复后的新版本了。
以上就是目前已修复问题的具体内容与修复及优化过程,在这里特别感谢 @cdryzun 与 @orangedeng 向咱们提出的问题。后续,咱们将第一工夫与大家分享 Walrus 的每一次产品更新与每一个重要动静。
Walrus 欢送每一位开发者的参加与奉献,并踊跃向咱们提出有品质的问题与倡议,经研发团队驳回,咱们将会送出 Seal 精美周边礼品🎁一份~
我的项目地址:https://github.com/seal-io/walrus