开发者社区 > 云原生 > 正文

Higress除了这种方式没有其他方式了么?

Higress是在没有公网的环境下必须搭建私有仓库才能用wasmplugin 除了这种方式没有其他方式了么?并且如果私有仓库不可用了 这部分规则不生效的话 影响还是挺大的,目前wasm涉及很多waf的规则如果不生效 很容易被扫出来

展开
收起
真的很搞笑 2024-01-10 11:18:23 25 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    是的,如果您的环境下没有公网,那么您需要搭建私有仓库来使用 Higress WasmPlugin。这是因为 Wasm 模块需要从远程服务器上加载,而 Higress WasmPlugin 默认情况下只支持从公共仓库中加载 Wasm 模块。

    如果您的私有仓库不可用,那么这部分规则将无法生效,这可能会对您的 WAF 规则造成影响。为了避免这种情况发生,您可以采取以下措施:

    1. 确保您的私有仓库始终可用,并定期备份数据以防止数据丢失。
    2. 尝试使用其他 WAF 规则引擎,例如 ModSecurity、Cloudflare Firewall 等,这些规则引擎可能不需要使用 Wasm 插件即可实现类似的功能。
    3. 如果必须使用 Wasm 插件,您可以考虑将 Wasm 模块打包成 tar.gz 或 zip 文件,然后将其上传到您的服务器上,并在 Higress WasmPlugin 的配置中使用本地路径来加载 Wasm 模块。这样可以避免依赖远程服务器的问题。
    2024-01-13 17:42:06
    赞同 展开评论 打赏
  • Higress 是一款云原生网关,其提供的 WebAssembly (Wasm) 插件机制允许开发者通过编写 Wasm 模块来扩展网关功能。Wasm 插件通常需要先编译成 Wasm 格式文件,然后打包成 Docker 镜像,并推送至镜像仓库,最后在 Kubernetes 上通过创建 WasmPlugin 资源来下发配置,使其在 Higress Gateway 中生效。

    在没有公网环境的情况下,确实需要搭建私有仓库来存储和管理 Wasm 插件的 Docker 镜像。这是因为 Higress 网关在加载插件时需要从镜像仓库中拉取镜像,如果没有可用的私有仓库,插件将无法被正确加载,从而导致相关规则不生效。

    不过,除了搭建私有仓库之外,还有其他一些方法可能有助于缓解因仓库不可用带来的影响:

    1. 镜像复制:可以在多个地域的阿里云仓库中复制镜像,这样即使某个地域的仓库不可用,其他地域的仓库仍然可以提供镜像,确保插件能够生效。

    2. 使用内网仓库:如果有多个集群或在阿里云 VPC 内,可以配置内网仓库,确保集群能够访问镜像,而不需要通过公网。

    3. 配置回退策略:在 Higress 网关中配置回退策略,当 Wasm 插件失效时,流量可以重定向到其他正常的处理路径,避免业务受到影响。

    4. ECR 私有链接:使用 Amazon ECR 私有链接,可以配置 VPC endpoint,使集群能够通过私有网络访问 ECR 仓库,提高安全性和访问速度。

    5. 蓝绿部署或金丝雀发布:在更新插件或规则时,可以使用蓝绿部署或金丝雀发布的方式,逐步切换流量,确保更新不会对全局产生影响。

    6. 监控和报警:建立完善的监控和报警体系,及时发现并处理私有仓库不可用等问题。

    这些方法可以结合使用,以提高 Wasm 插件的可用性和业务的稳定性。

    2024-01-13 11:04:06
    赞同 展开评论 打赏
  • 插件会有本地缓存,仓库不可用了不影响现有流量稳定性。可以看下把higress的缓存目录持久化到本地盘 或者其他方式来做高可用 ,此回答整理自钉群“Higress 社区交流 2 群”

    2024-01-10 12:27:43
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载