Netreap: 非Kubernetes环境下Cilium管理解决方案

Netreap: 非Kubernetes环境下Cilium管理解决方案

netreap A Cilium controller implementation for Nomad 项目地址: https://gitcode.com/gh_mirrors/ne/netreap

项目介绍

Netreap是一款专为非Kubernetes集群设计的工具,旨在实现类似Cilium Operator的功能,用于跨集群管理Cilium。最初为了清理孤立的Cilium端点而创建,名字意为“网络收割者”,尽管其功能已扩展超出原初设想,但名称得以保留。Netreap特别适用于Nomad环境,能够自动清理不再存在的节点信息以及无服务关联的端点。该项目弥补了Cilium Operator仅限于Kubernetes环境的不足。

技术栈与兼容性

  • 支持环境:Nomad, Consul, Cilium v1.12.x 或 v1.13.x
  • 关键特性:基于KV存储(默认Consul)的领导选举机制,支持端点协调无需Consul(自v0.2.0起)。

快速启动

环境准备

  1. 安装必备软件

    • 设置Consul集群或单一服务器。
    • 部署Nomad集群。
    • 准备Cilium所需的环境,包括CNI插件。
  2. 配置Cilium(示例为使用Docker运行Cilium代理):

    [Unit]
    Description=Cilium Agent
    After=docker.service
    Requires=docker.service
    ...
    [Service]
    Restart=always
    ExecStart=/usr/bin/docker run --rm ... cilium/cilium:v1.13.1 cilium-agent ...  
    
  3. 部署Netreap作为系统作业到Nomad中:

    job "netreap" {
      datacenters = ["dc1"]
      type = "system"
      constraint { attribute = "$node.class", value = "infra" }
      group "netreap" {
        task "netreap" {
          driver = "docker"
          config {
            image = "ghcr.io/cosmonic/netreap:0.2.0"
            network_mode = "host"
            volumes = ["/var/run/cilium:/var/run/cilium"]
          }
        }
      }
    }
    

命令执行示例

确保在Nomad集群上提交上述作业文件,并适当设置环境变量和权限以支持Consul和Nomad的ACLs,如果启用的话。

应用案例与最佳实践

  • 网络清理自动化:Netreap定期检查并删除不再有效的Cilium端点,保持网络状态清洁,尤其适合动态扩缩容频繁的场景。
  • Cilium策略同步:通过单一Consul键,Netreap同步Cilium政策至所有节点,无需依赖CRDs(如Kubernetes所用),简化了非Kubernetes环境下的政策管理。

典型生态项目

  • 在使用Nomad和Consul搭建的云原生环境中,Netreap是维持Cilium网络稳定性的关键组件,确保服务间通信的安全性和效率。
  • 结合GitOps流程,可以将Cilium策略作为版本化配置管理,利用Netreap自动部署更新,强化安全策略的一致性和即时性。

以上便是Netreap的基本介绍、快速部署步骤及应用实例概览。针对特定的部署需求和环境差异,建议详细阅读项目GitHub页面上的文档,确保遵循最佳实践进行部署与运维。

netreap A Cilium controller implementation for Nomad 项目地址: https://gitcode.com/gh_mirrors/ne/netreap

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌昱有Melanie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值