# 先决条件

本指南涵盖了安装和运行生产就绪的 Alluxio 集群的要求。

## 高级要求

在开始之前，请确保您的环境满足以下先决条件。

### 硬件

| 组件         | 要求             |
| ---------- | -------------- |
| **CPU 架构** | x86\_64, ARM64 |

### 软件

| 组件           | 要求          | 注意                                      |
| ------------ | ----------- | --------------------------------------- |
| **Linux 内核** | 5.4 或更高     | 推荐以获得最佳性能和功能支持。                         |
| **Java**     | JDK 8 或 11  | 在所有将运行 Alluxio 组件的节点上都需要。               |
| **etcd**     | 版本 3.4 或更高  | Alluxio 需要一个正在运行的 etcd 集群来进行服务发现和管理挂载表。 |
| **libfuse**  | 版本 3.10 或更高 | 在所有计划运行 Alluxio FUSE 客户端的节点上都需要。        |

### 网络

Alluxio 组件通过特定的网络端口进行通信。请确保您的防火墙规则和网络策略允许 Alluxio Pod 之间以及您的应用程序和 Alluxio 集群之间的连接。

## 在 Kubernetes 上部署（推荐）

对于大多数用例，建议使用 Alluxio Kubernetes Operator 进行部署。

### Kubernetes 集群先决条件

* **Kubernetes 版本：** 1.19 或更高。
* **Helm：** 必须安装 3.6.0 或更高版本。
* **RBAC 权限：** 部署 Alluxio 的用户或服务帐户必须具有创建 `CustomResourceDefinition` (CRD)、`ServiceAccount`、`ClusterRole` 和 `ClusterRoleBinding` 的权限。

### 资源建议

我们提供两种用于在 Kubernetes 上部署 Alluxio 的参考配置。

* **最低要求：** 适用于基本功能测试。
* **首选：** 推荐用于概念验证 (PoC) 部署，并为性能调整提供更好的起点。

| 组件              | 资源            | 最低要求       | 首选（Operator 默认）    |
| --------------- | ------------- | ---------- | ------------------ |
| **K8s 节点**      | CPU / 内存      | 8 核 / 32GB | 16 核 / 64GB        |
| **Coordinator** | CPU / 内存      | 4 核 / 12GB | 8 核 / 16GB         |
| **Worker**      | CPU / 内存      | 4 核 / 12GB | 8 核 / 24GB         |
| **FUSE**        | CPU / 内存      | 4 核 / 8GB  | 8 核 / 20GB         |
| **页面存储**        | 每个 Worker 的磁盘 | 100GB      | 100GB+（根据您的数据进行调整） |

> **注意：** 这些是起点。您应根据您的特定工作负载和性能要求调整 CPU 限制、内存和存储。

### ETCD

ETCD 是 Alluxio 集群的关键组件，必须持续可用且稳定，才能保证 Alluxio 的正常运行。默认情况下，系统将部署 3 个 ETCD 节点以实现高可用性，其中必须始终有 2 个节点处于运行状态才能维持法定人数。

> 如果仲裁丢失，将很难恢复，从而迫使重新创建 Alluxio 集群。

对于生产环境，建议在 3 个稳定的持久节点上部署 ETCD，以避免

* 不稳定且已知有宕机风险的临时节点
* 使用率高的节点，避免资源争用问题

## 下一步

满足这些先决条件后，您可以继续进行安装：

* [**在 Kubernetes 上安装**](/ee-ai-cn/ai-3.7/start/installing-on-kubernetes.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.alluxio.io/ee-ai-cn/ai-3.7/start/prerequisites.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
