详情

首页手游攻略 nanocl:实践指南

nanocl:实践指南

佚名 2026-09-11 11:00:04

面对实际交付,我看nanocl的重点不在星标,而在这项能力:正在进行中的分布式系统,可简化容器和虚拟机的编排。团队若要把它用于日常自动化,应先处理输入边界、依赖和失败处理如果不清楚就很难稳定复用,否则试用结果很容易失真。试跑可以从用一项范围明确的真实任务完成最小试跑开始,并把配置时间、输出质量、异常信息和维护痕迹写进验收记录。我会把它列入愿意先做小范围验证并复查原始文档的团队的候选清单,而不是仅凭项目介绍直接纳入生产。

next-hat/nanocl 项目截图 1

Nanocl

Just 开发,Deploy.

Orchestrate 前所未有。 K8s reimagined.

Why • Install • Discord •

快速安装(需要 Docker)

curl -fsSL https://download.next-hat.com/scripts/get-nanocl.sh | sh

然后完成所需的[安装后步骤][post_install]。

Nanocl 是一个开源分布式系统,它从头开始重新构想云原生编排

它为开发人员提供了无摩擦的本地生产工作流程,同时隐藏了多服务复杂性(不再有临时脚本、CORS 黑客攻击或脆弱的 docker-compose 蔓延)。相同的声明性模型为开发和生产提供支持。

您可以在 Nanocl 中重建 K8s……但您可能不想这样做。

Nanocl 内置于 Rust 中,以提高效率和安全性,其目标是需要强大隔离、可预测性能和更简单操作的平台工程师,而无需完整 Kubernetes 发行版的认知开销。

为什么选择 Nanocl

现代团队需要更快的迭代循环、安全的多租户隔离和生产级过渡路径,而无需在第一天就运行重量级控制平面。 Nanocl 专注于:

  • Dev→Prod 对称性:声明性状态文件 (YAML/TOML/JSON) 在不同环境中保持相同。
  • 运营开销低:移动部件最少;固执己见的默认行为。
  • 安全性和效率:内存安全的实现,与脚本堆栈相比减少了占用空间。
  • 可扩展性:资源和规则可让您对网络、路由、TLS、作业等进行建模。
  • 务实的范围:不是 Kubernetes 的克隆——K8s 繁重的地方精益求精,docker-compose 限制的地方富有表现力。

主要特点

  • 货物(集装箱)、资源、作业和虚拟机的声明性状态文件。
  • 端到端 TLS(包括正在进行的内部网格图元)。
  • 动态路由和 DNS 传播(ncproxyncdns)。
  • 可插入类型的资源抽象层(e.g.代理规则)。
  • 作业和 cron 风格的自动化。
  • 备份和孤立清理工具。
  • 多格式配置:YAML / TOML / JSON。
  • 电池包括 CLI 和守护进程。
  • 最小的主机占用空间;模块化可选服务。

请参阅 健康检查文档 用于滚动更新准备行为和 TLS 秘密文档 用于证书持久性。

安装

Nanocl 支持 LinuxmacOSWindows。请参阅[安装指南][nanocl_install_guide]。

快速安装

运行安装程序(需要 Docker):

curl -fsSL https://download.next-hat.com/scripts/get-nanocl.sh | sh

然后完成所需的[安装后步骤][post_install]。

如果您只是进行评估,单节点安装通常需要不到两分钟。

快速入门

创建一个最小的状态文件并应用它:

ApiVersion: v0.16
Cargoes:
  - Name: hello
    Container:
      Image: ghcr.io/next-hat/documentation:0.16.0

申请及检查:

nanocl state apply -s ./state.yml
nanocl cargo ls
nanocl cargo logs global.hello

货物和虚拟机使用规范密钥 {namespace}.{name} 订单,例如 global.hellosystem.ncproxy。 除非提供了 --namespace,否则集合命令将返回每个命名空间:

nanocl cargo ls
nanocl cargo ls --namespace system
nanocl vm ls

针对现有 Cargo 或 VM 的命令直接采用该密钥,并且不会 接受命名空间选项。创建命令仍然默认为 global --namespace 被省略。

删除它:

nanocl state rm -s ./state.yml

接下来:探索[开始][nanocl_get_started]。

Nanocl 正在快速发展。反馈和早期采用者塑造了路线图——见下文。

最新消息

  • 发布:Nanocl 0.18.0
  • 博客:于 2024 年 11 月 24 日使用 GitHub 操作 进行自动化部署
  • 发布:端到端 TLS 加密和网络网格划分的第一步 于 2024 年 11 月 11 日
  • 发布:手册页、备份、删除孤立项等 于 2024 年 6 月 11 日发布
  • 活动:我们受邀参加 2024 年 6 月 1 日举行的 Merge Berlin 2024
  • 发布:上下文、SubState 以及更多 于 2024 年 5 月 7 日发布

用途

状态文件驱动一切。这是我们用来部署我们自己的[文档][文档]的状态文件:

ApiVersion: v0.16
Cargoes:
  - Name: doc
    Container:
      Image: ghcr.io/next-hat/documentation:0.16.0
Resources:
  - Name: docs.next-hat.com
    Kind: ncproxy.io/rule
    Data:
      Rules:
        - Domain: docs.next-hat.com
          Network: Public
          Locations:
            - Path: /
              Target:
                Key: global.doc.c
                Port: 80

行动:

  • 申请:nanocl state apply -s ./state.yml
  • 删除:nanocl state rm -s ./state.yml

更多对象选项请参见[参考文献][nanocl_daemon_ref]。

建筑

Nanocl 由模块化容器化服务组成:

组件 目的
恩商店 持久化集群状态
恩达蒙 REST API & 控制界面
网络计量学 资源使用情况采集
网络代理 具有嵌入式 nginx 数据平面的代理控制器(可选)
国家域名系统 具有嵌入式 dnsmasq 数据平面的 DNS 控制器(可选)

资源:

  • [概述][nanocl_概述]
  • [开始][nanocl_get_started]
  • [CLI 参考文献][nanocl_cli_ref]
  • [守护进程参考][nanocl_daemon_ref]

单节点简化架构:

演示

货物与资源

职位

VM

路线图

高级别重点(非详尽):

  • 服务网格原语(安全网络的逐步推出)。
  • 扩展资源类型(证书管理、配额)。
  • 多节点集群 UX 改进。
  • 提高可观察性(跟踪和更丰富的指标)。
  • 提供者抽象层(未来的可插入运行时)。

在 博客 中跟踪更改和发布。

安全性

请通过我们的 安全策略 报告漏洞。负责任的披露对每个人都有帮助。

支持与社区

  • 聊天:[不和谐][不和谐]
  • 问题:GitHub 问题与讨论
  • 问题:发起讨论或加入 Discord
  • 更新:关注我们
点击查看更多
推荐专题
热门阅读