<commit_before>---
layout: global
title: 在Mesos上运行Alluxio
nickname: 在Mesos上运行Alluxio
group: Deploying Alluxio
priority: 4
---

* 内容列表
{:toc}

Alluxio能够通过Mesos进行部署，这样可以让Mesos对Alluxio使用的资源进行管理。具体来说，对于Alluxio master便是JVM进程需要的cpu和内存资源，而对于Alluxio worker来说除了这两者，还有ramdisk所需要的内存。

## Mesos版本

Alluxio兼容Mesos 0.23.0及之后的版本。

## Mesos需求

默认情况下，Alluxio Master需要端口19998和19999，Alluxio Worker需要端口29998,29999和30000。
要使Mesos运行Alluxio，您必须将这些端口提供给Mesos框架，或者更改Alluxio端口。

#### 使端口可用

启动Mesos slave时，可以指定要管理的端口资源。

```bash
/usr/local/sbin/mesos-slave --resources='ports:[19998-19999,29998-30000]'
```

#### 更改Alluxio端口

或者，您可以在`alluxio-site.properties`文件中指定Alluxio端口，如下所示：

```properties
alluxio.master.port=31398
alluxio.master.web.port=31399

alluxio.worker.port=31498
alluxio.worker.data.port=31499
alluxio.worker.web.port=31500
```

## 在Mesos上部署Alluxio

要在Mesos上部署Alluxio，需要让Mesos能获取到Alluxio发布包。有两个方法：

1. 拷贝Alluxio到所有Mesos节点
2. 配置Mesos指向一个Alluxio压缩包

#### 配置属性

参考[配置项设置](Configuration-Settings.html)文档获取如何配置相应属性。

#### 部署已经拷贝在所有Mesos节点上的Alluxio

1. 在所有Mesos节点上安装Alluxio。接下来的步骤应在安装完Alluxio后进行
2. 设置属性`alluxio.integration.mesos.alluxio.jar.url`的值为`LOCAL`
3. 设置属性`alluxio.home`的值为Alluxio在所有Mesos节点上的安装路径
4. 启动Alluxio Mesos框架

{% include Running-Alluxio-on-Mesos/alluxio-mesos.md %}

#### 通过Alluxio压缩包url进行部署

在任何一个已经安装Alluxio的地方进行以下步骤：

1. 设置属性`alluxio.integration.mesos.alluxio.jar.url`指向一个Alluxio压缩包
2. 启动Alluxio Mesos框架

{% include Running-Alluxio-on-Mesos/alluxio-mesos.md %}

注意这个压缩包应该使用`-Pmesos`选项进行编译。1.3.0及以上的已发布的Alluxio压缩包是采用这种方式编译的。
<commit_msg>[DOCFIX] Inline documentation code snippets in docs<commit_after>---
layout: global
title: 在Mesos上运行Alluxio
nickname: 在Mesos上运行Alluxio
group: Deploying Alluxio
priority: 4
---

* 内容列表
{:toc}

Alluxio能够通过Mesos进行部署，这样可以让Mesos对Alluxio使用的资源进行管理。具体来说，对于Alluxio master便是JVM进程需要的cpu和内存资源，而对于Alluxio worker来说除了这两者，还有ramdisk所需要的内存。

## Mesos版本

Alluxio兼容Mesos 0.23.0及之后的版本。

## Mesos需求

默认情况下，Alluxio Master需要端口19998和19999，Alluxio Worker需要端口29998,29999和30000。
要使Mesos运行Alluxio，您必须将这些端口提供给Mesos框架，或者更改Alluxio端口。

#### 使端口可用

启动Mesos slave时，可以指定要管理的端口资源。

```bash
/usr/local/sbin/mesos-slave --resources='ports:[19998-19999,29998-30000]'
```

#### 更改Alluxio端口

或者，您可以在`alluxio-site.properties`文件中指定Alluxio端口，如下所示：

```properties
alluxio.master.port=31398
alluxio.master.web.port=31399

alluxio.worker.port=31498
alluxio.worker.data.port=31499
alluxio.worker.web.port=31500
```

## 在Mesos上部署Alluxio

要在Mesos上部署Alluxio，需要让Mesos能获取到Alluxio发布包。有两个方法：

1. 拷贝Alluxio到所有Mesos节点
2. 配置Mesos指向一个Alluxio压缩包

#### 配置属性

参考[配置项设置](Configuration-Settings.html)文档获取如何配置相应属性。

#### 部署已经拷贝在所有Mesos节点上的Alluxio

1. 在所有Mesos节点上安装Alluxio。接下来的步骤应在安装完Alluxio后进行
2. 设置属性`alluxio.integration.mesos.alluxio.jar.url`的值为`LOCAL`
3. 设置属性`alluxio.home`的值为Alluxio在所有Mesos节点上的安装路径
4. 启动Alluxio Mesos框架

```bash
./integration/mesos/bin/alluxio-mesos-start.sh mesosMaster:5050 // address of Mesos master
```

#### 通过Alluxio压缩包url进行部署

在任何一个已经安装Alluxio的地方进行以下步骤：

1. 设置属性`alluxio.integration.mesos.alluxio.jar.url`指向一个Alluxio压缩包
2. 启动Alluxio Mesos框架

```bash
./integration/mesos/bin/alluxio-mesos-start.sh mesosMaster:5050 // address of Mesos master
```

注意这个压缩包应该使用`-Pmesos`选项进行编译。1.3.0及以上的已发布的Alluxio压缩包是采用这种方式编译的。

{'fraction_non_alphanumeric': 0.11783042394014963, 'fraction_numerical': 0.05610972568578554, 'mean_word_length': 7.3785900783289815, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '357834', 'n_tokens_mistral': 2007, 'n_tokens_neox': 2048, 'n_words': 154}